pacemaker  2.1.7-0f7f88312f
Scalable High-Availability cluster resource manager
Data Structures | Macros | Typedefs | Functions
internal.h File Reference
#include <stdbool.h>
#include <stdint.h>
#include <string.h>
#include <crm/msg_xml.h>
#include <crm/pengine/status.h>
#include <crm/pengine/remote_internal.h>
#include <crm/common/internal.h>
#include <crm/common/options_internal.h>
#include <crm/common/output_internal.h>
#include <crm/common/scheduler_internal.h>
Include dependency graph for internal.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  pe__location_constraint_s
 
struct  pe__order_constraint_s
 
struct  op_digest_cache_s
 
struct  pe__bundle_replica_t
 A single instance of a bundle. More...
 

Macros

#define pe_rsc_info(rsc, fmt, args...)   crm_log_tag(LOG_INFO, rsc ? rsc->id : "<NULL>", fmt, ##args)
 
#define pe_rsc_debug(rsc, fmt, args...)   crm_log_tag(LOG_DEBUG, rsc ? rsc->id : "<NULL>", fmt, ##args)
 
#define pe_rsc_trace(rsc, fmt, args...)   crm_log_tag(LOG_TRACE, rsc ? rsc->id : "<NULL>", fmt, ##args)
 
#define pe_err(fmt...)
 
#define pe_warn(fmt...)
 
#define pe_proc_err(fmt...)   { was_processing_error = TRUE; crm_err(fmt); }
 
#define pe_proc_warn(fmt...)   { was_processing_warning = TRUE; crm_warn(fmt); }
 
#define pe__set_working_set_flags(scheduler, flags_to_set)
 
#define pe__clear_working_set_flags(scheduler, flags_to_clear)
 
#define pe__set_resource_flags(resource, flags_to_set)
 
#define pe__clear_resource_flags(resource, flags_to_clear)
 
#define pe__set_action_flags(action, flags_to_set)
 
#define pe__clear_action_flags(action, flags_to_clear)
 
#define pe__set_raw_action_flags(action_flags, action_name, flags_to_set)
 
#define pe__clear_raw_action_flags(action_flags, action_name, flags_to_clear)
 
#define pe__set_action_flags_as(function, line, action, flags_to_set)
 
#define pe__clear_action_flags_as(function, line, action, flags_to_clear)
 
#define pe__set_order_flags(order_flags, flags_to_set)
 
#define pe__clear_order_flags(order_flags, flags_to_clear)
 
#define pe_warn_once(pe_wo_bit, fmt...)
 
#define pe__show_node_scores(level, rsc, text, nodes, scheduler)
 
#define delete_key(rsc)   pcmk__op_key(rsc->id, PCMK_ACTION_DELETE, 0)
 
#define delete_action(rsc, node, optional)
 
#define stop_key(rsc)   pcmk__op_key(rsc->id, PCMK_ACTION_STOP, 0)
 
#define stop_action(rsc, node, optional)
 
#define reload_key(rsc)   pcmk__op_key(rsc->id, PCMK_ACTION_RELOAD_AGENT, 0)
 
#define start_key(rsc)   pcmk__op_key(rsc->id, PCMK_ACTION_START, 0)
 
#define start_action(rsc, node, optional)
 
#define promote_key(rsc)   pcmk__op_key(rsc->id, PCMK_ACTION_PROMOTE, 0)
 
#define promote_action(rsc, node, optional)
 
#define demote_key(rsc)   pcmk__op_key(rsc->id, PCMK_ACTION_DEMOTE, 0)
 
#define demote_action(rsc, node, optional)
 

Typedefs

typedef struct pe__location_constraint_s pe__location_t
 
typedef struct pe__order_constraint_s pe__ordering_t
 
typedef struct op_digest_cache_s op_digest_cache_t
 

Functions

const char * pe__resource_description (const pcmk_resource_t *rsc, uint32_t show_opts)
 
bool pe__clone_is_ordered (const pcmk_resource_t *clone)
 
int pe__set_clone_flag (pcmk_resource_t *clone, enum pcmk__clone_flags flag)
 
bool pe__clone_flag_is_set (const pcmk_resource_t *clone, uint32_t flags)
 
bool pe__group_flag_is_set (const pcmk_resource_t *group, uint32_t flags)
 
pcmk_resource_tpe__last_group_member (const pcmk_resource_t *group)
 
const pcmk_resource_tpe__const_top_resource (const pcmk_resource_t *rsc, bool include_bundle)
 
int pe__clone_max (const pcmk_resource_t *clone)
 
int pe__clone_node_max (const pcmk_resource_t *clone)
 
int pe__clone_promoted_max (const pcmk_resource_t *clone)
 
int pe__clone_promoted_node_max (const pcmk_resource_t *clone)
 
void pe__create_clone_notifications (pcmk_resource_t *clone)
 
void pe__free_clone_notification_data (pcmk_resource_t *clone)
 
void pe__create_clone_notif_pseudo_ops (pcmk_resource_t *clone, pcmk_action_t *start, pcmk_action_t *started, pcmk_action_t *stop, pcmk_action_t *stopped)
 
pcmk_action_tpe__new_rsc_pseudo_action (pcmk_resource_t *rsc, const char *task, bool optional, bool runnable)
 
void pe__create_promotable_pseudo_ops (pcmk_resource_t *clone, bool any_promoting, bool any_demoting)
 
bool pe_can_fence (const pcmk_scheduler_t *scheduler, const pcmk_node_t *node)
 
void add_hash_param (GHashTable *hash, const char *name, const char *value)
 
char * native_parameter (pcmk_resource_t *rsc, pcmk_node_t *node, gboolean create, const char *name, pcmk_scheduler_t *scheduler)
 
pcmk_node_tnative_location (const pcmk_resource_t *rsc, GList **list, int current)
 
void pe_metadata (pcmk__output_t *out)
 
void verify_pe_options (GHashTable *options)
 
void native_add_running (pcmk_resource_t *rsc, pcmk_node_t *node, pcmk_scheduler_t *scheduler, gboolean failed)
 
gboolean native_unpack (pcmk_resource_t *rsc, pcmk_scheduler_t *scheduler)
 
gboolean group_unpack (pcmk_resource_t *rsc, pcmk_scheduler_t *scheduler)
 
gboolean clone_unpack (pcmk_resource_t *rsc, pcmk_scheduler_t *scheduler)
 
gboolean pe__unpack_bundle (pcmk_resource_t *rsc, pcmk_scheduler_t *scheduler)
 
pcmk_resource_tnative_find_rsc (pcmk_resource_t *rsc, const char *id, const pcmk_node_t *node, int flags)
 
gboolean native_active (pcmk_resource_t *rsc, gboolean all)
 
gboolean group_active (pcmk_resource_t *rsc, gboolean all)
 
gboolean clone_active (pcmk_resource_t *rsc, gboolean all)
 
gboolean pe__bundle_active (pcmk_resource_t *rsc, gboolean all)
 
void native_print (pcmk_resource_t *rsc, const char *pre_text, long options, void *print_data)
 
void group_print (pcmk_resource_t *rsc, const char *pre_text, long options, void *print_data)
 
void clone_print (pcmk_resource_t *rsc, const char *pre_text, long options, void *print_data)
 
void pe__print_bundle (pcmk_resource_t *rsc, const char *pre_text, long options, void *print_data)
 
gchar * pcmk__native_output_string (const pcmk_resource_t *rsc, const char *name, const pcmk_node_t *node, uint32_t show_opts, const char *target_role, bool show_nodes)
 
int pe__name_and_nvpairs_xml (pcmk__output_t *out, bool is_list, const char *tag_name, size_t pairs_count,...)
 
char * pe__node_display_name (pcmk_node_t *node, bool print_detail)
 
void pe__order_notifs_after_fencing (const pcmk_action_t *action, pcmk_resource_t *rsc, pcmk_action_t *stonith_op)
 
int pe__clone_xml (pcmk__output_t *out, va_list args)
 
int pe__clone_default (pcmk__output_t *out, va_list args)
 
int pe__group_xml (pcmk__output_t *out, va_list args)
 
int pe__group_default (pcmk__output_t *out, va_list args)
 
int pe__bundle_xml (pcmk__output_t *out, va_list args)
 
int pe__bundle_html (pcmk__output_t *out, va_list args)
 
int pe__bundle_text (pcmk__output_t *out, va_list args)
 
int pe__node_html (pcmk__output_t *out, va_list args)
 
int pe__node_text (pcmk__output_t *out, va_list args)
 
int pe__node_xml (pcmk__output_t *out, va_list args)
 
int pe__resource_xml (pcmk__output_t *out, va_list args)
 
int pe__resource_html (pcmk__output_t *out, va_list args)
 
int pe__resource_text (pcmk__output_t *out, va_list args)
 
void native_free (pcmk_resource_t *rsc)
 
void group_free (pcmk_resource_t *rsc)
 
void clone_free (pcmk_resource_t *rsc)
 
void pe__free_bundle (pcmk_resource_t *rsc)
 
enum rsc_role_e native_resource_state (const pcmk_resource_t *rsc, gboolean current)
 
enum rsc_role_e group_resource_state (const pcmk_resource_t *rsc, gboolean current)
 
enum rsc_role_e clone_resource_state (const pcmk_resource_t *rsc, gboolean current)
 
enum rsc_role_e pe__bundle_resource_state (const pcmk_resource_t *rsc, gboolean current)
 
void pe__count_common (pcmk_resource_t *rsc)
 
void pe__count_bundle (pcmk_resource_t *rsc)
 
void common_free (pcmk_resource_t *rsc)
 
pcmk_node_tpe__copy_node (const pcmk_node_t *this_node)
 
time_t get_effective_time (pcmk_scheduler_t *scheduler)
 
int pe_get_failcount (const pcmk_node_t *node, pcmk_resource_t *rsc, time_t *last_failure, uint32_t flags, const xmlNode *xml_op)
 
pcmk_action_tpe__clear_failcount (pcmk_resource_t *rsc, const pcmk_node_t *node, const char *reason, pcmk_scheduler_t *scheduler)
 Schedule a controller operation to clear a fail count. More...
 
bool pe__count_active_node (const pcmk_resource_t *rsc, pcmk_node_t *node, pcmk_node_t **active, unsigned int *count_all, unsigned int *count_clean)
 
pcmk_node_tpe__find_active_requires (const pcmk_resource_t *rsc, unsigned int *count)
 
GHashTable * pe__node_list2table (const GList *list)
 
pcmk_action_tget_pseudo_op (const char *name, pcmk_scheduler_t *scheduler)
 
gboolean order_actions (pcmk_action_t *lh_action, pcmk_action_t *rh_action, uint32_t flags)
 
void pe__show_node_scores_as (const char *file, const char *function, int line, bool to_log, const pcmk_resource_t *rsc, const char *comment, GHashTable *nodes, pcmk_scheduler_t *scheduler)
 
GHashTable * pcmk__unpack_action_meta (pcmk_resource_t *rsc, const pcmk_node_t *node, const char *action_name, guint interval_ms, const xmlNode *action_config)
 
GHashTable * pcmk__unpack_action_rsc_params (const xmlNode *action_xml, GHashTable *node_attrs, pcmk_scheduler_t *data_set)
 
xmlNode * pcmk__find_action_config (const pcmk_resource_t *rsc, const char *action_name, guint interval_ms, bool include_disabled)
 
enum rsc_start_requirement pcmk__action_requires (const pcmk_resource_t *rsc, const char *action_name)
 
enum action_fail_response pcmk__parse_on_fail (const pcmk_resource_t *rsc, const char *action_name, guint interval_ms, const char *value)
 
enum rsc_role_e pcmk__role_after_failure (const pcmk_resource_t *rsc, const char *action_name, enum action_fail_response on_fail, GHashTable *meta)
 
pcmk_action_tcustom_action (pcmk_resource_t *rsc, char *key, const char *task, const pcmk_node_t *on_node, gboolean optional, pcmk_scheduler_t *scheduler)
 Create or update an action object. More...
 
int pe_get_configured_timeout (pcmk_resource_t *rsc, const char *action, pcmk_scheduler_t *scheduler)
 
pcmk_action_tfind_first_action (const GList *input, const char *uuid, const char *task, const pcmk_node_t *on_node)
 
enum action_tasks get_complex_task (const pcmk_resource_t *rsc, const char *name)
 
GList * find_actions (GList *input, const char *key, const pcmk_node_t *on_node)
 
GList * find_actions_exact (GList *input, const char *key, const pcmk_node_t *on_node)
 
GList * pe__resource_actions (const pcmk_resource_t *rsc, const pcmk_node_t *node, const char *task, bool require_node)
 Find all actions of given type for a resource. More...
 
void pe_free_action (pcmk_action_t *action)
 
void resource_location (pcmk_resource_t *rsc, const pcmk_node_t *node, int score, const char *tag, pcmk_scheduler_t *scheduler)
 
int pe__is_newer_op (const xmlNode *xml_a, const xmlNode *xml_b, bool same_node_default)
 
gint sort_op_by_callid (gconstpointer a, gconstpointer b)
 
gboolean get_target_role (const pcmk_resource_t *rsc, enum rsc_role_e *role)
 
void pe__set_next_role (pcmk_resource_t *rsc, enum rsc_role_e role, const char *why)
 
pcmk_resource_tfind_clone_instance (const pcmk_resource_t *rsc, const char *sub_id)
 
void destroy_ticket (gpointer data)
 
pcmk_ticket_tticket_new (const char *ticket_id, pcmk_scheduler_t *scheduler)
 
const char * pe_base_name_end (const char *id)
 
char * clone_strip (const char *last_rsc_id)
 
char * clone_zero (const char *last_rsc_id)
 
int pe__target_rc_from_xml (const xmlNode *xml_op)
 
gint pe__cmp_node_name (gconstpointer a, gconstpointer b)
 
bool is_set_recursive (const pcmk_resource_t *rsc, long long flag, bool any)
 
op_digest_cache_tpe__calculate_digests (pcmk_resource_t *rsc, const char *task, guint *interval_ms, const pcmk_node_t *node, const xmlNode *xml_op, GHashTable *overrides, bool calc_secure, pcmk_scheduler_t *scheduler)
 
void pe__free_digests (gpointer ptr)
 
op_digest_cache_trsc_action_digest_cmp (pcmk_resource_t *rsc, const xmlNode *xml_op, pcmk_node_t *node, pcmk_scheduler_t *scheduler)
 
pcmk_action_tpe_fence_op (pcmk_node_t *node, const char *op, bool optional, const char *reason, bool priority_delay, pcmk_scheduler_t *scheduler)
 
void trigger_unfencing (pcmk_resource_t *rsc, pcmk_node_t *node, const char *reason, pcmk_action_t *dependency, pcmk_scheduler_t *scheduler)
 
char * pe__action2reason (const pcmk_action_t *action, enum pe_action_flags flag)
 
void pe_action_set_reason (pcmk_action_t *action, const char *reason, bool overwrite)
 
void pe__add_action_expected_result (pcmk_action_t *action, int expected_result)
 
void pe__set_resource_flags_recursive (pcmk_resource_t *rsc, uint64_t flags)
 
void pe__clear_resource_flags_recursive (pcmk_resource_t *rsc, uint64_t flags)
 
void pe__clear_resource_flags_on_all (pcmk_scheduler_t *scheduler, uint64_t flag)
 
gboolean add_tag_ref (GHashTable *tags, const char *tag_name, const char *obj_ref)
 
void print_rscs_brief (GList *rsc_list, const char *pre_text, long options, void *print_data, gboolean print_all)
 
int pe__rscs_brief_output (pcmk__output_t *out, GList *rsc_list, unsigned int options)
 
void pe_fence_node (pcmk_scheduler_t *scheduler, pcmk_node_t *node, const char *reason, bool priority_delay)
 Schedule a fence action for a node. More...
 
pcmk_node_tpe_create_node (const char *id, const char *uname, const char *type, const char *score, pcmk_scheduler_t *scheduler)
 
void common_print (pcmk_resource_t *rsc, const char *pre_text, const char *name, const pcmk_node_t *node, long options, void *print_data)
 
int pe__common_output_text (pcmk__output_t *out, const pcmk_resource_t *rsc, const char *name, const pcmk_node_t *node, unsigned int options)
 
int pe__common_output_html (pcmk__output_t *out, const pcmk_resource_t *rsc, const char *name, const pcmk_node_t *node, unsigned int options)
 
GList * pe__bundle_containers (const pcmk_resource_t *bundle)
 
int pe__bundle_max (const pcmk_resource_t *rsc)
 
bool pe__node_is_bundle_instance (const pcmk_resource_t *bundle, const pcmk_node_t *node)
 
pcmk_resource_tpe__bundled_resource (const pcmk_resource_t *rsc)
 
const pcmk_resource_tpe__get_rsc_in_container (const pcmk_resource_t *instance)
 
pcmk_resource_tpe__first_container (const pcmk_resource_t *bundle)
 
void pe__foreach_bundle_replica (pcmk_resource_t *bundle, bool(*fn)(pe__bundle_replica_t *, void *), void *user_data)
 
void pe__foreach_const_bundle_replica (const pcmk_resource_t *bundle, bool(*fn)(const pe__bundle_replica_t *, void *), void *user_data)
 
pcmk_resource_tpe__find_bundle_replica (const pcmk_resource_t *bundle, const pcmk_node_t *node)
 
bool pe__bundle_needs_remote_name (pcmk_resource_t *rsc)
 
const char * pe__add_bundle_remote_name (pcmk_resource_t *rsc, pcmk_scheduler_t *scheduler, xmlNode *xml, const char *field)
 
const char * pe__node_attribute_calculated (const pcmk_node_t *node, const char *name, const pcmk_resource_t *rsc, enum pcmk__rsc_node node_type, bool force_host)
 
const char * pe_node_attribute_raw (const pcmk_node_t *node, const char *name)
 
bool pe__is_universal_clone (const pcmk_resource_t *rsc, const pcmk_scheduler_t *scheduler)
 
void pe__add_param_check (const xmlNode *rsc_op, pcmk_resource_t *rsc, pcmk_node_t *node, enum pcmk__check_parameters, pcmk_scheduler_t *scheduler)
 
void pe__foreach_param_check (pcmk_scheduler_t *scheduler, void(*cb)(pcmk_resource_t *, pcmk_node_t *, const xmlNode *, enum pcmk__check_parameters))
 
void pe__free_param_checks (pcmk_scheduler_t *scheduler)
 
bool pe__shutdown_requested (const pcmk_node_t *node)
 
void pe__update_recheck_time (time_t recheck, pcmk_scheduler_t *scheduler, const char *reason)
 
void pe__register_messages (pcmk__output_t *out)
 
void pe__unpack_dataset_nvpairs (const xmlNode *xml_obj, const char *set_name, const pe_rule_eval_data_t *rule_data, GHashTable *hash, const char *always_first, gboolean overwrite, pcmk_scheduler_t *scheduler)
 
bool pe__resource_is_disabled (const pcmk_resource_t *rsc)
 
void pe__clear_resource_history (pcmk_resource_t *rsc, const pcmk_node_t *node)
 
GList * pe__rscs_with_tag (pcmk_scheduler_t *scheduler, const char *tag_name)
 
GList * pe__unames_with_tag (pcmk_scheduler_t *scheduler, const char *tag_name)
 
bool pe__rsc_has_tag (pcmk_scheduler_t *scheduler, const char *rsc, const char *tag)
 
bool pe__uname_has_tag (pcmk_scheduler_t *scheduler, const char *node, const char *tag)
 
bool pe__rsc_running_on_only (const pcmk_resource_t *rsc, const pcmk_node_t *node)
 
bool pe__rsc_running_on_any (pcmk_resource_t *rsc, GList *node_list)
 
GList * pe__filter_rsc_list (GList *rscs, GList *filter)
 
GList * pe__build_node_name_list (pcmk_scheduler_t *scheduler, const char *s)
 
GList * pe__build_rsc_list (pcmk_scheduler_t *scheduler, const char *s)
 
bool pcmk__rsc_filtered_by_node (pcmk_resource_t *rsc, GList *only_node)
 
gboolean pe__bundle_is_filtered (const pcmk_resource_t *rsc, GList *only_rsc, gboolean check_parent)
 
gboolean pe__clone_is_filtered (const pcmk_resource_t *rsc, GList *only_rsc, gboolean check_parent)
 
gboolean pe__group_is_filtered (const pcmk_resource_t *rsc, GList *only_rsc, gboolean check_parent)
 
gboolean pe__native_is_filtered (const pcmk_resource_t *rsc, GList *only_rsc, gboolean check_parent)
 
xmlNode * pe__failed_probe_for_rsc (const pcmk_resource_t *rsc, const char *name)
 
const char * pe__clone_child_id (const pcmk_resource_t *rsc)
 
int pe__sum_node_health_scores (const pcmk_node_t *node, int base_health)
 
int pe__node_health (pcmk_node_t *node)
 

Macro Definition Documentation

◆ delete_action

#define delete_action (   rsc,
  node,
  optional 
)
Value:
rsc, delete_key(rsc), PCMK_ACTION_DELETE, node, \
optional, rsc->cluster);
#define PCMK_ACTION_DELETE
Definition: actions.h:48
pcmk_action_t * custom_action(pcmk_resource_t *rsc, char *key, const char *task, const pcmk_node_t *on_node, gboolean optional, pcmk_scheduler_t *scheduler)
Create or update an action object.
Definition: pe_actions.c:1117
#define delete_key(rsc)
Definition: internal.h:373

Definition at line 374 of file internal.h.

◆ delete_key

#define delete_key (   rsc)    pcmk__op_key(rsc->id, PCMK_ACTION_DELETE, 0)

Definition at line 373 of file internal.h.

◆ demote_action

#define demote_action (   rsc,
  node,
  optional 
)
Value:
rsc, demote_key(rsc), PCMK_ACTION_DEMOTE, node, \
optional, rsc->cluster)
#define demote_key(rsc)
Definition: internal.h:394
#define PCMK_ACTION_DEMOTE
Definition: actions.h:49
pcmk_action_t * custom_action(pcmk_resource_t *rsc, char *key, const char *task, const pcmk_node_t *on_node, gboolean optional, pcmk_scheduler_t *scheduler)
Create or update an action object.
Definition: pe_actions.c:1117

Definition at line 395 of file internal.h.

◆ demote_key

#define demote_key (   rsc)    pcmk__op_key(rsc->id, PCMK_ACTION_DEMOTE, 0)

Definition at line 394 of file internal.h.

◆ pe__clear_action_flags

#define pe__clear_action_flags (   action,
  flags_to_clear 
)
Value:
do { \
(action)->flags = pcmk__clear_flags_as(__func__, __LINE__, \
"Action", (action)->uuid, \
(action)->flags, \
(flags_to_clear), \
#flags_to_clear); \
} while (0)
#define LOG_TRACE
Definition: logging.h:38
const char * action
Definition: pcmk_fence.c:30
uint64_t flags
Definition: remote.c:215

Definition at line 85 of file internal.h.

◆ pe__clear_action_flags_as

#define pe__clear_action_flags_as (   function,
  line,
  action,
  flags_to_clear 
)
Value:
do { \
(action)->flags = pcmk__clear_flags_as((function), (line), \
"Action", (action)->uuid, \
(action)->flags, \
(flags_to_clear), \
#flags_to_clear); \
} while (0)
#define LOG_TRACE
Definition: logging.h:38
const char * action
Definition: pcmk_fence.c:30
uint64_t flags
Definition: remote.c:215

Definition at line 119 of file internal.h.

◆ pe__clear_order_flags

#define pe__clear_order_flags (   order_flags,
  flags_to_clear 
)
Value:
do { \
order_flags = pcmk__clear_flags_as(__func__, __LINE__, LOG_TRACE, \
"Ordering", "constraint", \
order_flags, (flags_to_clear), \
#flags_to_clear); \
} while (0)
#define LOG_TRACE
Definition: logging.h:38

Definition at line 135 of file internal.h.

◆ pe__clear_raw_action_flags

#define pe__clear_raw_action_flags (   action_flags,
  action_name,
  flags_to_clear 
)
Value:
do { \
action_flags = pcmk__clear_flags_as(__func__, __LINE__, \
"Action", action_name, \
(action_flags), \
(flags_to_clear), \
#flags_to_clear); \
} while (0)
#define LOG_TRACE
Definition: logging.h:38

Definition at line 101 of file internal.h.

◆ pe__clear_resource_flags

#define pe__clear_resource_flags (   resource,
  flags_to_clear 
)
Value:
do { \
(resource)->flags = pcmk__clear_flags_as(__func__, __LINE__, \
LOG_TRACE, "Resource", (resource)->id, (resource)->flags, \
(flags_to_clear), #flags_to_clear); \
} while (0)
#define LOG_TRACE
Definition: logging.h:38
uint64_t flags
Definition: remote.c:215

Definition at line 70 of file internal.h.

◆ pe__clear_working_set_flags

#define pe__clear_working_set_flags (   scheduler,
  flags_to_clear 
)
Value:
do { \
(scheduler)->flags = pcmk__clear_flags_as(__func__, __LINE__, \
LOG_TRACE, "Scheduler", crm_system_name, \
(scheduler)->flags, (flags_to_clear), #flags_to_clear); \
} while (0)
#define LOG_TRACE
Definition: logging.h:38
char * crm_system_name
Definition: utils.c:51
pcmk_scheduler_t * scheduler
uint64_t flags
Definition: remote.c:215

Definition at line 58 of file internal.h.

◆ pe__set_action_flags

#define pe__set_action_flags (   action,
  flags_to_set 
)
Value:
do { \
(action)->flags = pcmk__set_flags_as(__func__, __LINE__, \
"Action", (action)->uuid, \
(action)->flags, \
(flags_to_set), \
#flags_to_set); \
} while (0)
#define LOG_TRACE
Definition: logging.h:38
const char * action
Definition: pcmk_fence.c:30
uint64_t flags
Definition: remote.c:215

Definition at line 76 of file internal.h.

◆ pe__set_action_flags_as

#define pe__set_action_flags_as (   function,
  line,
  action,
  flags_to_set 
)
Value:
do { \
(action)->flags = pcmk__set_flags_as((function), (line), \
"Action", (action)->uuid, \
(action)->flags, \
(flags_to_set), \
#flags_to_set); \
} while (0)
#define LOG_TRACE
Definition: logging.h:38
const char * action
Definition: pcmk_fence.c:30
uint64_t flags
Definition: remote.c:215

Definition at line 110 of file internal.h.

◆ pe__set_order_flags

#define pe__set_order_flags (   order_flags,
  flags_to_set 
)
Value:
do { \
order_flags = pcmk__set_flags_as(__func__, __LINE__, LOG_TRACE, \
"Ordering", "constraint", \
order_flags, (flags_to_set), \
#flags_to_set); \
} while (0)
#define LOG_TRACE
Definition: logging.h:38

Definition at line 128 of file internal.h.

◆ pe__set_raw_action_flags

#define pe__set_raw_action_flags (   action_flags,
  action_name,
  flags_to_set 
)
Value:
do { \
action_flags = pcmk__set_flags_as(__func__, __LINE__, \
LOG_TRACE, "Action", action_name, \
(action_flags), \
(flags_to_set), #flags_to_set); \
} while (0)
#define LOG_TRACE
Definition: logging.h:38

Definition at line 94 of file internal.h.

◆ pe__set_resource_flags

#define pe__set_resource_flags (   resource,
  flags_to_set 
)
Value:
do { \
(resource)->flags = pcmk__set_flags_as(__func__, __LINE__, \
LOG_TRACE, "Resource", (resource)->id, (resource)->flags, \
(flags_to_set), #flags_to_set); \
} while (0)
#define LOG_TRACE
Definition: logging.h:38
uint64_t flags
Definition: remote.c:215

Definition at line 64 of file internal.h.

◆ pe__set_working_set_flags

#define pe__set_working_set_flags (   scheduler,
  flags_to_set 
)
Value:
do { \
(scheduler)->flags = pcmk__set_flags_as(__func__, __LINE__, \
LOG_TRACE, "Scheduler", crm_system_name, \
(scheduler)->flags, (flags_to_set), #flags_to_set); \
} while (0)
#define LOG_TRACE
Definition: logging.h:38
char * crm_system_name
Definition: utils.c:51
pcmk_scheduler_t * scheduler
uint64_t flags
Definition: remote.c:215

Definition at line 52 of file internal.h.

◆ pe__show_node_scores

#define pe__show_node_scores (   level,
  rsc,
  text,
  nodes,
  scheduler 
)
Value:
pe__show_node_scores_as(__FILE__, __func__, __LINE__, \
(level), (rsc), (text), (nodes), (scheduler))
void pe__show_node_scores_as(const char *file, const char *function, int line, bool to_log, const pcmk_resource_t *rsc, const char *comment, GHashTable *nodes, pcmk_scheduler_t *scheduler)
Definition: utils.c:250
pcmk_scheduler_t * scheduler

Definition at line 341 of file internal.h.

◆ pe_err

#define pe_err (   fmt...)
Value:
do { \
was_processing_error = TRUE; \
pcmk__config_err(fmt); \
} while (0)

Definition at line 39 of file internal.h.

◆ pe_proc_err

#define pe_proc_err (   fmt...)    { was_processing_error = TRUE; crm_err(fmt); }

Definition at line 49 of file internal.h.

◆ pe_proc_warn

#define pe_proc_warn (   fmt...)    { was_processing_warning = TRUE; crm_warn(fmt); }

Definition at line 50 of file internal.h.

◆ pe_rsc_debug

#define pe_rsc_debug (   rsc,
  fmt,
  args... 
)    crm_log_tag(LOG_DEBUG, rsc ? rsc->id : "<NULL>", fmt, ##args)

Definition at line 36 of file internal.h.

◆ pe_rsc_info

#define pe_rsc_info (   rsc,
  fmt,
  args... 
)    crm_log_tag(LOG_INFO, rsc ? rsc->id : "<NULL>", fmt, ##args)

Definition at line 35 of file internal.h.

◆ pe_rsc_trace

#define pe_rsc_trace (   rsc,
  fmt,
  args... 
)    crm_log_tag(LOG_TRACE, rsc ? rsc->id : "<NULL>", fmt, ##args)

Definition at line 37 of file internal.h.

◆ pe_warn

#define pe_warn (   fmt...)
Value:
do { \
was_processing_warning = TRUE; \
pcmk__config_warn(fmt); \
} while (0)

Definition at line 44 of file internal.h.

◆ pe_warn_once

#define pe_warn_once (   pe_wo_bit,
  fmt... 
)
Value:
do { \
if (!pcmk_is_set(pcmk__warnings, pe_wo_bit)) { \
if (pe_wo_bit == pcmk__wo_blind) { \
crm_warn(fmt); \
} else { \
pe_warn(fmt); \
} \
pcmk__warnings = pcmk__set_flags_as(__func__, __LINE__, \
"Warn-once", "logging", \
(pe_wo_bit), #pe_wo_bit); \
} \
} while (0);
#define LOG_TRACE
Definition: logging.h:38
#define pcmk_is_set(g, f)
Convenience alias for pcmk_all_flags_set(), to check single flag.
Definition: util.h:99
uint32_t pcmk__warnings
Definition: scheduler.c:14

Definition at line 142 of file internal.h.

◆ promote_action

#define promote_action (   rsc,
  node,
  optional 
)
Value:
rsc, promote_key(rsc), PCMK_ACTION_PROMOTE, node, \
optional, rsc->cluster)
#define promote_key(rsc)
Definition: internal.h:389
pcmk_action_t * custom_action(pcmk_resource_t *rsc, char *key, const char *task, const pcmk_node_t *on_node, gboolean optional, pcmk_scheduler_t *scheduler)
Create or update an action object.
Definition: pe_actions.c:1117
#define PCMK_ACTION_PROMOTE
Definition: actions.h:65

Definition at line 390 of file internal.h.

◆ promote_key

#define promote_key (   rsc)    pcmk__op_key(rsc->id, PCMK_ACTION_PROMOTE, 0)

Definition at line 389 of file internal.h.

◆ reload_key

#define reload_key (   rsc)    pcmk__op_key(rsc->id, PCMK_ACTION_RELOAD_AGENT, 0)

Definition at line 383 of file internal.h.

◆ start_action

#define start_action (   rsc,
  node,
  optional 
)
Value:
rsc, start_key(rsc), PCMK_ACTION_START, node, \
optional, rsc->cluster)
#define PCMK_ACTION_START
Definition: actions.h:71
pcmk_action_t * custom_action(pcmk_resource_t *rsc, char *key, const char *task, const pcmk_node_t *on_node, gboolean optional, pcmk_scheduler_t *scheduler)
Create or update an action object.
Definition: pe_actions.c:1117
#define start_key(rsc)
Definition: internal.h:384

Definition at line 385 of file internal.h.

◆ start_key

#define start_key (   rsc)    pcmk__op_key(rsc->id, PCMK_ACTION_START, 0)

Definition at line 384 of file internal.h.

◆ stop_action

#define stop_action (   rsc,
  node,
  optional 
)
Value:
rsc, stop_key(rsc), PCMK_ACTION_STOP, node, \
optional, rsc->cluster);
#define stop_key(rsc)
Definition: internal.h:378
#define PCMK_ACTION_STOP
Definition: actions.h:74
pcmk_action_t * custom_action(pcmk_resource_t *rsc, char *key, const char *task, const pcmk_node_t *on_node, gboolean optional, pcmk_scheduler_t *scheduler)
Create or update an action object.
Definition: pe_actions.c:1117

Definition at line 379 of file internal.h.

◆ stop_key

#define stop_key (   rsc)    pcmk__op_key(rsc->id, PCMK_ACTION_STOP, 0)

Definition at line 378 of file internal.h.

Typedef Documentation

◆ op_digest_cache_t

◆ pe__location_t

◆ pe__ordering_t

Function Documentation

◆ add_hash_param()

void add_hash_param ( GHashTable *  hash,
const char *  name,
const char *  value 
)

Definition at line 508 of file common.c.

◆ add_tag_ref()

gboolean add_tag_ref ( GHashTable *  tags,
const char *  tag_name,
const char *  obj_ref 
)

Definition at line 617 of file utils.c.

◆ clone_active()

gboolean clone_active ( pcmk_resource_t rsc,
gboolean  all 
)

Definition at line 442 of file clone.c.

◆ clone_free()

void clone_free ( pcmk_resource_t rsc)

Definition at line 1180 of file clone.c.

◆ clone_print()

void clone_print ( pcmk_resource_t rsc,
const char *  pre_text,
long  options,
void *  print_data 
)
Deprecated:
This function will be removed in a future release

Definition at line 593 of file clone.c.

◆ clone_resource_state()

enum rsc_role_e clone_resource_state ( const pcmk_resource_t rsc,
gboolean  current 
)

Definition at line 1214 of file clone.c.

◆ clone_strip()

char* clone_strip ( const char *  last_rsc_id)

Definition at line 1865 of file unpack.c.

◆ clone_unpack()

gboolean clone_unpack ( pcmk_resource_t rsc,
pcmk_scheduler_t scheduler 
)

Definition at line 325 of file clone.c.

◆ clone_zero()

char* clone_zero ( const char *  last_rsc_id)

Definition at line 1887 of file unpack.c.

◆ common_free()

void common_free ( pcmk_resource_t rsc)

Definition at line 980 of file complex.c.

◆ common_print()

void common_print ( pcmk_resource_t rsc,
const char *  pre_text,
const char *  name,
const pcmk_node_t node,
long  options,
void *  print_data 
)
Deprecated:
This function will be removed in a future release

Definition at line 811 of file native.c.

◆ custom_action()

pcmk_action_t* custom_action ( pcmk_resource_t rsc,
char *  key,
const char *  task,
const pcmk_node_t on_node,
gboolean  optional,
pcmk_scheduler_t scheduler 
)

Create or update an action object.

Parameters
[in,out]rscResource that action is for (if any)
[in,out]keyAction key (must be non-NULL)
[in]taskAction name (must be non-NULL)
[in]on_nodeNode that action is on (if any)
[in]optionalWhether action should be considered optional
[in,out]schedulerScheduler data
Returns
Action object corresponding to arguments (guaranteed not to be NULL)
Note
This function takes ownership of (and might free) key, and scheduler takes ownership of the returned action (the caller should not free it).

Definition at line 1117 of file pe_actions.c.

◆ destroy_ticket()

void destroy_ticket ( gpointer  data)

Definition at line 498 of file utils.c.

◆ find_actions()

GList* find_actions ( GList *  input,
const char *  key,
const pcmk_node_t on_node 
)

Definition at line 1515 of file pe_actions.c.

◆ find_actions_exact()

GList* find_actions_exact ( GList *  input,
const char *  key,
const pcmk_node_t on_node 
)

Definition at line 1549 of file pe_actions.c.

◆ find_clone_instance()

pcmk_resource_t* find_clone_instance ( const pcmk_resource_t rsc,
const char *  sub_id 
)

Definition at line 227 of file clone.c.

◆ find_first_action()

pcmk_action_t* find_first_action ( const GList *  input,
const char *  uuid,
const char *  task,
const pcmk_node_t on_node 
)

Definition at line 1486 of file pe_actions.c.

◆ get_complex_task()

enum action_tasks get_complex_task ( const pcmk_resource_t rsc,
const char *  name 
)

Definition at line 1453 of file pe_actions.c.

◆ get_effective_time()

time_t get_effective_time ( pcmk_scheduler_t scheduler)

Definition at line 396 of file utils.c.

◆ get_pseudo_op()

pcmk_action_t* get_pseudo_op ( const char *  name,
pcmk_scheduler_t scheduler 
)

Definition at line 1160 of file pe_actions.c.

◆ get_target_role()

gboolean get_target_role ( const pcmk_resource_t rsc,
enum rsc_role_e role 
)

Definition at line 411 of file utils.c.

◆ group_active()

gboolean group_active ( pcmk_resource_t rsc,
gboolean  all 
)

Definition at line 236 of file group.c.

◆ group_free()

void group_free ( pcmk_resource_t rsc)

Definition at line 456 of file group.c.

◆ group_print()

void group_print ( pcmk_resource_t rsc,
const char *  pre_text,
long  options,
void *  print_data 
)
Deprecated:
This function will be removed in a future release

Definition at line 290 of file group.c.

◆ group_resource_state()

enum rsc_role_e group_resource_state ( const pcmk_resource_t rsc,
gboolean  current 
)

Definition at line 477 of file group.c.

◆ group_unpack()

gboolean group_unpack ( pcmk_resource_t rsc,
pcmk_scheduler_t scheduler 
)

Definition at line 180 of file group.c.

◆ is_set_recursive()

bool is_set_recursive ( const pcmk_resource_t rsc,
long long  flag,
bool  any 
)

Definition at line 558 of file clone.c.

◆ native_active()

gboolean native_active ( pcmk_resource_t rsc,
gboolean  all 
)

Definition at line 351 of file native.c.

◆ native_add_running()

void native_add_running ( pcmk_resource_t rsc,
pcmk_node_t node,
pcmk_scheduler_t scheduler,
gboolean  failed 
)

Definition at line 90 of file native.c.

◆ native_find_rsc()

pcmk_resource_t* native_find_rsc ( pcmk_resource_t rsc,
const char *  id,
const pcmk_node_t node,
int  flags 
)

Definition at line 275 of file native.c.

◆ native_free()

void native_free ( pcmk_resource_t rsc)

Definition at line 1086 of file native.c.

◆ native_location()

pcmk_node_t* native_location ( const pcmk_resource_t rsc,
GList **  list,
int  current 
)

Definition at line 1116 of file native.c.

◆ native_parameter()

char* native_parameter ( pcmk_resource_t rsc,
pcmk_node_t node,
gboolean  create,
const char *  name,
pcmk_scheduler_t scheduler 
)

Definition at line 329 of file native.c.

◆ native_print()

void native_print ( pcmk_resource_t rsc,
const char *  pre_text,
long  options,
void *  print_data 
)
Deprecated:
This function will be removed in a future release

Definition at line 931 of file native.c.

◆ native_resource_state()

enum rsc_role_e native_resource_state ( const pcmk_resource_t rsc,
gboolean  current 
)

Definition at line 1093 of file native.c.

◆ native_unpack()

gboolean native_unpack ( pcmk_resource_t rsc,
pcmk_scheduler_t scheduler 
)

Definition at line 206 of file native.c.

◆ order_actions()

gboolean order_actions ( pcmk_action_t lh_action,
pcmk_action_t rh_action,
uint32_t  flags 
)

Definition at line 450 of file utils.c.

◆ pcmk__action_requires()

enum rsc_start_requirement pcmk__action_requires ( const pcmk_resource_t rsc,
const char *  action_name 
)

Definition at line 851 of file pe_actions.c.

◆ pcmk__find_action_config()

xmlNode* pcmk__find_action_config ( const pcmk_resource_t rsc,
const char *  action_name,
guint  interval_ms,
bool  include_disabled 
)

Definition at line 129 of file pe_actions.c.

◆ pcmk__native_output_string()

gchar* pcmk__native_output_string ( const pcmk_resource_t rsc,
const char *  name,
const pcmk_node_t node,
uint32_t  show_opts,
const char *  target_role,
bool  show_nodes 
)

Definition at line 563 of file native.c.

◆ pcmk__parse_on_fail()

enum action_fail_response pcmk__parse_on_fail ( const pcmk_resource_t rsc,
const char *  action_name,
guint  interval_ms,
const char *  value 
)

Definition at line 889 of file pe_actions.c.

◆ pcmk__role_after_failure()

enum rsc_role_e pcmk__role_after_failure ( const pcmk_resource_t rsc,
const char *  action_name,
enum action_fail_response  on_fail,
GHashTable *  meta 
)

Definition at line 1024 of file pe_actions.c.

◆ pcmk__rsc_filtered_by_node()

bool pcmk__rsc_filtered_by_node ( pcmk_resource_t rsc,
GList *  only_node 
)

Definition at line 775 of file utils.c.

◆ pcmk__unpack_action_meta()

GHashTable* pcmk__unpack_action_meta ( pcmk_resource_t rsc,
const pcmk_node_t node,
const char *  action_name,
guint  interval_ms,
const xmlNode *  action_config 
)

Definition at line 692 of file pe_actions.c.

◆ pcmk__unpack_action_rsc_params()

GHashTable* pcmk__unpack_action_rsc_params ( const xmlNode *  action_xml,
GHashTable *  node_attrs,
pcmk_scheduler_t data_set 
)

Definition at line 240 of file pe_actions.c.

◆ pe__action2reason()

char* pe__action2reason ( const pcmk_action_t action,
enum pe_action_flags  flag 
)

Definition at line 1614 of file pe_actions.c.

◆ pe__add_action_expected_result()

void pe__add_action_expected_result ( pcmk_action_t action,
int  expected_result 
)

Definition at line 1861 of file pe_actions.c.

◆ pe__add_bundle_remote_name()

const char* pe__add_bundle_remote_name ( pcmk_resource_t rsc,
pcmk_scheduler_t scheduler,
xmlNode *  xml,
const char *  field 
)

Definition at line 938 of file bundle.c.

◆ pe__add_param_check()

void pe__add_param_check ( const xmlNode *  rsc_op,
pcmk_resource_t rsc,
pcmk_node_t node,
enum  pcmk__check_parameters,
pcmk_scheduler_t scheduler 
)

Definition at line 225 of file remote.c.

◆ pe__build_node_name_list()

GList* pe__build_node_name_list ( pcmk_scheduler_t scheduler,
const char *  s 
)

Definition at line 801 of file utils.c.

◆ pe__build_rsc_list()

GList* pe__build_rsc_list ( pcmk_scheduler_t scheduler,
const char *  s 
)

Definition at line 834 of file utils.c.

◆ pe__bundle_active()

gboolean pe__bundle_active ( pcmk_resource_t rsc,
gboolean  all 
)

Definition at line 1319 of file bundle.c.

◆ pe__bundle_containers()

GList* pe__bundle_containers ( const pcmk_resource_t bundle)

Definition at line 2113 of file bundle.c.

◆ pe__bundle_html()

int pe__bundle_html ( pcmk__output_t out,
va_list  args 
)

◆ pe__bundle_is_filtered()

gboolean pe__bundle_is_filtered ( const pcmk_resource_t rsc,
GList *  only_rsc,
gboolean  check_parent 
)

Definition at line 2069 of file bundle.c.

◆ pe__bundle_max()

int pe__bundle_max ( const pcmk_resource_t rsc)

Definition at line 96 of file bundle.c.

◆ pe__bundle_needs_remote_name()

bool pe__bundle_needs_remote_name ( pcmk_resource_t rsc)

Definition at line 920 of file bundle.c.

◆ pe__bundle_resource_state()

enum rsc_role_e pe__bundle_resource_state ( const pcmk_resource_t rsc,
gboolean  current 
)

Definition at line 2018 of file bundle.c.

◆ pe__bundle_text()

int pe__bundle_text ( pcmk__output_t out,
va_list  args 
)

◆ pe__bundle_xml()

int pe__bundle_xml ( pcmk__output_t out,
va_list  args 
)

◆ pe__bundled_resource()

pcmk_resource_t* pe__bundled_resource ( const pcmk_resource_t rsc)

Definition at line 113 of file bundle.c.

◆ pe__calculate_digests()

op_digest_cache_t* pe__calculate_digests ( pcmk_resource_t rsc,
const char *  task,
guint *  interval_ms,
const pcmk_node_t node,
const xmlNode *  xml_op,
GHashTable *  overrides,
bool  calc_secure,
pcmk_scheduler_t scheduler 
)

Definition at line 306 of file pe_digest.c.

◆ pe__clear_failcount()

pcmk_action_t* pe__clear_failcount ( pcmk_resource_t rsc,
const pcmk_node_t node,
const char *  reason,
pcmk_scheduler_t scheduler 
)

Schedule a controller operation to clear a fail count.

Parameters
[in,out]rscResource with failure
[in]nodeNode failure occurred on
[in]reasonReadable description why needed (for logging)
[in,out]schedulerScheduler data cluster
Returns
Scheduled action

Definition at line 453 of file failcounts.c.

◆ pe__clear_resource_flags_on_all()

void pe__clear_resource_flags_on_all ( pcmk_scheduler_t scheduler,
uint64_t  flag 
)

Definition at line 562 of file utils.c.

◆ pe__clear_resource_flags_recursive()

void pe__clear_resource_flags_recursive ( pcmk_resource_t rsc,
uint64_t  flags 
)

Definition at line 552 of file utils.c.

◆ pe__clear_resource_history()

void pe__clear_resource_history ( pcmk_resource_t rsc,
const pcmk_node_t node 
)

Definition at line 1664 of file pe_actions.c.

◆ pe__clone_child_id()

const char* pe__clone_child_id ( const pcmk_resource_t rsc)

Definition at line 1284 of file clone.c.

◆ pe__clone_default()

int pe__clone_default ( pcmk__output_t out,
va_list  args 
)

◆ pe__clone_flag_is_set()

bool pe__clone_flag_is_set ( const pcmk_resource_t clone,
uint32_t  flags 
)

Definition at line 1343 of file clone.c.

◆ pe__clone_is_filtered()

gboolean pe__clone_is_filtered ( const pcmk_resource_t rsc,
GList *  only_rsc,
gboolean  check_parent 
)

Definition at line 1254 of file clone.c.

◆ pe__clone_is_ordered()

bool pe__clone_is_ordered ( const pcmk_resource_t clone)

Definition at line 1300 of file clone.c.

◆ pe__clone_max()

int pe__clone_max ( const pcmk_resource_t clone)

Definition at line 63 of file clone.c.

◆ pe__clone_node_max()

int pe__clone_node_max ( const pcmk_resource_t clone)

Definition at line 80 of file clone.c.

◆ pe__clone_promoted_max()

int pe__clone_promoted_max ( const pcmk_resource_t clone)

Definition at line 97 of file clone.c.

◆ pe__clone_promoted_node_max()

int pe__clone_promoted_node_max ( const pcmk_resource_t clone)

Definition at line 114 of file clone.c.

◆ pe__clone_xml()

int pe__clone_xml ( pcmk__output_t out,
va_list  args 
)

◆ pe__cmp_node_name()

gint pe__cmp_node_name ( gconstpointer  a,
gconstpointer  b 
)

Definition at line 146 of file utils.c.

◆ pe__common_output_html()

int pe__common_output_html ( pcmk__output_t out,
const pcmk_resource_t rsc,
const char *  name,
const pcmk_node_t node,
unsigned int  options 
)

◆ pe__common_output_text()

int pe__common_output_text ( pcmk__output_t out,
const pcmk_resource_t rsc,
const char *  name,
const pcmk_node_t node,
unsigned int  options 
)

◆ pe__const_top_resource()

const pcmk_resource_t* pe__const_top_resource ( const pcmk_resource_t rsc,
bool  include_bundle 
)

Definition at line 962 of file complex.c.

◆ pe__copy_node()

pcmk_node_t* pe__copy_node ( const pcmk_node_t this_node)

Definition at line 89 of file utils.c.

◆ pe__count_active_node()

bool pe__count_active_node ( const pcmk_resource_t rsc,
pcmk_node_t node,
pcmk_node_t **  active,
unsigned int *  count_all,
unsigned int *  count_clean 
)

Definition at line 1058 of file complex.c.

◆ pe__count_bundle()

void pe__count_bundle ( pcmk_resource_t rsc)

Definition at line 2045 of file bundle.c.

◆ pe__count_common()

void pe__count_common ( pcmk_resource_t rsc)

Definition at line 1156 of file complex.c.

◆ pe__create_clone_notif_pseudo_ops()

void pe__create_clone_notif_pseudo_ops ( pcmk_resource_t clone,
pcmk_action_t start,
pcmk_action_t started,
pcmk_action_t stop,
pcmk_action_t stopped 
)

Definition at line 1475 of file clone.c.

◆ pe__create_clone_notifications()

void pe__create_clone_notifications ( pcmk_resource_t clone)

Definition at line 1426 of file clone.c.

◆ pe__create_promotable_pseudo_ops()

void pe__create_promotable_pseudo_ops ( pcmk_resource_t clone,
bool  any_promoting,
bool  any_demoting 
)

Definition at line 1362 of file clone.c.

◆ pe__failed_probe_for_rsc()

xmlNode* pe__failed_probe_for_rsc ( const pcmk_resource_t rsc,
const char *  name 
)

Definition at line 869 of file utils.c.

◆ pe__filter_rsc_list()

GList* pe__filter_rsc_list ( GList *  rscs,
GList *  filter 
)

Definition at line 781 of file utils.c.

◆ pe__find_active_requires()

pcmk_node_t* pe__find_active_requires ( const pcmk_resource_t rsc,
unsigned int *  count 
)

Definition at line 1139 of file complex.c.

◆ pe__find_bundle_replica()

pcmk_resource_t* pe__find_bundle_replica ( const pcmk_resource_t bundle,
const pcmk_node_t node 
)

Definition at line 1367 of file bundle.c.

◆ pe__first_container()

pcmk_resource_t* pe__first_container ( const pcmk_resource_t bundle)

Definition at line 187 of file bundle.c.

◆ pe__foreach_bundle_replica()

void pe__foreach_bundle_replica ( pcmk_resource_t bundle,
bool(*)(pe__bundle_replica_t *, void *)  fn,
void *  user_data 
)

Definition at line 210 of file bundle.c.

◆ pe__foreach_const_bundle_replica()

void pe__foreach_const_bundle_replica ( const pcmk_resource_t bundle,
bool(*)(const pe__bundle_replica_t *, void *)  fn,
void *  user_data 
)

Definition at line 234 of file bundle.c.

◆ pe__foreach_param_check()

void pe__foreach_param_check ( pcmk_scheduler_t scheduler,
void(*)(pcmk_resource_t *, pcmk_node_t *, const xmlNode *, enum pcmk__check_parameters cb 
)

Definition at line 252 of file remote.c.

◆ pe__free_bundle()

void pe__free_bundle ( pcmk_resource_t rsc)

Definition at line 1984 of file bundle.c.

◆ pe__free_clone_notification_data()

void pe__free_clone_notification_data ( pcmk_resource_t clone)

Definition at line 1445 of file clone.c.

◆ pe__free_digests()

void pe__free_digests ( gpointer  ptr)

Definition at line 34 of file pe_digest.c.

◆ pe__free_param_checks()

void pe__free_param_checks ( pcmk_scheduler_t scheduler)

Definition at line 268 of file remote.c.

◆ pe__get_rsc_in_container()

const pcmk_resource_t* pe__get_rsc_in_container ( const pcmk_resource_t instance)

Definition at line 131 of file bundle.c.

◆ pe__group_default()

int pe__group_default ( pcmk__output_t out,
va_list  args 
)

◆ pe__group_flag_is_set()

bool pe__group_flag_is_set ( const pcmk_resource_t group,
uint32_t  flags 
)

Definition at line 57 of file group.c.

◆ pe__group_is_filtered()

gboolean pe__group_is_filtered ( const pcmk_resource_t rsc,
GList *  only_rsc,
gboolean  check_parent 
)

Definition at line 496 of file group.c.

◆ pe__group_xml()

int pe__group_xml ( pcmk__output_t out,
va_list  args 
)

◆ pe__is_newer_op()

int pe__is_newer_op ( const xmlNode *  xml_a,
const xmlNode *  xml_b,
bool  same_node_default 
)

Definition at line 1682 of file pe_actions.c.

◆ pe__is_universal_clone()

bool pe__is_universal_clone ( const pcmk_resource_t rsc,
const pcmk_scheduler_t scheduler 
)

Definition at line 1240 of file clone.c.

◆ pe__last_group_member()

pcmk_resource_t* pe__last_group_member ( const pcmk_resource_t group)

Definition at line 37 of file group.c.

◆ pe__name_and_nvpairs_xml()

int pe__name_and_nvpairs_xml ( pcmk__output_t out,
bool  is_list,
const char *  tag_name,
size_t  pairs_count,
  ... 
)

Definition at line 597 of file pe_output.c.

◆ pe__native_is_filtered()

gboolean pe__native_is_filtered ( const pcmk_resource_t rsc,
GList *  only_rsc,
gboolean  check_parent 
)

Definition at line 1425 of file native.c.

◆ pe__new_rsc_pseudo_action()

pcmk_action_t* pe__new_rsc_pseudo_action ( pcmk_resource_t rsc,
const char *  task,
bool  optional,
bool  runnable 
)

Definition at line 1835 of file pe_actions.c.

◆ pe__node_attribute_calculated()

const char* pe__node_attribute_calculated ( const pcmk_node_t node,
const char *  name,
const pcmk_resource_t rsc,
enum pcmk__rsc_node  node_type,
bool  force_host 
)

Definition at line 546 of file common.c.

◆ pe__node_display_name()

char* pe__node_display_name ( pcmk_node_t node,
bool  print_detail 
)

Definition at line 544 of file pe_output.c.

◆ pe__node_health()

int pe__node_health ( pcmk_node_t node)

Definition at line 114 of file pe_health.c.

◆ pe__node_html()

int pe__node_html ( pcmk__output_t out,
va_list  args 
)

◆ pe__node_is_bundle_instance()

bool pe__node_is_bundle_instance ( const pcmk_resource_t bundle,
const pcmk_node_t node 
)

Definition at line 161 of file bundle.c.

◆ pe__node_list2table()

GHashTable* pe__node_list2table ( const GList *  list)

Definition at line 116 of file utils.c.

◆ pe__node_text()

int pe__node_text ( pcmk__output_t out,
va_list  args 
)

◆ pe__node_xml()

int pe__node_xml ( pcmk__output_t out,
va_list  args 
)

◆ pe__order_notifs_after_fencing()

void pe__order_notifs_after_fencing ( const pcmk_action_t action,
pcmk_resource_t rsc,
pcmk_action_t stonith_op 
)

Definition at line 992 of file pe_notif.c.

◆ pe__print_bundle()

void pe__print_bundle ( pcmk_resource_t rsc,
const char *  pre_text,
long  options,
void *  print_data 
)
Deprecated:
This function will be removed in a future release

Definition at line 1882 of file bundle.c.

◆ pe__register_messages()

void pe__register_messages ( pcmk__output_t out)

Definition at line 3162 of file pe_output.c.

◆ pe__resource_actions()

GList* pe__resource_actions ( const pcmk_resource_t rsc,
const pcmk_node_t node,
const char *  task,
bool  require_node 
)

Find all actions of given type for a resource.

Parameters
[in]rscResource to search
[in]nodeFind only actions scheduled on this node
[in]taskAction name to search for
[in]require_nodeIf TRUE, NULL node or action node will not match
Returns
List of actions found (or NULL if none)
Note
If node is not NULL and require_node is FALSE, matching actions without a node will be assigned to node.

Definition at line 1588 of file pe_actions.c.

◆ pe__resource_description()

const char* pe__resource_description ( const pcmk_resource_t rsc,
uint32_t  show_opts 
)

Definition at line 22 of file pe_output.c.

◆ pe__resource_html()

int pe__resource_html ( pcmk__output_t out,
va_list  args 
)

◆ pe__resource_is_disabled()

bool pe__resource_is_disabled ( const pcmk_resource_t rsc)

Definition at line 725 of file utils.c.

◆ pe__resource_text()

int pe__resource_text ( pcmk__output_t out,
va_list  args 
)

◆ pe__resource_xml()

int pe__resource_xml ( pcmk__output_t out,
va_list  args 
)

◆ pe__rsc_has_tag()

bool pe__rsc_has_tag ( pcmk_scheduler_t scheduler,
const char *  rsc,
const char *  tag 
)

Definition at line 85 of file tags.c.

◆ pe__rsc_running_on_any()

bool pe__rsc_running_on_any ( pcmk_resource_t rsc,
GList *  node_list 
)

Definition at line 761 of file utils.c.

◆ pe__rsc_running_on_only()

bool pe__rsc_running_on_only ( const pcmk_resource_t rsc,
const pcmk_node_t node 
)

Definition at line 754 of file utils.c.

◆ pe__rscs_brief_output()

int pe__rscs_brief_output ( pcmk__output_t out,
GList *  rsc_list,
unsigned int  options 
)

◆ pe__rscs_with_tag()

GList* pe__rscs_with_tag ( pcmk_scheduler_t scheduler,
const char *  tag_name 
)

Definition at line 20 of file tags.c.

◆ pe__set_clone_flag()

int pe__set_clone_flag ( pcmk_resource_t clone,
enum pcmk__clone_flags  flag 
)

Definition at line 1319 of file clone.c.

◆ pe__set_next_role()

void pe__set_next_role ( pcmk_resource_t rsc,
enum rsc_role_e  role,
const char *  why 
)

Definition at line 1184 of file complex.c.

◆ pe__set_resource_flags_recursive()

void pe__set_resource_flags_recursive ( pcmk_resource_t rsc,
uint64_t  flags 
)

Definition at line 571 of file utils.c.

◆ pe__show_node_scores_as()

void pe__show_node_scores_as ( const char *  file,
const char *  function,
int  line,
bool  to_log,
const pcmk_resource_t rsc,
const char *  comment,
GHashTable *  nodes,
pcmk_scheduler_t scheduler 
)

Definition at line 250 of file utils.c.

◆ pe__shutdown_requested()

bool pe__shutdown_requested ( const pcmk_node_t node)

Definition at line 666 of file utils.c.

◆ pe__sum_node_health_scores()

int pe__sum_node_health_scores ( const pcmk_node_t node,
int  base_health 
)

Definition at line 96 of file pe_health.c.

◆ pe__target_rc_from_xml()

int pe__target_rc_from_xml ( const xmlNode *  xml_op)

Definition at line 4275 of file unpack.c.

◆ pe__uname_has_tag()

bool pe__uname_has_tag ( pcmk_scheduler_t scheduler,
const char *  node,
const char *  tag 
)

Definition at line 101 of file tags.c.

◆ pe__unames_with_tag()

GList* pe__unames_with_tag ( pcmk_scheduler_t scheduler,
const char *  tag_name 
)

Definition at line 52 of file tags.c.

◆ pe__unpack_bundle()

gboolean pe__unpack_bundle ( pcmk_resource_t rsc,
pcmk_scheduler_t scheduler 
)

Definition at line 984 of file bundle.c.

◆ pe__unpack_dataset_nvpairs()

void pe__unpack_dataset_nvpairs ( const xmlNode *  xml_obj,
const char *  set_name,
const pe_rule_eval_data_t rule_data,
GHashTable *  hash,
const char *  always_first,
gboolean  overwrite,
pcmk_scheduler_t scheduler 
)

Definition at line 707 of file utils.c.

◆ pe__update_recheck_time()

void pe__update_recheck_time ( time_t  recheck,
pcmk_scheduler_t scheduler,
const char *  reason 
)

Definition at line 682 of file utils.c.

◆ pe_action_set_reason()

void pe_action_set_reason ( pcmk_action_t action,
const char *  reason,
bool  overwrite 
)

Definition at line 1639 of file pe_actions.c.

◆ pe_base_name_end()

const char* pe_base_name_end ( const char *  id)

Definition at line 1825 of file unpack.c.

◆ pe_can_fence()

bool pe_can_fence ( const pcmk_scheduler_t scheduler,
const pcmk_node_t node 
)

Definition at line 36 of file utils.c.

◆ pe_create_node()

pcmk_node_t* pe_create_node ( const char *  id,
const char *  uname,
const char *  type,
const char *  score,
pcmk_scheduler_t scheduler 
)

Definition at line 440 of file unpack.c.

◆ pe_fence_node()

void pe_fence_node ( pcmk_scheduler_t scheduler,
pcmk_node_t node,
const char *  reason,
bool  priority_delay 
)

Schedule a fence action for a node.

Parameters
[in,out]schedulerScheduler data
[in,out]nodeNode to fence
[in]reasonText description of why fencing is needed
[in]priority_delayWhether to consider priority-fencing-delay

Definition at line 110 of file unpack.c.

◆ pe_fence_op()

pcmk_action_t* pe_fence_op ( pcmk_node_t node,
const char *  op,
bool  optional,
const char *  reason,
bool  priority_delay,
pcmk_scheduler_t scheduler 
)

Definition at line 1265 of file pe_actions.c.

◆ pe_free_action()

void pe_free_action ( pcmk_action_t action)

Definition at line 1382 of file pe_actions.c.

◆ pe_get_configured_timeout()

int pe_get_configured_timeout ( pcmk_resource_t rsc,
const char *  action,
pcmk_scheduler_t scheduler 
)

Definition at line 1404 of file pe_actions.c.

◆ pe_get_failcount()

int pe_get_failcount ( const pcmk_node_t node,
pcmk_resource_t rsc,
time_t *  last_failure,
uint32_t  flags,
const xmlNode *  xml_op 
)

Definition at line 360 of file failcounts.c.

◆ pe_metadata()

void pe_metadata ( pcmk__output_t out)

Definition at line 295 of file common.c.

◆ pe_node_attribute_raw()

const char* pe_node_attribute_raw ( const pcmk_node_t node,
const char *  name 
)

Definition at line 621 of file common.c.

◆ print_rscs_brief()

void print_rscs_brief ( GList *  rsc_list,
const char *  pre_text,
long  options,
void *  print_data,
gboolean  print_all 
)
Deprecated:
This function will be removed in a future release

Definition at line 1253 of file native.c.

◆ resource_location()

void resource_location ( pcmk_resource_t rsc,
const pcmk_node_t node,
int  score,
const char *  tag,
pcmk_scheduler_t scheduler 
)

Definition at line 360 of file utils.c.

◆ rsc_action_digest_cmp()

op_digest_cache_t* rsc_action_digest_cmp ( pcmk_resource_t rsc,
const xmlNode *  xml_op,
pcmk_node_t node,
pcmk_scheduler_t scheduler 
)

Definition at line 389 of file pe_digest.c.

◆ sort_op_by_callid()

gint sort_op_by_callid ( gconstpointer  a,
gconstpointer  b 
)

Definition at line 1815 of file pe_actions.c.

◆ ticket_new()

pcmk_ticket_t* ticket_new ( const char *  ticket_id,
pcmk_scheduler_t scheduler 
)

Definition at line 510 of file utils.c.

◆ trigger_unfencing()

void trigger_unfencing ( pcmk_resource_t rsc,
pcmk_node_t node,
const char *  reason,
pcmk_action_t dependency,
pcmk_scheduler_t scheduler 
)

Definition at line 581 of file utils.c.

◆ verify_pe_options()

void verify_pe_options ( GHashTable *  options)

Definition at line 308 of file common.c.