pacemaker  2.1.6-802a72226b
Scalable High-Availability cluster resource manager
Data Structures | Macros | Typedefs | Enumerations | Functions | Variables
internal.h File Reference
#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 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
 

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(working_set, flags_to_set)
 
#define pe__clear_working_set_flags(working_set, 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_weights(level, rsc, text, nodes, data_set)
 
#define delete_key(rsc)   pcmk__op_key(rsc->id, CRMD_ACTION_DELETE, 0)
 
#define delete_action(rsc, node, optional)
 
#define stopped_key(rsc)   pcmk__op_key(rsc->id, CRMD_ACTION_STOPPED, 0)
 
#define stopped_action(rsc, node, optional)
 
#define stop_key(rsc)   pcmk__op_key(rsc->id, CRMD_ACTION_STOP, 0)
 
#define stop_action(rsc, node, optional)
 
#define reload_key(rsc)   pcmk__op_key(rsc->id, CRMD_ACTION_RELOAD_AGENT, 0)
 
#define start_key(rsc)   pcmk__op_key(rsc->id, CRMD_ACTION_START, 0)
 
#define start_action(rsc, node, optional)
 
#define started_key(rsc)   pcmk__op_key(rsc->id, CRMD_ACTION_STARTED, 0)
 
#define started_action(rsc, node, optional)
 
#define promote_key(rsc)   pcmk__op_key(rsc->id, CRMD_ACTION_PROMOTE, 0)
 
#define promote_action(rsc, node, optional)
 
#define promoted_key(rsc)   pcmk__op_key(rsc->id, CRMD_ACTION_PROMOTED, 0)
 
#define promoted_action(rsc, node, optional)
 
#define demote_key(rsc)   pcmk__op_key(rsc->id, CRMD_ACTION_DEMOTE, 0)
 
#define demote_action(rsc, node, optional)
 
#define demoted_key(rsc)   pcmk__op_key(rsc->id, CRMD_ACTION_DEMOTED, 0)
 
#define demoted_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
 

Enumerations

enum  pe__clone_flags { pe__clone_ordered = (1 << 0), pe__clone_promotion_added = (1 << 1), pe__clone_promotion_constrained = (1 << 2) }
 
enum  pe__group_flags { pe__group_ordered = (1 << 0), pe__group_colocated = (1 << 1) }
 
enum  pe_warn_once_e {
  pe_wo_blind = (1 << 0), pe_wo_restart_type = (1 << 1), pe_wo_role_after = (1 << 2), pe_wo_poweroff = (1 << 3),
  pe_wo_require_all = (1 << 4), pe_wo_order_score = (1 << 5), pe_wo_neg_threshold = (1 << 6), pe_wo_remove_after = (1 << 7),
  pe_wo_ping_node = (1 << 8), pe_wo_order_inst = (1 << 9), pe_wo_coloc_inst = (1 << 10), pe_wo_group_order = (1 << 11),
  pe_wo_group_coloc = (1 << 12), pe_wo_upstart = (1 << 13), pe_wo_nagios = (1 << 14)
}
 
enum  pe_fc_flags_e { pe_fc_default = (1 << 0), pe_fc_effective = (1 << 1), pe_fc_fillers = (1 << 2) }
 
enum  rsc_digest_cmp_val { RSC_DIGEST_MATCH = 0, RSC_DIGEST_RESTART, RSC_DIGEST_ALL, RSC_DIGEST_UNKNOWN }
 

Functions

const char * pe__resource_description (const pe_resource_t *rsc, uint32_t show_opts)
 
bool pe__clone_is_ordered (const pe_resource_t *clone)
 
int pe__set_clone_flag (pe_resource_t *clone, enum pe__clone_flags flag)
 
bool pe__group_flag_is_set (const pe_resource_t *group, uint32_t flags)
 
pe_resource_tpe__last_group_member (const pe_resource_t *group)
 
const pe_resource_tpe__const_top_resource (const pe_resource_t *rsc, bool include_bundle)
 
int pe__clone_max (const pe_resource_t *clone)
 
int pe__clone_node_max (const pe_resource_t *clone)
 
int pe__clone_promoted_max (const pe_resource_t *clone)
 
int pe__clone_promoted_node_max (const pe_resource_t *clone)
 
void pe__create_clone_notifications (pe_resource_t *clone)
 
void pe__free_clone_notification_data (pe_resource_t *clone)
 
void pe__create_clone_notif_pseudo_ops (pe_resource_t *clone, pe_action_t *start, pe_action_t *started, pe_action_t *stop, pe_action_t *stopped)
 
pe_action_tpe__new_rsc_pseudo_action (pe_resource_t *rsc, const char *task, bool optional, bool runnable)
 
void pe__create_promotable_pseudo_ops (pe_resource_t *clone, bool any_promoting, bool any_demoting)
 
bool pe_can_fence (const pe_working_set_t *data_set, const pe_node_t *node)
 
void add_hash_param (GHashTable *hash, const char *name, const char *value)
 
char * native_parameter (pe_resource_t *rsc, pe_node_t *node, gboolean create, const char *name, pe_working_set_t *data_set)
 
pe_node_tnative_location (const pe_resource_t *rsc, GList **list, int current)
 
void pe_metadata (pcmk__output_t *out)
 
void verify_pe_options (GHashTable *options)
 
void native_add_running (pe_resource_t *rsc, pe_node_t *node, pe_working_set_t *data_set, gboolean failed)
 
gboolean native_unpack (pe_resource_t *rsc, pe_working_set_t *data_set)
 
gboolean group_unpack (pe_resource_t *rsc, pe_working_set_t *data_set)
 
gboolean clone_unpack (pe_resource_t *rsc, pe_working_set_t *data_set)
 
gboolean pe__unpack_bundle (pe_resource_t *rsc, pe_working_set_t *data_set)
 
pe_resource_tnative_find_rsc (pe_resource_t *rsc, const char *id, const pe_node_t *node, int flags)
 
gboolean native_active (pe_resource_t *rsc, gboolean all)
 
gboolean group_active (pe_resource_t *rsc, gboolean all)
 
gboolean clone_active (pe_resource_t *rsc, gboolean all)
 
gboolean pe__bundle_active (pe_resource_t *rsc, gboolean all)
 
void native_print (pe_resource_t *rsc, const char *pre_text, long options, void *print_data)
 
void group_print (pe_resource_t *rsc, const char *pre_text, long options, void *print_data)
 
void clone_print (pe_resource_t *rsc, const char *pre_text, long options, void *print_data)
 
void pe__print_bundle (pe_resource_t *rsc, const char *pre_text, long options, void *print_data)
 
gchar * pcmk__native_output_string (const pe_resource_t *rsc, const char *name, const pe_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 (pe_node_t *node, bool print_detail)
 
void pe__order_notifs_after_fencing (const pe_action_t *action, pe_resource_t *rsc, pe_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 (pe_resource_t *rsc)
 
void group_free (pe_resource_t *rsc)
 
void clone_free (pe_resource_t *rsc)
 
void pe__free_bundle (pe_resource_t *rsc)
 
enum rsc_role_e native_resource_state (const pe_resource_t *rsc, gboolean current)
 
enum rsc_role_e group_resource_state (const pe_resource_t *rsc, gboolean current)
 
enum rsc_role_e clone_resource_state (const pe_resource_t *rsc, gboolean current)
 
enum rsc_role_e pe__bundle_resource_state (const pe_resource_t *rsc, gboolean current)
 
void pe__count_common (pe_resource_t *rsc)
 
void pe__count_bundle (pe_resource_t *rsc)
 
void common_free (pe_resource_t *rsc)
 
pe_node_tpe__copy_node (const pe_node_t *this_node)
 
time_t get_effective_time (pe_working_set_t *data_set)
 
int pe_get_failcount (const pe_node_t *node, pe_resource_t *rsc, time_t *last_failure, uint32_t flags, const xmlNode *xml_op)
 
pe_action_tpe__clear_failcount (pe_resource_t *rsc, const pe_node_t *node, const char *reason, pe_working_set_t *data_set)
 Schedule a controller operation to clear a fail count. More...
 
bool pe__count_active_node (const pe_resource_t *rsc, pe_node_t *node, pe_node_t **active, unsigned int *count_all, unsigned int *count_clean)
 
pe_node_tpe__find_active_requires (const pe_resource_t *rsc, unsigned int *count)
 
void node_list_exclude (GHashTable *list, GList *list2, gboolean merge_scores)
 
GHashTable * pe__node_list2table (const GList *list)
 
pe_action_tget_pseudo_op (const char *name, pe_working_set_t *data_set)
 
gboolean order_actions (pe_action_t *lh_action, pe_action_t *rh_action, enum pe_ordering order)
 
void pe__show_node_weights_as (const char *file, const char *function, int line, bool to_log, const pe_resource_t *rsc, const char *comment, GHashTable *nodes, pe_working_set_t *data_set)
 
xmlNode * find_rsc_op_entry (const pe_resource_t *rsc, const char *key)
 
pe_action_tcustom_action (pe_resource_t *rsc, char *key, const char *task, const pe_node_t *on_node, gboolean optional, gboolean foo, pe_working_set_t *data_set)
 Create or update an action object. More...
 
int pe_get_configured_timeout (pe_resource_t *rsc, const char *action, pe_working_set_t *data_set)
 
pe_action_tfind_first_action (const GList *input, const char *uuid, const char *task, const pe_node_t *on_node)
 
enum action_tasks get_complex_task (const pe_resource_t *rsc, const char *name)
 
GList * find_actions (GList *input, const char *key, const pe_node_t *on_node)
 
GList * find_actions_exact (GList *input, const char *key, const pe_node_t *on_node)
 
GList * pe__resource_actions (const pe_resource_t *rsc, const pe_node_t *node, const char *task, bool require_node)
 Find all actions of given type for a resource. More...
 
void pe_free_action (pe_action_t *action)
 
void resource_location (pe_resource_t *rsc, const pe_node_t *node, int score, const char *tag, pe_working_set_t *data_set)
 
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 pe_resource_t *rsc, enum rsc_role_e *role)
 
void pe__set_next_role (pe_resource_t *rsc, enum rsc_role_e role, const char *why)
 
pe_resource_tfind_clone_instance (const pe_resource_t *rsc, const char *sub_id)
 
void destroy_ticket (gpointer data)
 
pe_ticket_tticket_new (const char *ticket_id, pe_working_set_t *data_set)
 
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 pe_resource_t *rsc, long long flag, bool any)
 
op_digest_cache_tpe__calculate_digests (pe_resource_t *rsc, const char *task, guint *interval_ms, const pe_node_t *node, const xmlNode *xml_op, GHashTable *overrides, bool calc_secure, pe_working_set_t *data_set)
 
void pe__free_digests (gpointer ptr)
 
op_digest_cache_trsc_action_digest_cmp (pe_resource_t *rsc, const xmlNode *xml_op, pe_node_t *node, pe_working_set_t *data_set)
 
pe_action_tpe_fence_op (pe_node_t *node, const char *op, bool optional, const char *reason, bool priority_delay, pe_working_set_t *data_set)
 
void trigger_unfencing (pe_resource_t *rsc, pe_node_t *node, const char *reason, pe_action_t *dependency, pe_working_set_t *data_set)
 
char * pe__action2reason (const pe_action_t *action, enum pe_action_flags flag)
 
void pe_action_set_reason (pe_action_t *action, const char *reason, bool overwrite)
 
void pe__add_action_expected_result (pe_action_t *action, int expected_result)
 
void pe__set_resource_flags_recursive (pe_resource_t *rsc, uint64_t flags)
 
void pe__clear_resource_flags_recursive (pe_resource_t *rsc, uint64_t flags)
 
void pe__clear_resource_flags_on_all (pe_working_set_t *data_set, 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 (pe_working_set_t *data_set, pe_node_t *node, const char *reason, bool priority_delay)
 Schedule a fence action for a node. More...
 
pe_node_tpe_create_node (const char *id, const char *uname, const char *type, const char *score, pe_working_set_t *data_set)
 
void common_print (pe_resource_t *rsc, const char *pre_text, const char *name, const pe_node_t *node, long options, void *print_data)
 
int pe__common_output_text (pcmk__output_t *out, const pe_resource_t *rsc, const char *name, const pe_node_t *node, unsigned int options)
 
int pe__common_output_html (pcmk__output_t *out, const pe_resource_t *rsc, const char *name, const pe_node_t *node, unsigned int options)
 
GList * pe__bundle_containers (const pe_resource_t *bundle)
 
int pe__bundle_max (const pe_resource_t *rsc)
 
int pe__bundle_max_per_node (const pe_resource_t *rsc)
 
pe_resource_tpe__find_bundle_replica (const pe_resource_t *bundle, const pe_node_t *node)
 
bool pe__bundle_needs_remote_name (pe_resource_t *rsc)
 
const char * pe__add_bundle_remote_name (pe_resource_t *rsc, pe_working_set_t *data_set, xmlNode *xml, const char *field)
 
const char * pe_node_attribute_calculated (const pe_node_t *node, const char *name, const pe_resource_t *rsc)
 
const char * pe_node_attribute_raw (const pe_node_t *node, const char *name)
 
bool pe__is_universal_clone (const pe_resource_t *rsc, const pe_working_set_t *data_set)
 
void pe__add_param_check (const xmlNode *rsc_op, pe_resource_t *rsc, pe_node_t *node, enum pe_check_parameters, pe_working_set_t *data_set)
 
void pe__foreach_param_check (pe_working_set_t *data_set, void(*cb)(pe_resource_t *, pe_node_t *, const xmlNode *, enum pe_check_parameters))
 
void pe__free_param_checks (pe_working_set_t *data_set)
 
bool pe__shutdown_requested (const pe_node_t *node)
 
void pe__update_recheck_time (time_t recheck, pe_working_set_t *data_set)
 
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, pe_working_set_t *data_set)
 
bool pe__resource_is_disabled (const pe_resource_t *rsc)
 
pe_action_tpe__clear_resource_history (pe_resource_t *rsc, const pe_node_t *node, pe_working_set_t *data_set)
 
GList * pe__rscs_with_tag (pe_working_set_t *data_set, const char *tag_name)
 
GList * pe__unames_with_tag (pe_working_set_t *data_set, const char *tag_name)
 
bool pe__rsc_has_tag (pe_working_set_t *data_set, const char *rsc, const char *tag)
 
bool pe__uname_has_tag (pe_working_set_t *data_set, const char *node, const char *tag)
 
bool pe__rsc_running_on_only (const pe_resource_t *rsc, const pe_node_t *node)
 
bool pe__rsc_running_on_any (pe_resource_t *rsc, GList *node_list)
 
GList * pe__filter_rsc_list (GList *rscs, GList *filter)
 
GList * pe__build_node_name_list (pe_working_set_t *data_set, const char *s)
 
GList * pe__build_rsc_list (pe_working_set_t *data_set, const char *s)
 
bool pcmk__rsc_filtered_by_node (pe_resource_t *rsc, GList *only_node)
 
gboolean pe__bundle_is_filtered (const pe_resource_t *rsc, GList *only_rsc, gboolean check_parent)
 
gboolean pe__clone_is_filtered (const pe_resource_t *rsc, GList *only_rsc, gboolean check_parent)
 
gboolean pe__group_is_filtered (const pe_resource_t *rsc, GList *only_rsc, gboolean check_parent)
 
gboolean pe__native_is_filtered (const pe_resource_t *rsc, GList *only_rsc, gboolean check_parent)
 
xmlNode * pe__failed_probe_for_rsc (const pe_resource_t *rsc, const char *name)
 
const char * pe__clone_child_id (const pe_resource_t *rsc)
 
int pe__sum_node_health_scores (const pe_node_t *node, int base_health)
 
int pe__node_health (pe_node_t *node)
 

Variables

uint32_t pe_wo
 

Macro Definition Documentation

◆ delete_action

#define delete_action (   rsc,
  node,
  optional 
)
Value:
rsc, delete_key(rsc), CRMD_ACTION_DELETE, node, \
optional, TRUE, rsc->cluster);
#define delete_key(rsc)
Definition: internal.h:395
pe_action_t * custom_action(pe_resource_t *rsc, char *key, const char *task, const pe_node_t *on_node, gboolean optional, gboolean foo, pe_working_set_t *data_set)
Create or update an action object.
Definition: pe_actions.c:942
#define CRMD_ACTION_DELETE
Definition: crm.h:166

Definition at line 396 of file internal.h.

◆ delete_key

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

Definition at line 395 of file internal.h.

◆ demote_action

#define demote_action (   rsc,
  node,
  optional 
)
Value:
rsc, demote_key(rsc), CRMD_ACTION_DEMOTE, node, \
optional, TRUE, rsc->cluster)
#define demote_key(rsc)
Definition: internal.h:431
#define CRMD_ACTION_DEMOTE
Definition: crm.h:182
pe_action_t * custom_action(pe_resource_t *rsc, char *key, const char *task, const pe_node_t *on_node, gboolean optional, gboolean foo, pe_working_set_t *data_set)
Create or update an action object.
Definition: pe_actions.c:942

Definition at line 432 of file internal.h.

◆ demote_key

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

Definition at line 431 of file internal.h.

◆ demoted_action

#define demoted_action (   rsc,
  node,
  optional 
)
Value:
rsc, demoted_key(rsc), CRMD_ACTION_DEMOTED, node, \
optional, TRUE, rsc->cluster)
#define demoted_key(rsc)
Definition: internal.h:436
#define CRMD_ACTION_DEMOTED
Definition: crm.h:183
pe_action_t * custom_action(pe_resource_t *rsc, char *key, const char *task, const pe_node_t *on_node, gboolean optional, gboolean foo, pe_working_set_t *data_set)
Create or update an action object.
Definition: pe_actions.c:942

Definition at line 437 of file internal.h.

◆ demoted_key

#define demoted_key (   rsc)    pcmk__op_key(rsc->id, CRMD_ACTION_DEMOTED, 0)

Definition at line 436 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:37
const char * action
Definition: pcmk_fence.c:30
uint64_t flags
Definition: remote.c:215

Definition at line 98 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:37
const char * action
Definition: pcmk_fence.c:30
uint64_t flags
Definition: remote.c:215

Definition at line 132 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:37

Definition at line 148 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:37

Definition at line 114 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:37
uint64_t flags
Definition: remote.c:215

Definition at line 83 of file internal.h.

◆ pe__clear_working_set_flags

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

Definition at line 71 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:37
const char * action
Definition: pcmk_fence.c:30
uint64_t flags
Definition: remote.c:215

Definition at line 89 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:37
const char * action
Definition: pcmk_fence.c:30
uint64_t flags
Definition: remote.c:215

Definition at line 123 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:37

Definition at line 141 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:37

Definition at line 107 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:37
uint64_t flags
Definition: remote.c:215

Definition at line 77 of file internal.h.

◆ pe__set_working_set_flags

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

Definition at line 65 of file internal.h.

◆ pe__show_node_weights

#define pe__show_node_weights (   level,
  rsc,
  text,
  nodes,
  data_set 
)
Value:
pe__show_node_weights_as(__FILE__, __func__, __LINE__, \
(level), (rsc), (text), (nodes), (data_set))
pe_working_set_t * data_set
void pe__show_node_weights_as(const char *file, const char *function, int line, bool to_log, const pe_resource_t *rsc, const char *comment, GHashTable *nodes, pe_working_set_t *data_set)
Definition: utils.c:289

Definition at line 385 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 52 of file internal.h.

◆ pe_proc_err

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

Definition at line 62 of file internal.h.

◆ pe_proc_warn

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

Definition at line 63 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 49 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 48 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 50 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 57 of file internal.h.

◆ pe_warn_once

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

Definition at line 177 of file internal.h.

◆ promote_action

#define promote_action (   rsc,
  node,
  optional 
)
Value:
rsc, promote_key(rsc), CRMD_ACTION_PROMOTE, node, \
optional, TRUE, rsc->cluster)
#define CRMD_ACTION_PROMOTE
Definition: crm.h:180
#define promote_key(rsc)
Definition: internal.h:421
pe_action_t * custom_action(pe_resource_t *rsc, char *key, const char *task, const pe_node_t *on_node, gboolean optional, gboolean foo, pe_working_set_t *data_set)
Create or update an action object.
Definition: pe_actions.c:942

Definition at line 422 of file internal.h.

◆ promote_key

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

Definition at line 421 of file internal.h.

◆ promoted_action

#define promoted_action (   rsc,
  node,
  optional 
)
Value:
rsc, promoted_key(rsc), CRMD_ACTION_PROMOTED, node, \
optional, TRUE, rsc->cluster)
#define CRMD_ACTION_PROMOTED
Definition: crm.h:181
#define promoted_key(rsc)
Definition: internal.h:426
pe_action_t * custom_action(pe_resource_t *rsc, char *key, const char *task, const pe_node_t *on_node, gboolean optional, gboolean foo, pe_working_set_t *data_set)
Create or update an action object.
Definition: pe_actions.c:942

Definition at line 427 of file internal.h.

◆ promoted_key

#define promoted_key (   rsc)    pcmk__op_key(rsc->id, CRMD_ACTION_PROMOTED, 0)

Definition at line 426 of file internal.h.

◆ reload_key

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

Definition at line 410 of file internal.h.

◆ start_action

#define start_action (   rsc,
  node,
  optional 
)
Value:
rsc, start_key(rsc), CRMD_ACTION_START, node, \
optional, TRUE, rsc->cluster)
#define CRMD_ACTION_START
Definition: crm.h:174
#define start_key(rsc)
Definition: internal.h:411
pe_action_t * custom_action(pe_resource_t *rsc, char *key, const char *task, const pe_node_t *on_node, gboolean optional, gboolean foo, pe_working_set_t *data_set)
Create or update an action object.
Definition: pe_actions.c:942

Definition at line 412 of file internal.h.

◆ start_key

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

Definition at line 411 of file internal.h.

◆ started_action

#define started_action (   rsc,
  node,
  optional 
)
Value:
rsc, started_key(rsc), CRMD_ACTION_STARTED, node, \
optional, TRUE, rsc->cluster)
#define started_key(rsc)
Definition: internal.h:416
pe_action_t * custom_action(pe_resource_t *rsc, char *key, const char *task, const pe_node_t *on_node, gboolean optional, gboolean foo, pe_working_set_t *data_set)
Create or update an action object.
Definition: pe_actions.c:942
#define CRMD_ACTION_STARTED
Definition: crm.h:175

Definition at line 417 of file internal.h.

◆ started_key

#define started_key (   rsc)    pcmk__op_key(rsc->id, CRMD_ACTION_STARTED, 0)

Definition at line 416 of file internal.h.

◆ stop_action

#define stop_action (   rsc,
  node,
  optional 
)
Value:
rsc, stop_key(rsc), CRMD_ACTION_STOP, node, \
optional, TRUE, rsc->cluster);
#define CRMD_ACTION_STOP
Definition: crm.h:177
#define stop_key(rsc)
Definition: internal.h:405
pe_action_t * custom_action(pe_resource_t *rsc, char *key, const char *task, const pe_node_t *on_node, gboolean optional, gboolean foo, pe_working_set_t *data_set)
Create or update an action object.
Definition: pe_actions.c:942

Definition at line 406 of file internal.h.

◆ stop_key

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

Definition at line 405 of file internal.h.

◆ stopped_action

#define stopped_action (   rsc,
  node,
  optional 
)
Value:
rsc, stopped_key(rsc), CRMD_ACTION_STOPPED, node, \
optional, TRUE, rsc->cluster);
#define stopped_key(rsc)
Definition: internal.h:400
#define CRMD_ACTION_STOPPED
Definition: crm.h:178
pe_action_t * custom_action(pe_resource_t *rsc, char *key, const char *task, const pe_node_t *on_node, gboolean optional, gboolean foo, pe_working_set_t *data_set)
Create or update an action object.
Definition: pe_actions.c:942

Definition at line 401 of file internal.h.

◆ stopped_key

#define stopped_key (   rsc)    pcmk__op_key(rsc->id, CRMD_ACTION_STOPPED, 0)

Definition at line 400 of file internal.h.

Typedef Documentation

◆ op_digest_cache_t

◆ pe__location_t

◆ pe__ordering_t

Enumeration Type Documentation

◆ pe__clone_flags

Enumerator
pe__clone_ordered 
pe__clone_promotion_added 
pe__clone_promotion_constrained 

Definition at line 24 of file internal.h.

◆ pe__group_flags

Enumerator
pe__group_ordered 
pe__group_colocated 

Definition at line 39 of file internal.h.

◆ pe_fc_flags_e

Enumerator
pe_fc_default 
pe_fc_effective 
pe_fc_fillers 

Definition at line 333 of file internal.h.

◆ pe_warn_once_e

Enumerator
pe_wo_blind 
pe_wo_restart_type 
pe_wo_role_after 
pe_wo_poweroff 
pe_wo_require_all 
pe_wo_order_score 
pe_wo_neg_threshold 
pe_wo_remove_after 
pe_wo_ping_node 
pe_wo_order_inst 
pe_wo_coloc_inst 
pe_wo_group_order 
pe_wo_group_coloc 
pe_wo_upstart 
pe_wo_nagios 

Definition at line 157 of file internal.h.

◆ rsc_digest_cmp_val

Enumerator
RSC_DIGEST_MATCH 

Digests are the same

RSC_DIGEST_RESTART 

Params that require a restart changed

RSC_DIGEST_ALL 

Some parameter changed.

RSC_DIGEST_UNKNOWN 

rsc op didn't have a digest associated with it, so it is unknown if parameters changed or not.

Definition at line 495 of file internal.h.

Function Documentation

◆ add_hash_param()

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

Definition at line 500 of file common.c.

◆ add_tag_ref()

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

Definition at line 651 of file utils.c.

◆ clone_active()

gboolean clone_active ( pe_resource_t rsc,
gboolean  all 
)

Definition at line 442 of file clone.c.

◆ clone_free()

void clone_free ( pe_resource_t rsc)

Definition at line 1169 of file clone.c.

◆ clone_print()

void clone_print ( pe_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 590 of file clone.c.

◆ clone_resource_state()

enum rsc_role_e clone_resource_state ( const pe_resource_t rsc,
gboolean  current 
)

Definition at line 1203 of file clone.c.

◆ clone_strip()

char* clone_strip ( const char *  last_rsc_id)

Definition at line 1658 of file unpack.c.

◆ clone_unpack()

gboolean clone_unpack ( pe_resource_t rsc,
pe_working_set_t data_set 
)

Definition at line 295 of file clone.c.

◆ clone_zero()

char* clone_zero ( const char *  last_rsc_id)

Definition at line 1680 of file unpack.c.

◆ common_free()

void common_free ( pe_resource_t rsc)

Definition at line 964 of file complex.c.

◆ common_print()

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

Definition at line 791 of file native.c.

◆ custom_action()

pe_action_t* custom_action ( pe_resource_t rsc,
char *  key,
const char *  task,
const pe_node_t on_node,
gboolean  optional,
gboolean  save_action,
pe_working_set_t data_set 
)

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]save_actionWhether action should be recorded in transition graph
[in,out]data_setCluster working set
Returns
Action object corresponding to arguments
Note
This function takes ownership of (and might free) key. If save_action is true, data_set will own the returned action, otherwise it is the caller's responsibility to free the return value with pe_free_action().

Definition at line 942 of file pe_actions.c.

◆ destroy_ticket()

void destroy_ticket ( gpointer  data)

Definition at line 535 of file utils.c.

◆ find_actions()

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

Definition at line 1327 of file pe_actions.c.

◆ find_actions_exact()

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

Definition at line 1361 of file pe_actions.c.

◆ find_clone_instance()

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

Definition at line 226 of file clone.c.

◆ find_first_action()

pe_action_t* find_first_action ( const GList *  input,
const char *  uuid,
const char *  task,
const pe_node_t on_node 
)

Definition at line 1298 of file pe_actions.c.

◆ find_rsc_op_entry()

xmlNode* find_rsc_op_entry ( const pe_resource_t rsc,
const char *  key 
)

Definition at line 145 of file pe_actions.c.

◆ get_complex_task()

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

Definition at line 1265 of file pe_actions.c.

◆ get_effective_time()

time_t get_effective_time ( pe_working_set_t data_set)

Definition at line 434 of file utils.c.

◆ get_pseudo_op()

pe_action_t* get_pseudo_op ( const char *  name,
pe_working_set_t data_set 
)

Definition at line 979 of file pe_actions.c.

◆ get_target_role()

gboolean get_target_role ( const pe_resource_t rsc,
enum rsc_role_e role 
)

Definition at line 449 of file utils.c.

◆ group_active()

gboolean group_active ( pe_resource_t rsc,
gboolean  all 
)

Definition at line 235 of file group.c.

◆ group_free()

void group_free ( pe_resource_t rsc)

Definition at line 453 of file group.c.

◆ group_print()

void group_print ( pe_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 289 of file group.c.

◆ group_resource_state()

enum rsc_role_e group_resource_state ( const pe_resource_t rsc,
gboolean  current 
)

Definition at line 474 of file group.c.

◆ group_unpack()

gboolean group_unpack ( pe_resource_t rsc,
pe_working_set_t data_set 
)

Definition at line 180 of file group.c.

◆ is_set_recursive()

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

Definition at line 555 of file clone.c.

◆ native_active()

gboolean native_active ( pe_resource_t rsc,
gboolean  all 
)

Definition at line 341 of file native.c.

◆ native_add_running()

void native_add_running ( pe_resource_t rsc,
pe_node_t node,
pe_working_set_t data_set,
gboolean  failed 
)

Definition at line 89 of file native.c.

◆ native_find_rsc()

pe_resource_t* native_find_rsc ( pe_resource_t rsc,
const char *  id,
const pe_node_t node,
int  flags 
)

Definition at line 265 of file native.c.

◆ native_free()

void native_free ( pe_resource_t rsc)

Definition at line 1063 of file native.c.

◆ native_location()

pe_node_t* native_location ( const pe_resource_t rsc,
GList **  list,
int  current 
)

Definition at line 1093 of file native.c.

◆ native_parameter()

char* native_parameter ( pe_resource_t rsc,
pe_node_t node,
gboolean  create,
const char *  name,
pe_working_set_t data_set 
)

Definition at line 319 of file native.c.

◆ native_print()

void native_print ( pe_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 911 of file native.c.

◆ native_resource_state()

enum rsc_role_e native_resource_state ( const pe_resource_t rsc,
gboolean  current 
)

Definition at line 1070 of file native.c.

◆ native_unpack()

gboolean native_unpack ( pe_resource_t rsc,
pe_working_set_t data_set 
)

Definition at line 199 of file native.c.

◆ node_list_exclude()

void node_list_exclude ( GHashTable *  list,
GList *  list2,
gboolean  merge_scores 
)

Definition at line 108 of file utils.c.

◆ order_actions()

gboolean order_actions ( pe_action_t lh_action,
pe_action_t rh_action,
enum pe_ordering  order 
)

Definition at line 488 of file utils.c.

◆ pcmk__native_output_string()

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

Definition at line 545 of file native.c.

◆ pcmk__rsc_filtered_by_node()

bool pcmk__rsc_filtered_by_node ( pe_resource_t rsc,
GList *  only_node 
)

Definition at line 805 of file utils.c.

◆ pe__action2reason()

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

Definition at line 1426 of file pe_actions.c.

◆ pe__add_action_expected_result()

void pe__add_action_expected_result ( pe_action_t action,
int  expected_result 
)

Definition at line 1676 of file pe_actions.c.

◆ pe__add_bundle_remote_name()

const char* pe__add_bundle_remote_name ( pe_resource_t rsc,
pe_working_set_t data_set,
xmlNode *  xml,
const char *  field 
)

Definition at line 743 of file bundle.c.

◆ pe__add_param_check()

void pe__add_param_check ( const xmlNode *  rsc_op,
pe_resource_t rsc,
pe_node_t node,
enum  pe_check_parameters,
pe_working_set_t data_set 
)

Definition at line 222 of file remote.c.

◆ pe__build_node_name_list()

GList* pe__build_node_name_list ( pe_working_set_t data_set,
const char *  s 
)

Definition at line 831 of file utils.c.

◆ pe__build_rsc_list()

GList* pe__build_rsc_list ( pe_working_set_t data_set,
const char *  s 
)

Definition at line 863 of file utils.c.

◆ pe__bundle_active()

gboolean pe__bundle_active ( pe_resource_t rsc,
gboolean  all 
)

Definition at line 1127 of file bundle.c.

◆ pe__bundle_containers()

GList* pe__bundle_containers ( const pe_resource_t bundle)

Definition at line 1916 of file bundle.c.

◆ pe__bundle_html()

int pe__bundle_html ( pcmk__output_t out,
va_list  args 
)

Definition at line 1410 of file bundle.c.

◆ pe__bundle_is_filtered()

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

Definition at line 1872 of file bundle.c.

◆ pe__bundle_max()

int pe__bundle_max ( const pe_resource_t rsc)

Definition at line 35 of file bundle.c.

◆ pe__bundle_max_per_node()

int pe__bundle_max_per_node ( const pe_resource_t rsc)

Definition at line 52 of file bundle.c.

◆ pe__bundle_needs_remote_name()

bool pe__bundle_needs_remote_name ( pe_resource_t rsc)

Definition at line 725 of file bundle.c.

◆ pe__bundle_resource_state()

enum rsc_role_e pe__bundle_resource_state ( const pe_resource_t rsc,
gboolean  current 
)

Definition at line 1821 of file bundle.c.

◆ pe__bundle_text()

int pe__bundle_text ( pcmk__output_t out,
va_list  args 
)

Definition at line 1543 of file bundle.c.

◆ pe__bundle_xml()

int pe__bundle_xml ( pcmk__output_t out,
va_list  args 
)

Definition at line 1259 of file bundle.c.

◆ pe__calculate_digests()

op_digest_cache_t* pe__calculate_digests ( pe_resource_t rsc,
const char *  task,
guint *  interval_ms,
const pe_node_t node,
const xmlNode *  xml_op,
GHashTable *  overrides,
bool  calc_secure,
pe_working_set_t data_set 
)

Definition at line 298 of file pe_digest.c.

◆ pe__clear_failcount()

pe_action_t* pe__clear_failcount ( pe_resource_t rsc,
const pe_node_t node,
const char *  reason,
pe_working_set_t data_set 
)

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]data_setWorking set for cluster
Returns
Scheduled action

Definition at line 388 of file failcounts.c.

◆ pe__clear_resource_flags_on_all()

void pe__clear_resource_flags_on_all ( pe_working_set_t data_set,
uint64_t  flag 
)

Definition at line 598 of file utils.c.

◆ pe__clear_resource_flags_recursive()

void pe__clear_resource_flags_recursive ( pe_resource_t rsc,
uint64_t  flags 
)

Definition at line 589 of file utils.c.

◆ pe__clear_resource_history()

pe_action_t* pe__clear_resource_history ( pe_resource_t rsc,
const pe_node_t node,
pe_working_set_t data_set 
)

Definition at line 1476 of file pe_actions.c.

◆ pe__clone_child_id()

const char* pe__clone_child_id ( const pe_resource_t rsc)

Definition at line 1273 of file clone.c.

◆ pe__clone_default()

int pe__clone_default ( pcmk__output_t out,
va_list  args 
)

Definition at line 884 of file clone.c.

◆ pe__clone_is_filtered()

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

Definition at line 1243 of file clone.c.

◆ pe__clone_is_ordered()

bool pe__clone_is_ordered ( const pe_resource_t clone)

Definition at line 1289 of file clone.c.

◆ pe__clone_max()

int pe__clone_max ( const pe_resource_t clone)

Definition at line 62 of file clone.c.

◆ pe__clone_node_max()

int pe__clone_node_max ( const pe_resource_t clone)

Definition at line 79 of file clone.c.

◆ pe__clone_promoted_max()

int pe__clone_promoted_max ( const pe_resource_t clone)

Definition at line 96 of file clone.c.

◆ pe__clone_promoted_node_max()

int pe__clone_promoted_node_max ( const pe_resource_t clone)

Definition at line 113 of file clone.c.

◆ pe__clone_xml()

int pe__clone_xml ( pcmk__output_t out,
va_list  args 
)

Definition at line 814 of file clone.c.

◆ pe__cmp_node_name()

gint pe__cmp_node_name ( gconstpointer  a,
gconstpointer  b 
)

Definition at line 185 of file utils.c.

◆ pe__common_output_html()

int pe__common_output_html ( pcmk__output_t out,
const pe_resource_t rsc,
const char *  name,
const pe_node_t node,
unsigned int  options 
)

◆ pe__common_output_text()

int pe__common_output_text ( pcmk__output_t out,
const pe_resource_t rsc,
const char *  name,
const pe_node_t node,
unsigned int  options 
)

◆ pe__const_top_resource()

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

Definition at line 947 of file complex.c.

◆ pe__copy_node()

pe_node_t* pe__copy_node ( const pe_node_t this_node)

Definition at line 89 of file utils.c.

◆ pe__count_active_node()

bool pe__count_active_node ( const pe_resource_t rsc,
pe_node_t node,
pe_node_t **  active,
unsigned int *  count_all,
unsigned int *  count_clean 
)

Definition at line 1040 of file complex.c.

◆ pe__count_bundle()

void pe__count_bundle ( pe_resource_t rsc)

Definition at line 1848 of file bundle.c.

◆ pe__count_common()

void pe__count_common ( pe_resource_t rsc)

Definition at line 1138 of file complex.c.

◆ pe__create_clone_notif_pseudo_ops()

void pe__create_clone_notif_pseudo_ops ( pe_resource_t clone,
pe_action_t start,
pe_action_t started,
pe_action_t stop,
pe_action_t stopped 
)

Definition at line 1448 of file clone.c.

◆ pe__create_clone_notifications()

void pe__create_clone_notifications ( pe_resource_t clone)

Definition at line 1399 of file clone.c.

◆ pe__create_promotable_pseudo_ops()

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

Definition at line 1331 of file clone.c.

◆ pe__failed_probe_for_rsc()

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

Definition at line 896 of file utils.c.

◆ pe__filter_rsc_list()

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

Definition at line 811 of file utils.c.

◆ pe__find_active_requires()

pe_node_t* pe__find_active_requires ( const pe_resource_t rsc,
unsigned int *  count 
)

Definition at line 1121 of file complex.c.

◆ pe__find_bundle_replica()

pe_resource_t* pe__find_bundle_replica ( const pe_resource_t bundle,
const pe_node_t node 
)

Definition at line 1175 of file bundle.c.

◆ pe__foreach_param_check()

void pe__foreach_param_check ( pe_working_set_t data_set,
void(*)(pe_resource_t *, pe_node_t *, const xmlNode *, enum pe_check_parameters cb 
)

Definition at line 249 of file remote.c.

◆ pe__free_bundle()

void pe__free_bundle ( pe_resource_t rsc)

Definition at line 1787 of file bundle.c.

◆ pe__free_clone_notification_data()

void pe__free_clone_notification_data ( pe_resource_t clone)

Definition at line 1418 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 ( pe_working_set_t data_set)

Definition at line 264 of file remote.c.

◆ pe__group_default()

int pe__group_default ( pcmk__output_t out,
va_list  args 
)

Definition at line 398 of file group.c.

◆ pe__group_flag_is_set()

bool pe__group_flag_is_set ( const pe_resource_t group,
uint32_t  flags 
)

Definition at line 57 of file group.c.

◆ pe__group_is_filtered()

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

Definition at line 493 of file group.c.

◆ pe__group_xml()

int pe__group_xml ( pcmk__output_t out,
va_list  args 
)

Definition at line 340 of file group.c.

◆ pe__is_newer_op()

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

Definition at line 1497 of file pe_actions.c.

◆ pe__is_universal_clone()

bool pe__is_universal_clone ( const pe_resource_t rsc,
const pe_working_set_t data_set 
)

Definition at line 1229 of file clone.c.

◆ pe__last_group_member()

pe_resource_t* pe__last_group_member ( const pe_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 568 of file pe_output.c.

◆ pe__native_is_filtered()

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

Definition at line 1401 of file native.c.

◆ pe__new_rsc_pseudo_action()

pe_action_t* pe__new_rsc_pseudo_action ( pe_resource_t rsc,
const char *  task,
bool  optional,
bool  runnable 
)

Definition at line 1650 of file pe_actions.c.

◆ pe__node_display_name()

char* pe__node_display_name ( pe_node_t node,
bool  print_detail 
)

Definition at line 515 of file pe_output.c.

◆ pe__node_health()

int pe__node_health ( pe_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_list2table()

GHashTable* pe__node_list2table ( const GList *  list)

Definition at line 156 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 pe_action_t action,
pe_resource_t rsc,
pe_action_t stonith_op 
)

Definition at line 981 of file pe_notif.c.

◆ pe__print_bundle()

void pe__print_bundle ( pe_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 1685 of file bundle.c.

◆ pe__register_messages()

void pe__register_messages ( pcmk__output_t out)

Definition at line 3106 of file pe_output.c.

◆ pe__resource_actions()

GList* pe__resource_actions ( const pe_resource_t rsc,
const pe_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 1400 of file pe_actions.c.

◆ pe__resource_description()

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

Definition at line 19 of file pe_output.c.

◆ pe__resource_html()

int pe__resource_html ( pcmk__output_t out,
va_list  args 
)

Definition at line 1016 of file native.c.

◆ pe__resource_is_disabled()

bool pe__resource_is_disabled ( const pe_resource_t rsc)

Definition at line 755 of file utils.c.

◆ pe__resource_text()

int pe__resource_text ( pcmk__output_t out,
va_list  args 
)

Definition at line 1040 of file native.c.

◆ pe__resource_xml()

int pe__resource_xml ( pcmk__output_t out,
va_list  args 
)

Definition at line 934 of file native.c.

◆ pe__rsc_has_tag()

bool pe__rsc_has_tag ( pe_working_set_t data_set,
const char *  rsc,
const char *  tag 
)

Definition at line 84 of file tags.c.

◆ pe__rsc_running_on_any()

bool pe__rsc_running_on_any ( pe_resource_t rsc,
GList *  node_list 
)

Definition at line 791 of file utils.c.

◆ pe__rsc_running_on_only()

bool pe__rsc_running_on_only ( const pe_resource_t rsc,
const pe_node_t node 
)

Definition at line 784 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 ( pe_working_set_t data_set,
const char *  tag_name 
)

Definition at line 20 of file tags.c.

◆ pe__set_clone_flag()

int pe__set_clone_flag ( pe_resource_t clone,
enum pe__clone_flags  flag 
)

Definition at line 1308 of file clone.c.

◆ pe__set_next_role()

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

Definition at line 1166 of file complex.c.

◆ pe__set_resource_flags_recursive()

void pe__set_resource_flags_recursive ( pe_resource_t rsc,
uint64_t  flags 
)

Definition at line 607 of file utils.c.

◆ pe__show_node_weights_as()

void pe__show_node_weights_as ( const char *  file,
const char *  function,
int  line,
bool  to_log,
const pe_resource_t rsc,
const char *  comment,
GHashTable *  nodes,
pe_working_set_t data_set 
)

Definition at line 289 of file utils.c.

◆ pe__shutdown_requested()

bool pe__shutdown_requested ( const pe_node_t node)

Definition at line 700 of file utils.c.

◆ pe__sum_node_health_scores()

int pe__sum_node_health_scores ( const pe_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 4011 of file unpack.c.

◆ pe__uname_has_tag()

bool pe__uname_has_tag ( pe_working_set_t data_set,
const char *  node,
const char *  tag 
)

Definition at line 99 of file tags.c.

◆ pe__unames_with_tag()

GList* pe__unames_with_tag ( pe_working_set_t data_set,
const char *  tag_name 
)

Definition at line 51 of file tags.c.

◆ pe__unpack_bundle()

gboolean pe__unpack_bundle ( pe_resource_t rsc,
pe_working_set_t data_set 
)

Definition at line 789 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,
pe_working_set_t data_set 
)

Definition at line 737 of file utils.c.

◆ pe__update_recheck_time()

void pe__update_recheck_time ( time_t  recheck,
pe_working_set_t data_set 
)

Definition at line 715 of file utils.c.

◆ pe_action_set_reason()

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

Definition at line 1449 of file pe_actions.c.

◆ pe_base_name_end()

const char* pe_base_name_end ( const char *  id)

Definition at line 1618 of file unpack.c.

◆ pe_can_fence()

bool pe_can_fence ( const pe_working_set_t data_set,
const pe_node_t node 
)

Definition at line 36 of file utils.c.

◆ pe_create_node()

pe_node_t* pe_create_node ( const char *  id,
const char *  uname,
const char *  type,
const char *  score,
pe_working_set_t data_set 
)

Definition at line 399 of file unpack.c.

◆ pe_fence_node()

void pe_fence_node ( pe_working_set_t data_set,
pe_node_t node,
const char *  reason,
bool  priority_delay 
)

Schedule a fence action for a node.

Parameters
[in,out]data_setCurrent working set of cluster
[in,out]nodeNode to fence
[in]reasonText description of why fencing is needed
[in]priority_delayWhether to consider priority-fencing-delay

Definition at line 113 of file unpack.c.

◆ pe_fence_op()

pe_action_t* pe_fence_op ( pe_node_t node,
const char *  op,
bool  optional,
const char *  reason,
bool  priority_delay,
pe_working_set_t data_set 
)

Definition at line 1084 of file pe_actions.c.

◆ pe_free_action()

void pe_free_action ( pe_action_t action)

Definition at line 1196 of file pe_actions.c.

◆ pe_get_configured_timeout()

int pe_get_configured_timeout ( pe_resource_t rsc,
const char *  action,
pe_working_set_t data_set 
)

Definition at line 1218 of file pe_actions.c.

◆ pe_get_failcount()

int pe_get_failcount ( const pe_node_t node,
pe_resource_t rsc,
time_t *  last_failure,
uint32_t  flags,
const xmlNode *  xml_op 
)

Definition at line 275 of file failcounts.c.

◆ pe_metadata()

void pe_metadata ( pcmk__output_t out)

Definition at line 284 of file common.c.

◆ pe_node_attribute_calculated()

const char* pe_node_attribute_calculated ( const pe_node_t node,
const char *  name,
const pe_resource_t rsc 
)

Definition at line 518 of file common.c.

◆ pe_node_attribute_raw()

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

Definition at line 558 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 1229 of file native.c.

◆ resource_location()

void resource_location ( pe_resource_t rsc,
const pe_node_t node,
int  score,
const char *  tag,
pe_working_set_t data_set 
)

Definition at line 398 of file utils.c.

◆ rsc_action_digest_cmp()

op_digest_cache_t* rsc_action_digest_cmp ( pe_resource_t rsc,
const xmlNode *  xml_op,
pe_node_t node,
pe_working_set_t data_set 
)

Definition at line 381 of file pe_digest.c.

◆ sort_op_by_callid()

gint sort_op_by_callid ( gconstpointer  a,
gconstpointer  b 
)

Definition at line 1630 of file pe_actions.c.

◆ ticket_new()

pe_ticket_t* ticket_new ( const char *  ticket_id,
pe_working_set_t data_set 
)

Definition at line 547 of file utils.c.

◆ trigger_unfencing()

void trigger_unfencing ( pe_resource_t rsc,
pe_node_t node,
const char *  reason,
pe_action_t dependency,
pe_working_set_t data_set 
)

Definition at line 616 of file utils.c.

◆ verify_pe_options()

void verify_pe_options ( GHashTable *  options)

Definition at line 297 of file common.c.

Variable Documentation

◆ pe_wo

uint32_t pe_wo

Definition at line 85 of file unpack.c.