pacemaker  2.0.2-debe490
Scalable High-Availability cluster resource manager
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Typedefs | Enumerations | Functions
internal.h File Reference
#include <string.h>
#include <crm/pengine/status.h>
#include <crm/pengine/remote.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  notify_data_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...)   { was_processing_error = TRUE; crm_config_error = TRUE; crm_err(fmt); }
 
#define pe_warn(fmt...)   { was_processing_warning = TRUE; crm_config_warning = TRUE; crm_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_action_bit(action, bit)   action->flags = crm_set_bit(__FUNCTION__, __LINE__, action->uuid, action->flags, bit)
 
#define pe_clear_action_bit(action, bit)   action->flags = crm_clear_bit(__FUNCTION__, __LINE__, action->uuid, action->flags, bit)
 
#define dump_node_scores(level, rsc, text, nodes)
 
#define delete_key(rsc)   generate_op_key(rsc->id, CRMD_ACTION_DELETE, 0)
 
#define delete_action(rsc, node, optional)
 
#define stopped_key(rsc)   generate_op_key(rsc->id, CRMD_ACTION_STOPPED, 0)
 
#define stopped_action(rsc, node, optional)
 
#define stop_key(rsc)   generate_op_key(rsc->id, CRMD_ACTION_STOP, 0)
 
#define stop_action(rsc, node, optional)
 
#define reload_key(rsc)   generate_op_key(rsc->id, CRMD_ACTION_RELOAD, 0)
 
#define start_key(rsc)   generate_op_key(rsc->id, CRMD_ACTION_START, 0)
 
#define start_action(rsc, node, optional)
 
#define started_key(rsc)   generate_op_key(rsc->id, CRMD_ACTION_STARTED, 0)
 
#define started_action(rsc, node, optional)
 
#define promote_key(rsc)   generate_op_key(rsc->id, CRMD_ACTION_PROMOTE, 0)
 
#define promote_action(rsc, node, optional)
 
#define promoted_key(rsc)   generate_op_key(rsc->id, CRMD_ACTION_PROMOTED, 0)
 
#define promoted_action(rsc, node, optional)
 
#define demote_key(rsc)   generate_op_key(rsc->id, CRMD_ACTION_DEMOTE, 0)
 
#define demote_action(rsc, node, optional)
 
#define demoted_key(rsc)   generate_op_key(rsc->id, CRMD_ACTION_DEMOTED, 0)
 
#define demoted_action(rsc, node, optional)
 
#define pe_action_required(action, reason, text)   pe_action_set_flag_reason(__FUNCTION__, __LINE__, action, reason, text, pe_action_optional, FALSE)
 
#define pe_action_implies(action, reason, flag)   pe_action_set_flag_reason(__FUNCTION__, __LINE__, action, reason, NULL, flag, FALSE)
 

Typedefs

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

Enumerations

enum  pe_fc_flags_e { pe_fc_default = 0x00, pe_fc_effective = 0x01, pe_fc_fillers = 0x02 }
 
enum  rsc_digest_cmp_val { RSC_DIGEST_MATCH = 0, RSC_DIGEST_RESTART, RSC_DIGEST_ALL, RSC_DIGEST_UNKNOWN }
 

Functions

bool pe_can_fence (pe_working_set_t *data_set, node_t *node)
 
int merge_weights (int w1, int w2)
 
void add_hash_param (GHashTable *hash, const char *name, const char *value)
 
char * native_parameter (resource_t *rsc, 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 (void)
 
void verify_pe_options (GHashTable *options)
 
void common_update_score (resource_t *rsc, const char *id, int score)
 
void native_add_running (resource_t *rsc, node_t *node, pe_working_set_t *data_set)
 
gboolean native_unpack (resource_t *rsc, pe_working_set_t *data_set)
 
gboolean group_unpack (resource_t *rsc, pe_working_set_t *data_set)
 
gboolean clone_unpack (resource_t *rsc, pe_working_set_t *data_set)
 
gboolean pe__unpack_bundle (pe_resource_t *rsc, pe_working_set_t *data_set)
 
resource_tnative_find_rsc (resource_t *rsc, const char *id, const node_t *node, int flags)
 
gboolean native_active (resource_t *rsc, gboolean all)
 
gboolean group_active (resource_t *rsc, gboolean all)
 
gboolean clone_active (resource_t *rsc, gboolean all)
 
gboolean pe__bundle_active (pe_resource_t *rsc, gboolean all)
 
void native_print (resource_t *rsc, const char *pre_text, long options, void *print_data)
 
void group_print (resource_t *rsc, const char *pre_text, long options, void *print_data)
 
void clone_print (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)
 
void native_free (resource_t *rsc)
 
void group_free (resource_t *rsc)
 
void clone_free (resource_t *rsc)
 
void pe__free_bundle (pe_resource_t *rsc)
 
enum rsc_role_e native_resource_state (const resource_t *rsc, gboolean current)
 
enum rsc_role_e group_resource_state (const resource_t *rsc, gboolean current)
 
enum rsc_role_e clone_resource_state (const resource_t *rsc, gboolean current)
 
enum rsc_role_e pe__bundle_resource_state (const pe_resource_t *rsc, gboolean current)
 
gboolean common_unpack (xmlNode *xml_obj, resource_t **rsc, resource_t *parent, pe_working_set_t *data_set)
 
void common_free (resource_t *rsc)
 
node_tnode_copy (const node_t *this_node)
 
time_t get_effective_time (pe_working_set_t *data_set)
 
int pe_get_failcount (node_t *node, resource_t *rsc, time_t *last_failure, uint32_t flags, xmlNode *xml_op, pe_working_set_t *data_set)
 
pe_action_tpe__clear_failcount (pe_resource_t *rsc, pe_node_t *node, const char *reason, pe_working_set_t *data_set)
 Schedule a controller operation to clear a fail count. More...
 
pe_node_tpe__find_active_on (const pe_resource_t *rsc, 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, GListPtr list2, gboolean merge_scores)
 
GListPtr node_list_dup (GListPtr list, gboolean reset, gboolean filter)
 
GHashTable * node_hash_from_list (GListPtr list)
 
action_tget_pseudo_op (const char *name, pe_working_set_t *data_set)
 
gboolean order_actions (action_t *lh_action, action_t *rh_action, enum pe_ordering order)
 
GHashTable * node_hash_dup (GHashTable *hash)
 
void print_node (const char *pre_text, node_t *node, gboolean details)
 
void print_resource (int log_level, const char *pre_text, resource_t *rsc, gboolean details)
 
void dump_node_scores_worker (int level, const char *file, const char *function, int line, resource_t *rsc, const char *comment, GHashTable *nodes)
 
void dump_node_capacity (int level, const char *comment, node_t *node)
 
void dump_rsc_utilization (int level, const char *comment, resource_t *rsc, node_t *node)
 
gint sort_rsc_priority (gconstpointer a, gconstpointer b)
 
gint sort_rsc_index (gconstpointer a, gconstpointer b)
 
xmlNode * find_rsc_op_entry (resource_t *rsc, const char *key)
 
action_tcustom_action (resource_t *rsc, char *key, const char *task, node_t *on_node, gboolean optional, gboolean foo, pe_working_set_t *data_set)
 
int pe_get_configured_timeout (resource_t *rsc, const char *action, pe_working_set_t *data_set)
 
action_tfind_first_action (GListPtr input, const char *uuid, const char *task, node_t *on_node)
 
enum action_tasks get_complex_task (resource_t *rsc, const char *name, gboolean allow_non_atomic)
 
GListPtr find_actions (GListPtr input, const char *key, const node_t *on_node)
 
GList * find_actions_exact (GList *input, const char *key, const pe_node_t *on_node)
 
GListPtr find_recurring_actions (GListPtr input, node_t *not_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 (action_t *action)
 
void resource_location (resource_t *rsc, node_t *node, int score, const char *tag, pe_working_set_t *data_set)
 
gint sort_op_by_callid (gconstpointer a, gconstpointer b)
 
gboolean get_target_role (resource_t *rsc, enum rsc_role_e *role)
 
resource_tfind_clone_instance (resource_t *rsc, const char *sub_id, pe_working_set_t *data_set)
 
void destroy_ticket (gpointer data)
 
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 get_target_rc (xmlNode *xml_op)
 
gint sort_node_uname (gconstpointer a, gconstpointer b)
 
bool is_set_recursive (resource_t *rsc, long long flag, bool any)
 
op_digest_cache_trsc_action_digest_cmp (resource_t *rsc, xmlNode *xml_op, node_t *node, pe_working_set_t *data_set)
 
action_tpe_fence_op (node_t *node, const char *op, bool optional, const char *reason, pe_working_set_t *data_set)
 
void trigger_unfencing (resource_t *rsc, node_t *node, const char *reason, action_t *dependency, pe_working_set_t *data_set)
 
void pe_action_set_reason (pe_action_t *action, const char *reason, bool overwrite)
 
void pe_action_set_flag_reason (const char *function, long line, pe_action_t *action, pe_action_t *reason, const char *text, enum pe_action_flags flags, bool overwrite)
 
void set_bit_recursive (resource_t *rsc, unsigned long long flag)
 
void clear_bit_recursive (resource_t *rsc, unsigned long long flag)
 
gboolean add_tag_ref (GHashTable *tags, const char *tag_name, const char *obj_ref)
 
void print_rscs_brief (GListPtr rsc_list, const char *pre_text, long options, void *print_data, gboolean print_all)
 
void pe_fence_node (pe_working_set_t *data_set, node_t *node, const char *reason)
 Schedule a fence action for a node. More...
 
node_tpe_create_node (const char *id, const char *uname, const char *type, const char *score, pe_working_set_t *data_set)
 
bool remote_id_conflict (const char *remote_name, pe_working_set_t *data)
 
void common_print (resource_t *rsc, const char *pre_text, const char *name, node_t *node, long options, void *print_data)
 
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, xmlNode *xml, const char *field)
 
const char * pe_node_attribute_calculated (const pe_node_t *node, const char *name, const resource_t *rsc)
 
const char * pe_node_attribute_raw (pe_node_t *node, const char *name)
 
bool pe__is_universal_clone (pe_resource_t *rsc, pe_working_set_t *data_set)
 
void pe__add_param_check (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 *, xmlNode *, enum pe_check_parameters, pe_working_set_t *))
 
void pe__free_param_checks (pe_working_set_t *data_set)
 

Macro Definition Documentation

#define delete_action (   rsc,
  node,
  optional 
)
Value:
rsc, delete_key(rsc), CRMD_ACTION_DELETE, node, \
optional, TRUE, data_set);
action_t * custom_action(resource_t *rsc, char *key, const char *task, node_t *on_node, gboolean optional, gboolean foo, pe_working_set_t *data_set)
Definition: utils.c:441
#define delete_key(rsc)
Definition: internal.h:199
#define CRMD_ACTION_DELETE
Definition: crm.h:142

Definition at line 200 of file internal.h.

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

Definition at line 199 of file internal.h.

#define demote_action (   rsc,
  node,
  optional 
)
Value:
rsc, demote_key(rsc), CRMD_ACTION_DEMOTE, node, \
optional, TRUE, data_set)
#define demote_key(rsc)
Definition: internal.h:235
#define CRMD_ACTION_DEMOTE
Definition: crm.h:157
action_t * custom_action(resource_t *rsc, char *key, const char *task, node_t *on_node, gboolean optional, gboolean foo, pe_working_set_t *data_set)
Definition: utils.c:441

Definition at line 236 of file internal.h.

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

Definition at line 235 of file internal.h.

#define demoted_action (   rsc,
  node,
  optional 
)
Value:
rsc, demoted_key(rsc), CRMD_ACTION_DEMOTED, node, \
optional, TRUE, data_set)
#define demoted_key(rsc)
Definition: internal.h:240
#define CRMD_ACTION_DEMOTED
Definition: crm.h:158
action_t * custom_action(resource_t *rsc, char *key, const char *task, node_t *on_node, gboolean optional, gboolean foo, pe_working_set_t *data_set)
Definition: utils.c:441

Definition at line 241 of file internal.h.

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

Definition at line 240 of file internal.h.

#define dump_node_scores (   level,
  rsc,
  text,
  nodes 
)
Value:
do { \
dump_node_scores_worker(level, __FILE__, __FUNCTION__, __LINE__, rsc, text, nodes); \
} while(0)
void dump_node_scores_worker(int level, const char *file, const char *function, int line, resource_t *rsc, const char *comment, GHashTable *nodes)
Definition: utils.c:269

Definition at line 186 of file internal.h.

#define pe_action_implies (   action,
  reason,
  flag 
)    pe_action_set_flag_reason(__FUNCTION__, __LINE__, action, reason, NULL, flag, FALSE)

Definition at line 329 of file internal.h.

#define pe_action_required (   action,
  reason,
  text 
)    pe_action_set_flag_reason(__FUNCTION__, __LINE__, action, reason, text, pe_action_optional, FALSE)

Definition at line 328 of file internal.h.

#define pe_clear_action_bit (   action,
  bit 
)    action->flags = crm_clear_bit(__FUNCTION__, __LINE__, action->uuid, action->flags, bit)

Definition at line 25 of file internal.h.

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

Definition at line 20 of file internal.h.

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

Definition at line 22 of file internal.h.

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

Definition at line 23 of file internal.h.

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

Definition at line 17 of file internal.h.

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

Definition at line 16 of file internal.h.

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

Definition at line 18 of file internal.h.

#define pe_set_action_bit (   action,
  bit 
)    action->flags = crm_set_bit(__FUNCTION__, __LINE__, action->uuid, action->flags, bit)

Definition at line 24 of file internal.h.

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

Definition at line 21 of file internal.h.

#define promote_action (   rsc,
  node,
  optional 
)
Value:
rsc, promote_key(rsc), CRMD_ACTION_PROMOTE, node, \
optional, TRUE, data_set)
#define CRMD_ACTION_PROMOTE
Definition: crm.h:155
#define promote_key(rsc)
Definition: internal.h:225
action_t * custom_action(resource_t *rsc, char *key, const char *task, node_t *on_node, gboolean optional, gboolean foo, pe_working_set_t *data_set)
Definition: utils.c:441

Definition at line 226 of file internal.h.

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

Definition at line 225 of file internal.h.

#define promoted_action (   rsc,
  node,
  optional 
)
Value:
rsc, promoted_key(rsc), CRMD_ACTION_PROMOTED, node, \
optional, TRUE, data_set)
action_t * custom_action(resource_t *rsc, char *key, const char *task, node_t *on_node, gboolean optional, gboolean foo, pe_working_set_t *data_set)
Definition: utils.c:441
#define CRMD_ACTION_PROMOTED
Definition: crm.h:156
#define promoted_key(rsc)
Definition: internal.h:230

Definition at line 231 of file internal.h.

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

Definition at line 230 of file internal.h.

#define reload_key (   rsc)    generate_op_key(rsc->id, CRMD_ACTION_RELOAD, 0)

Definition at line 214 of file internal.h.

#define start_action (   rsc,
  node,
  optional 
)
Value:
rsc, start_key(rsc), CRMD_ACTION_START, node, \
optional, TRUE, data_set)
#define CRMD_ACTION_START
Definition: crm.h:149
action_t * custom_action(resource_t *rsc, char *key, const char *task, node_t *on_node, gboolean optional, gboolean foo, pe_working_set_t *data_set)
Definition: utils.c:441
#define start_key(rsc)
Definition: internal.h:215

Definition at line 216 of file internal.h.

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

Definition at line 215 of file internal.h.

#define started_action (   rsc,
  node,
  optional 
)
Value:
rsc, started_key(rsc), CRMD_ACTION_STARTED, node, \
optional, TRUE, data_set)
action_t * custom_action(resource_t *rsc, char *key, const char *task, node_t *on_node, gboolean optional, gboolean foo, pe_working_set_t *data_set)
Definition: utils.c:441
#define started_key(rsc)
Definition: internal.h:220
#define CRMD_ACTION_STARTED
Definition: crm.h:150

Definition at line 221 of file internal.h.

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

Definition at line 220 of file internal.h.

#define stop_action (   rsc,
  node,
  optional 
)
Value:
rsc, stop_key(rsc), CRMD_ACTION_STOP, node, \
optional, TRUE, data_set);
#define CRMD_ACTION_STOP
Definition: crm.h:152
#define stop_key(rsc)
Definition: internal.h:209
action_t * custom_action(resource_t *rsc, char *key, const char *task, node_t *on_node, gboolean optional, gboolean foo, pe_working_set_t *data_set)
Definition: utils.c:441

Definition at line 210 of file internal.h.

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

Definition at line 209 of file internal.h.

#define stopped_action (   rsc,
  node,
  optional 
)
Value:
rsc, stopped_key(rsc), CRMD_ACTION_STOPPED, node, \
optional, TRUE, data_set);
#define stopped_key(rsc)
Definition: internal.h:204
action_t * custom_action(resource_t *rsc, char *key, const char *task, node_t *on_node, gboolean optional, gboolean foo, pe_working_set_t *data_set)
Definition: utils.c:441
#define CRMD_ACTION_STOPPED
Definition: crm.h:153

Definition at line 205 of file internal.h.

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

Definition at line 204 of file internal.h.

Typedef Documentation

typedef struct notify_data_s notify_data_t

Enumeration Type Documentation

Enumerator
pe_fc_default 
pe_fc_effective 
pe_fc_fillers 

Definition at line 127 of file internal.h.

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 296 of file internal.h.

Function Documentation

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

Definition at line 406 of file common.c.

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

Definition at line 2309 of file utils.c.

void clear_bit_recursive ( resource_t rsc,
unsigned long long  flag 
)

Definition at line 2146 of file utils.c.

gboolean clone_active ( resource_t rsc,
gboolean  all 
)

Definition at line 235 of file clone.c.

void clone_free ( resource_t rsc)

Definition at line 571 of file clone.c.

void clone_print ( resource_t rsc,
const char *  pre_text,
long  options,
void *  print_data 
)

Definition at line 367 of file clone.c.

enum rsc_role_e clone_resource_state ( const resource_t rsc,
gboolean  current 
)

Definition at line 605 of file clone.c.

char* clone_strip ( const char *  last_rsc_id)

Definition at line 1512 of file unpack.c.

gboolean clone_unpack ( resource_t rsc,
pe_working_set_t data_set 
)

Definition at line 111 of file clone.c.

char* clone_zero ( const char *  last_rsc_id)

Definition at line 1534 of file unpack.c.

void common_free ( resource_t rsc)

Definition at line 760 of file complex.c.

void common_print ( resource_t rsc,
const char *  pre_text,
const char *  name,
node_t node,
long  options,
void *  print_data 
)

Definition at line 502 of file native.c.

gboolean common_unpack ( xmlNode *  xml_obj,
resource_t **  rsc,
resource_t parent,
pe_working_set_t data_set 
)

Definition at line 360 of file complex.c.

void common_update_score ( resource_t rsc,
const char *  id,
int  score 
)

Definition at line 707 of file complex.c.

action_t* custom_action ( resource_t rsc,
char *  key,
const char *  task,
node_t on_node,
gboolean  optional,
gboolean  foo,
pe_working_set_t data_set 
)

Definition at line 441 of file utils.c.

void destroy_ticket ( gpointer  data)

Definition at line 1845 of file utils.c.

void dump_node_capacity ( int  level,
const char *  comment,
node_t node 
)

Definition at line 353 of file utils.c.

void dump_node_scores_worker ( int  level,
const char *  file,
const char *  function,
int  line,
resource_t rsc,
const char *  comment,
GHashTable *  nodes 
)

Definition at line 269 of file utils.c.

void dump_rsc_utilization ( int  level,
const char *  comment,
resource_t rsc,
node_t node 
)

Definition at line 370 of file utils.c.

GListPtr find_actions ( GListPtr  input,
const char *  key,
const node_t on_node 
)

Definition at line 1428 of file utils.c.

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

Definition at line 1468 of file utils.c.

resource_t* find_clone_instance ( resource_t rsc,
const char *  sub_id,
pe_working_set_t data_set 
)

Definition at line 40 of file clone.c.

action_t* find_first_action ( GListPtr  input,
const char *  uuid,
const char *  task,
node_t on_node 
)

Definition at line 1398 of file utils.c.

GListPtr find_recurring_actions ( GListPtr  input,
node_t not_on_node 
)

Definition at line 1340 of file utils.c.

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

Definition at line 1247 of file utils.c.

enum action_tasks get_complex_task ( resource_t rsc,
const char *  name,
gboolean  allow_non_atomic 
)

Definition at line 1374 of file utils.c.

time_t get_effective_time ( pe_working_set_t data_set)

Definition at line 1725 of file utils.c.

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

Definition at line 1828 of file utils.c.

int get_target_rc ( xmlNode *  xml_op)

Definition at line 3016 of file unpack.c.

gboolean get_target_role ( resource_t rsc,
enum rsc_role_e role 
)

Definition at line 1740 of file utils.c.

gboolean group_active ( resource_t rsc,
gboolean  all 
)

Definition at line 90 of file group.c.

void group_free ( resource_t rsc)

Definition at line 184 of file group.c.

void group_print ( resource_t rsc,
const char *  pre_text,
long  options,
void *  print_data 
)

Definition at line 135 of file group.c.

enum rsc_role_e group_resource_state ( const resource_t rsc,
gboolean  current 
)

Definition at line 205 of file group.c.

gboolean group_unpack ( resource_t rsc,
pe_working_set_t data_set 
)

Definition at line 20 of file group.c.

bool is_set_recursive ( resource_t rsc,
long long  flag,
bool  any 
)

Definition at line 336 of file clone.c.

int merge_weights ( int  w1,
int  w2 
)

Definition at line 369 of file common.c.

gboolean native_active ( resource_t rsc,
gboolean  all 
)

Definition at line 312 of file native.c.

void native_add_running ( resource_t rsc,
node_t node,
pe_working_set_t data_set 
)

Definition at line 37 of file native.c.

resource_t* native_find_rsc ( resource_t rsc,
const char *  id,
const node_t node,
int  flags 
)

Definition at line 212 of file native.c.

void native_free ( resource_t rsc)

Definition at line 771 of file native.c.

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

Definition at line 800 of file native.c.

char* native_parameter ( resource_t rsc,
node_t node,
gboolean  create,
const char *  name,
pe_working_set_t data_set 
)

Definition at line 267 of file native.c.

void native_print ( resource_t rsc,
const char *  pre_text,
long  options,
void *  print_data 
)

Definition at line 750 of file native.c.

enum rsc_role_e native_resource_state ( const resource_t rsc,
gboolean  current 
)

Definition at line 778 of file native.c.

gboolean native_unpack ( resource_t rsc,
pe_working_set_t data_set 
)

Definition at line 143 of file native.c.

node_t* node_copy ( const node_t this_node)

Definition at line 118 of file utils.c.

GHashTable* node_hash_dup ( GHashTable *  hash)

Definition at line 286 of file pcmk_sched_native.c.

GHashTable* node_hash_from_list ( GListPtr  list)

Definition at line 174 of file utils.c.

GListPtr node_list_dup ( GListPtr  list,
gboolean  reset,
gboolean  filter 
)

Definition at line 191 of file utils.c.

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

Definition at line 139 of file utils.c.

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

Definition at line 1776 of file utils.c.

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

Definition at line 985 of file bundle.c.

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

Definition at line 215 of file remote.c.

gboolean pe__bundle_active ( pe_resource_t rsc,
gboolean  all 
)

Definition at line 1356 of file bundle.c.

bool pe__bundle_needs_remote_name ( pe_resource_t rsc)

Definition at line 955 of file bundle.c.

enum rsc_role_e pe__bundle_resource_state ( const pe_resource_t rsc,
gboolean  current 
)

Definition at line 1657 of file bundle.c.

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

Schedule a controller operation to clear a fail count.

Parameters
[in]rscResource with failure
[in]nodeNode failure occurred on
[in]reasonReadable description why needed (for logging)
[in]data_setWorking set for cluster
Returns
Scheduled action

Definition at line 360 of file failcounts.c.

pe_node_t* pe__find_active_on ( const pe_resource_t rsc,
unsigned int *  count_all,
unsigned int *  count_clean 
)

Definition at line 842 of file complex.c.

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

Definition at line 922 of file complex.c.

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

Definition at line 1404 of file bundle.c.

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

Definition at line 241 of file remote.c.

void pe__free_bundle ( pe_resource_t rsc)

Definition at line 1623 of file bundle.c.

void pe__free_param_checks ( pe_working_set_t data_set)

Definition at line 256 of file remote.c.

bool pe__is_universal_clone ( pe_resource_t rsc,
pe_working_set_t data_set 
)

Definition at line 631 of file clone.c.

void pe__print_bundle ( pe_resource_t rsc,
const char *  pre_text,
long  options,
void *  print_data 
)

Definition at line 1521 of file bundle.c.

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 1517 of file utils.c.

gboolean pe__unpack_bundle ( pe_resource_t rsc,
pe_working_set_t data_set 
)

Definition at line 1024 of file bundle.c.

void pe_action_set_flag_reason ( const char *  function,
long  line,
pe_action_t action,
pe_action_t reason,
const char *  text,
enum pe_action_flags  flags,
bool  overwrite 
)

Definition at line 2345 of file utils.c.

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

Definition at line 2403 of file utils.c.

const char* pe_base_name_end ( const char *  id)

Definition at line 1472 of file unpack.c.

bool pe_can_fence ( pe_working_set_t data_set,
node_t node 
)

Definition at line 91 of file utils.c.

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 333 of file unpack.c.

void pe_fence_node ( pe_working_set_t data_set,
node_t node,
const char *  reason 
)

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

Definition at line 70 of file unpack.c.

action_t* pe_fence_op ( node_t node,
const char *  op,
bool  optional,
const char *  reason,
pe_working_set_t data_set 
)

Definition at line 2193 of file utils.c.

void pe_free_action ( action_t action)

Definition at line 1313 of file utils.c.

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

Definition at line 826 of file utils.c.

int pe_get_failcount ( node_t node,
resource_t rsc,
time_t *  last_failure,
uint32_t  flags,
xmlNode *  xml_op,
pe_working_set_t data_set 
)

Definition at line 251 of file failcounts.c.

void pe_metadata ( void  )

Definition at line 166 of file common.c.

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

Definition at line 423 of file common.c.

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

Definition at line 462 of file common.c.

void print_node ( const char *  pre_text,
node_t node,
gboolean  details 
)

Definition at line 1253 of file utils.c.

void print_resource ( int  log_level,
const char *  pre_text,
resource_t rsc,
gboolean  details 
)

Definition at line 1297 of file utils.c.

void print_rscs_brief ( GListPtr  rsc_list,
const char *  pre_text,
long  options,
void *  print_data,
gboolean  print_all 
)

Definition at line 927 of file native.c.

bool remote_id_conflict ( const char *  remote_name,
pe_working_set_t data 
)

Definition at line 394 of file unpack.c.

void resource_location ( resource_t rsc,
node_t node,
int  score,
const char *  tag,
pe_working_set_t data_set 
)

Definition at line 1565 of file utils.c.

op_digest_cache_t* rsc_action_digest_cmp ( resource_t rsc,
xmlNode *  xml_op,
node_t node,
pe_working_set_t data_set 
)

Definition at line 2033 of file utils.c.

void set_bit_recursive ( resource_t rsc,
unsigned long long  flag 
)

Definition at line 2159 of file utils.c.

gint sort_node_uname ( gconstpointer  a,
gconstpointer  b 
)

Definition at line 217 of file utils.c.

gint sort_op_by_callid ( gconstpointer  a,
gconstpointer  b 
)

Definition at line 1609 of file utils.c.

gint sort_rsc_index ( gconstpointer  a,
gconstpointer  b 
)

Definition at line 387 of file utils.c.

gint sort_rsc_priority ( gconstpointer  a,
gconstpointer  b 
)

Definition at line 414 of file utils.c.

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

Definition at line 1857 of file utils.c.

void trigger_unfencing ( resource_t rsc,
node_t node,
const char *  reason,
action_t dependency,
pe_working_set_t data_set 
)

Definition at line 2275 of file utils.c.

void verify_pe_options ( GHashTable *  options)

Definition at line 175 of file common.c.