scheduler 446 daemons/execd/cts-exec-helper.c pcmk_scheduler_t *scheduler = NULL; scheduler 470 daemons/execd/cts-exec-helper.c scheduler = pe_new_working_set(); scheduler 471 daemons/execd/cts-exec-helper.c if (scheduler == NULL) { scheduler 475 daemons/execd/cts-exec-helper.c pcmk__set_scheduler_flags(scheduler, pcmk__sched_no_counts); scheduler 476 daemons/execd/cts-exec-helper.c scheduler->input = cib_xml_copy; scheduler 477 daemons/execd/cts-exec-helper.c scheduler->priv->now = crm_time_new(NULL); scheduler 478 daemons/execd/cts-exec-helper.c cluster_status(scheduler); scheduler 481 daemons/execd/cts-exec-helper.c rsc = pe_find_resource_with_flags(scheduler->priv->resources, scheduler 487 daemons/execd/cts-exec-helper.c pe_free_working_set(scheduler); scheduler 492 daemons/execd/cts-exec-helper.c params = pe_rsc_params(rsc, NULL, scheduler); scheduler 503 daemons/execd/cts-exec-helper.c get_meta_attributes(meta, rsc, NULL, scheduler); scheduler 514 daemons/execd/cts-exec-helper.c pe_free_working_set(scheduler); scheduler 22 daemons/fenced/fenced_scheduler.c static pcmk_scheduler_t *scheduler = NULL; scheduler 40 daemons/fenced/fenced_scheduler.c scheduler = pe_new_working_set(); scheduler 41 daemons/fenced/fenced_scheduler.c if (scheduler == NULL) { scheduler 49 daemons/fenced/fenced_scheduler.c scheduler->priv->out = logger; scheduler 63 daemons/fenced/fenced_scheduler.c pcmk__assert(scheduler != NULL); scheduler 65 daemons/fenced/fenced_scheduler.c scheduler->priv->local_node_name = pcmk__str_copy(node_name); scheduler 77 daemons/fenced/fenced_scheduler.c if (scheduler == NULL) { scheduler 80 daemons/fenced/fenced_scheduler.c return scheduler->priv->local_node_name; scheduler 90 daemons/fenced/fenced_scheduler.c if (scheduler != NULL) { scheduler 91 daemons/fenced/fenced_scheduler.c pcmk__output_t *logger = scheduler->priv->out; scheduler 96 daemons/fenced/fenced_scheduler.c scheduler->priv->out = NULL; scheduler 98 daemons/fenced/fenced_scheduler.c pe_free_working_set(scheduler); scheduler 99 daemons/fenced/fenced_scheduler.c scheduler = NULL; scheduler 114 daemons/fenced/fenced_scheduler.c if ((rsc != NULL) && (scheduler->priv->local_node_name != NULL)) { scheduler 120 daemons/fenced/fenced_scheduler.c if (pcmk__str_eq(node->priv->name, scheduler->priv->local_node_name, scheduler 212 daemons/fenced/fenced_scheduler.c get_meta_attributes(rsc->priv->meta, rsc, NULL, scheduler); scheduler 216 daemons/fenced/fenced_scheduler.c g_hash_table_iter_init(&hash_iter, pe_rsc_params(rsc, node, scheduler)); scheduler 241 daemons/fenced/fenced_scheduler.c CRM_CHECK((cib != NULL) && (scheduler != NULL), return); scheduler 243 daemons/fenced/fenced_scheduler.c if (scheduler->priv->now != NULL) { scheduler 244 daemons/fenced/fenced_scheduler.c crm_time_free(scheduler->priv->now); scheduler 245 daemons/fenced/fenced_scheduler.c scheduler->priv->now = NULL; scheduler 248 daemons/fenced/fenced_scheduler.c |pcmk__sched_no_counts, scheduler); scheduler 249 daemons/fenced/fenced_scheduler.c g_list_foreach(scheduler->priv->resources, register_if_fencing_device, scheduler 252 daemons/fenced/fenced_scheduler.c scheduler->input = NULL; // Wasn't a copy, so don't let API free it scheduler 253 daemons/fenced/fenced_scheduler.c pe_reset_working_set(scheduler); scheduler 28 daemons/schedulerd/schedulerd_messages.c pcmk_scheduler_t *scheduler = pe_new_working_set(); scheduler 30 daemons/schedulerd/schedulerd_messages.c pcmk__mem_assert(scheduler); scheduler 31 daemons/schedulerd/schedulerd_messages.c scheduler->priv->out = logger_out; scheduler 32 daemons/schedulerd/schedulerd_messages.c return scheduler; scheduler 69 daemons/schedulerd/schedulerd_messages.c pcmk_scheduler_t *scheduler = init_working_set(); scheduler 77 daemons/schedulerd/schedulerd_messages.c scheduler->priv->graph = pcmk__xe_create(NULL, scheduler 79 daemons/schedulerd/schedulerd_messages.c crm_xml_add_int(scheduler->priv->graph, "transition_id", 0); scheduler 80 daemons/schedulerd/schedulerd_messages.c crm_xml_add_int(scheduler->priv->graph, PCMK_OPT_CLUSTER_DELAY, 0); scheduler 96 daemons/schedulerd/schedulerd_messages.c |pcmk__sched_show_utilization, scheduler); scheduler 100 daemons/schedulerd/schedulerd_messages.c if (pcmk_is_set(scheduler->flags, pcmk__sched_processing_error) scheduler 103 daemons/schedulerd/schedulerd_messages.c } else if (pcmk_is_set(scheduler->flags, pcmk__sched_processing_warning) scheduler 110 daemons/schedulerd/schedulerd_messages.c value = pcmk__cluster_option(scheduler->priv->options, scheduler 125 daemons/schedulerd/schedulerd_messages.c scheduler->input = NULL; scheduler 126 daemons/schedulerd/schedulerd_messages.c reply = pcmk__new_reply(msg, scheduler->priv->graph); scheduler 147 daemons/schedulerd/schedulerd_messages.c pcmk__log_transition_summary(scheduler, filename); scheduler 168 daemons/schedulerd/schedulerd_messages.c pe_free_working_set(scheduler); scheduler 216 include/crm/common/actions_internal.h pcmk_scheduler_t *scheduler; // Scheduler data this action is part of scheduler 40 include/crm/common/health_internal.h int pcmk__health_score(const char *option, const pcmk_scheduler_t *scheduler); scheduler 123 include/crm/common/nodes_internal.h pcmk_scheduler_t *scheduler; // Scheduler data that node is part of scheduler 190 include/crm/common/resources_internal.h gboolean (*unpack)(pcmk_resource_t *rsc, pcmk_scheduler_t *scheduler); scheduler 220 include/crm/common/resources_internal.h const char *name, pcmk_scheduler_t *scheduler); scheduler 341 include/crm/common/resources_internal.h pcmk_scheduler_t *scheduler; // Scheduler data containing resource scheduler 102 include/crm/common/scheduler.h pcmk_node_t *pcmk_get_dc(const pcmk_scheduler_t *scheduler); scheduler 104 include/crm/common/scheduler.h *scheduler); scheduler 106 include/crm/common/scheduler.h int pcmk_set_scheduler_cib(pcmk_scheduler_t *scheduler, xmlNode *cib); scheduler 108 include/crm/common/scheduler.h bool pcmk_has_quorum(const pcmk_scheduler_t *scheduler); scheduler 109 include/crm/common/scheduler.h pcmk_node_t *pcmk_find_node(const pcmk_scheduler_t *scheduler, scheduler 237 include/crm/common/scheduler_internal.h #define pcmk__sched_err(scheduler, fmt...) do { \ scheduler 238 include/crm/common/scheduler_internal.h pcmk__set_scheduler_flags((scheduler), \ scheduler 250 include/crm/common/scheduler_internal.h #define pcmk__sched_warn(scheduler, fmt...) do { \ scheduler 251 include/crm/common/scheduler_internal.h pcmk__set_scheduler_flags((scheduler), \ scheduler 263 include/crm/common/scheduler_internal.h #define pcmk__set_scheduler_flags(scheduler, flags_to_set) do { \ scheduler 264 include/crm/common/scheduler_internal.h (scheduler)->flags = pcmk__set_flags_as(__func__, __LINE__, \ scheduler 266 include/crm/common/scheduler_internal.h (scheduler)->flags, (flags_to_set), #flags_to_set); \ scheduler 276 include/crm/common/scheduler_internal.h #define pcmk__clear_scheduler_flags(scheduler, flags_to_clear) do { \ scheduler 277 include/crm/common/scheduler_internal.h (scheduler)->flags = pcmk__clear_flags_as(__func__, __LINE__, \ scheduler 279 include/crm/common/scheduler_internal.h (scheduler)->flags, (flags_to_clear), #flags_to_clear); \ scheduler 22 include/crm/pengine/complex.h pcmk_scheduler_t *scheduler); scheduler 24 include/crm/pengine/complex.h pcmk_node_t *node, pcmk_scheduler_t *scheduler); scheduler 26 include/crm/pengine/complex.h const pcmk_node_t *node, pcmk_scheduler_t *scheduler); scheduler 59 include/crm/pengine/internal.h bool pe_can_fence(const pcmk_scheduler_t *scheduler, const pcmk_node_t *node); scheduler 62 include/crm/pengine/internal.h const char *name, pcmk_scheduler_t *scheduler); scheduler 66 include/crm/pengine/internal.h pcmk_scheduler_t *scheduler, gboolean failed); scheduler 68 include/crm/pengine/internal.h gboolean native_unpack(pcmk_resource_t *rsc, pcmk_scheduler_t *scheduler); scheduler 69 include/crm/pengine/internal.h gboolean group_unpack(pcmk_resource_t *rsc, pcmk_scheduler_t *scheduler); scheduler 70 include/crm/pengine/internal.h gboolean clone_unpack(pcmk_resource_t *rsc, pcmk_scheduler_t *scheduler); scheduler 71 include/crm/pengine/internal.h gboolean pe__unpack_bundle(pcmk_resource_t *rsc, pcmk_scheduler_t *scheduler); scheduler 131 include/crm/pengine/internal.h time_t get_effective_time(pcmk_scheduler_t *scheduler); scheduler 141 include/crm/pengine/internal.h pcmk_scheduler_t *scheduler); scheduler 155 include/crm/pengine/internal.h pcmk_action_t *get_pseudo_op(const char *name, pcmk_scheduler_t *scheduler); scheduler 162 include/crm/pengine/internal.h pcmk_scheduler_t *scheduler); scheduler 164 include/crm/pengine/internal.h #define pe__show_node_scores(level, rsc, text, nodes, scheduler) \ scheduler 166 include/crm/pengine/internal.h (level), (rsc), (text), (nodes), (scheduler)) scheduler 193 include/crm/pengine/internal.h pcmk_scheduler_t *scheduler); scheduler 204 include/crm/pengine/internal.h (node), (optional), (rsc)->priv->scheduler) scheduler 208 include/crm/pengine/internal.h (node), (optional), (rsc)->priv->scheduler) scheduler 212 include/crm/pengine/internal.h (node), (optional), (rsc)->priv->scheduler) scheduler 216 include/crm/pengine/internal.h (node), (optional), (rsc)->priv->scheduler) scheduler 220 include/crm/pengine/internal.h (node), (optional), (rsc)->priv->scheduler) scheduler 237 include/crm/pengine/internal.h const char *tag, pcmk_scheduler_t *scheduler); scheduler 246 include/crm/pengine/internal.h pcmk__ticket_t *ticket_new(const char *ticket_id, pcmk_scheduler_t *scheduler); scheduler 276 include/crm/pengine/internal.h pcmk_scheduler_t *scheduler); scheduler 283 include/crm/pengine/internal.h pcmk_scheduler_t *scheduler); scheduler 287 include/crm/pengine/internal.h pcmk_scheduler_t *scheduler); scheduler 290 include/crm/pengine/internal.h pcmk_scheduler_t *scheduler); scheduler 300 include/crm/pengine/internal.h void pe__clear_resource_flags_on_all(pcmk_scheduler_t *scheduler, scheduler 304 include/crm/pengine/internal.h void pe_fence_node(pcmk_scheduler_t *scheduler, pcmk_node_t *node, scheduler 308 include/crm/pengine/internal.h int score, pcmk_scheduler_t *scheduler); scheduler 338 include/crm/pengine/internal.h const pcmk_scheduler_t *scheduler); scheduler 341 include/crm/pengine/internal.h pcmk_scheduler_t *scheduler); scheduler 342 include/crm/pengine/internal.h void pe__foreach_param_check(pcmk_scheduler_t *scheduler, scheduler 346 include/crm/pengine/internal.h void pe__free_param_checks(pcmk_scheduler_t *scheduler); scheduler 349 include/crm/pengine/internal.h void pe__update_recheck_time(time_t recheck, pcmk_scheduler_t *scheduler, scheduler 363 include/crm/pengine/internal.h pcmk_scheduler_t *scheduler); scheduler 368 include/crm/pengine/internal.h GList *pe__rscs_with_tag(pcmk_scheduler_t *scheduler, const char *tag_name); scheduler 369 include/crm/pengine/internal.h GList *pe__unames_with_tag(pcmk_scheduler_t *scheduler, const char *tag_name); scheduler 370 include/crm/pengine/internal.h bool pe__rsc_has_tag(pcmk_scheduler_t *scheduler, const char *rsc, scheduler 372 include/crm/pengine/internal.h bool pe__uname_has_tag(pcmk_scheduler_t *scheduler, const char *node, scheduler 379 include/crm/pengine/internal.h GList * pe__build_node_name_list(pcmk_scheduler_t *scheduler, const char *s); scheduler 380 include/crm/pengine/internal.h GList * pe__build_rsc_list(pcmk_scheduler_t *scheduler, const char *s); scheduler 401 include/crm/pengine/internal.h pe__health_strategy(pcmk_scheduler_t *scheduler) scheduler 403 include/crm/pengine/internal.h const char *strategy = pcmk__cluster_option(scheduler->priv->options, scheduler 22 include/crm/pengine/remote_internal.h pcmk_resource_t *pe__resource_contains_guest_node(const pcmk_scheduler_t *scheduler, scheduler 24 include/crm/pengine/remote_internal.h void pe_foreach_guest_node(const pcmk_scheduler_t *scheduler, scheduler 34 include/crm/pengine/status.h gboolean cluster_status(pcmk_scheduler_t *scheduler); scheduler 40 include/crm/pengine/status.h void pe_free_working_set(pcmk_scheduler_t *scheduler); scheduler 42 include/crm/pengine/status.h void set_working_set_defaults(pcmk_scheduler_t *scheduler); scheduler 43 include/crm/pengine/status.h void cleanup_calculations(pcmk_scheduler_t *scheduler); scheduler 46 include/crm/pengine/status.h void pe_reset_working_set(pcmk_scheduler_t *scheduler); scheduler 55 include/crm/pengine/status.h pcmk_scheduler_t *scheduler); scheduler 253 include/pacemaker.h int pcmk_simulate(xmlNodePtr *xml, pcmk_scheduler_t *scheduler, scheduler 37 include/pcmki/pcmki_scheduler.h void pcmk__unpack_constraints(pcmk_scheduler_t *scheduler); scheduler 40 include/pcmki/pcmki_scheduler.h pcmk_scheduler_t *scheduler); scheduler 40 include/pcmki/pcmki_simulate.h pcmk_scheduler_t *scheduler, const char *use_date); scheduler 52 include/pcmki/pcmki_simulate.h enum pcmk__graph_status pcmk__simulate_transition(pcmk_scheduler_t *scheduler, scheduler 87 include/pcmki/pcmki_simulate.h int pcmk__simulate(pcmk_scheduler_t *scheduler, pcmk__output_t *out, scheduler 25 include/pcmki/pcmki_status.h int pcmk__output_cluster_status(pcmk_scheduler_t *scheduler, scheduler 62 include/pcmki/pcmki_ticket.h int pcmk__ticket_delete(pcmk__output_t *out, cib_t *cib, pcmk_scheduler_t *scheduler, scheduler 78 include/pcmki/pcmki_ticket.h int pcmk__ticket_get_attr(pcmk__output_t *out, pcmk_scheduler_t *scheduler, scheduler 100 include/pcmki/pcmki_ticket.h int pcmk__ticket_info(pcmk__output_t *out, pcmk_scheduler_t *scheduler, scheduler 117 include/pcmki/pcmki_ticket.h int pcmk__ticket_remove_attr(pcmk__output_t *out, cib_t *cib, pcmk_scheduler_t *scheduler, scheduler 139 include/pcmki/pcmki_ticket.h int pcmk__ticket_set_attr(pcmk__output_t *out, cib_t *cib, pcmk_scheduler_t *scheduler, scheduler 170 include/pcmki/pcmki_transition.h void pcmk__log_transition_summary(const pcmk_scheduler_t *scheduler, scheduler 51 include/pcmki/pcmki_verify.h int pcmk__verify(pcmk_scheduler_t *scheduler, pcmk__output_t *out, scheduler 82 lib/common/health.c pcmk__health_score(const char *option, const pcmk_scheduler_t *scheduler) scheduler 88 lib/common/health.c CRM_CHECK((option != NULL) && (scheduler != NULL), return 0); scheduler 90 lib/common/health.c value = pcmk__cluster_option(scheduler->priv->options, option); scheduler 30 lib/common/scheduler.c pcmk_get_dc(const pcmk_scheduler_t *scheduler) scheduler 32 lib/common/scheduler.c return (scheduler == NULL)? NULL : scheduler->dc_node; scheduler 44 lib/common/scheduler.c pcmk_get_no_quorum_policy(const pcmk_scheduler_t *scheduler) scheduler 46 lib/common/scheduler.c if (scheduler == NULL) { scheduler 49 lib/common/scheduler.c return scheduler->no_quorum_policy; scheduler 64 lib/common/scheduler.c pcmk_set_scheduler_cib(pcmk_scheduler_t *scheduler, xmlNode *cib) scheduler 66 lib/common/scheduler.c if (scheduler == NULL) { scheduler 69 lib/common/scheduler.c scheduler->input = cib; scheduler 82 lib/common/scheduler.c pcmk_has_quorum(const pcmk_scheduler_t *scheduler) scheduler 84 lib/common/scheduler.c if (scheduler == NULL) { scheduler 87 lib/common/scheduler.c return pcmk_is_set(scheduler->flags, pcmk__sched_quorate); scheduler 100 lib/common/scheduler.c pcmk_find_node(const pcmk_scheduler_t *scheduler, const char *node_name) scheduler 102 lib/common/scheduler.c if ((scheduler == NULL) || (node_name == NULL)) { scheduler 105 lib/common/scheduler.c return pcmk__find_node_in_list(scheduler->nodes, node_name); scheduler 24 lib/common/tests/scheduler/pcmk_get_dc_test.c pcmk_scheduler_t scheduler = { scheduler 28 lib/common/tests/scheduler/pcmk_get_dc_test.c assert_null(pcmk_get_dc(&scheduler)); scheduler 40 lib/common/tests/scheduler/pcmk_get_dc_test.c pcmk_scheduler_t scheduler = { scheduler 44 lib/common/tests/scheduler/pcmk_get_dc_test.c assert_ptr_equal(&dc, pcmk_get_dc(&scheduler)); scheduler 24 lib/common/tests/scheduler/pcmk_get_no_quorum_policy_test.c pcmk_scheduler_t scheduler = { scheduler 28 lib/common/tests/scheduler/pcmk_get_no_quorum_policy_test.c assert_int_equal(pcmk_get_no_quorum_policy(&scheduler), scheduler 25 lib/common/tests/scheduler/pcmk_has_quorum_test.c pcmk_scheduler_t scheduler = { scheduler 29 lib/common/tests/scheduler/pcmk_has_quorum_test.c assert_true(pcmk_has_quorum(&scheduler)); scheduler 31 lib/common/tests/scheduler/pcmk_has_quorum_test.c scheduler.flags = pcmk__sched_none; scheduler 32 lib/common/tests/scheduler/pcmk_has_quorum_test.c assert_false(pcmk_has_quorum(&scheduler)); scheduler 29 lib/common/tests/scheduler/pcmk_set_scheduler_cib_test.c pcmk_scheduler_t scheduler = { scheduler 33 lib/common/tests/scheduler/pcmk_set_scheduler_cib_test.c assert_int_equal(pcmk_set_scheduler_cib(&scheduler, NULL), pcmk_rc_ok); scheduler 34 lib/common/tests/scheduler/pcmk_set_scheduler_cib_test.c assert_null(scheduler.input); scheduler 40 lib/common/tests/scheduler/pcmk_set_scheduler_cib_test.c pcmk_scheduler_t scheduler = { scheduler 45 lib/common/tests/scheduler/pcmk_set_scheduler_cib_test.c assert_int_equal(pcmk_set_scheduler_cib(&scheduler, cib), pcmk_rc_ok); scheduler 46 lib/common/tests/scheduler/pcmk_set_scheduler_cib_test.c assert_ptr_equal(scheduler.input, cib); scheduler 56 lib/common/tests/scheduler/pcmk_set_scheduler_cib_test.c pcmk_scheduler_t scheduler = { scheduler 60 lib/common/tests/scheduler/pcmk_set_scheduler_cib_test.c assert_int_equal(pcmk_set_scheduler_cib(&scheduler, new_cib), pcmk_rc_ok); scheduler 61 lib/common/tests/scheduler/pcmk_set_scheduler_cib_test.c assert_ptr_equal(scheduler.input, new_cib); scheduler 304 lib/pacemaker/libpacemaker_private.h pcmk_scheduler_t *scheduler); scheduler 366 lib/pacemaker/libpacemaker_private.h pcmk_scheduler_t *scheduler); scheduler 372 lib/pacemaker/libpacemaker_private.h pcmk_scheduler_t *scheduler); scheduler 393 lib/pacemaker/libpacemaker_private.h void pcmk__output_actions(pcmk_scheduler_t *scheduler); scheduler 400 lib/pacemaker/libpacemaker_private.h void pcmk__handle_rsc_config_changes(pcmk_scheduler_t *scheduler); scheduler 432 lib/pacemaker/libpacemaker_private.h void pcmk__create_graph(pcmk_scheduler_t *scheduler); scheduler 439 lib/pacemaker/libpacemaker_private.h pcmk_scheduler_t *scheduler); scheduler 459 lib/pacemaker/libpacemaker_private.h void pcmk__inject_scheduler_input(pcmk_scheduler_t *scheduler, cib_t *cib, scheduler 475 lib/pacemaker/libpacemaker_private.h const pcmk_scheduler_t *scheduler); scheduler 478 lib/pacemaker/libpacemaker_private.h bool pcmk__valid_resource_or_tag(const pcmk_scheduler_t *scheduler, scheduler 484 lib/pacemaker/libpacemaker_private.h bool convert_rsc, const pcmk_scheduler_t *scheduler); scheduler 487 lib/pacemaker/libpacemaker_private.h void pcmk__create_internal_constraints(pcmk_scheduler_t *scheduler); scheduler 493 lib/pacemaker/libpacemaker_private.h void pcmk__unpack_location(xmlNode *xml_obj, pcmk_scheduler_t *scheduler); scheduler 501 lib/pacemaker/libpacemaker_private.h void pcmk__apply_locations(pcmk_scheduler_t *scheduler); scheduler 557 lib/pacemaker/libpacemaker_private.h void pcmk__unpack_colocation(xmlNode *xml_obj, pcmk_scheduler_t *scheduler); scheduler 604 lib/pacemaker/libpacemaker_private.h void pcmk__unpack_ordering(xmlNode *xml_obj, pcmk_scheduler_t *scheduler); scheduler 607 lib/pacemaker/libpacemaker_private.h void pcmk__disable_invalid_orderings(pcmk_scheduler_t *scheduler); scheduler 637 lib/pacemaker/libpacemaker_private.h NULL, (flags), (first_rsc)->priv->scheduler) scheduler 651 lib/pacemaker/libpacemaker_private.h void pcmk__unpack_rsc_ticket(xmlNode *xml_obj, pcmk_scheduler_t *scheduler); scheduler 693 lib/pacemaker/libpacemaker_private.h void pcmk__order_remote_connection_actions(pcmk_scheduler_t *scheduler); scheduler 809 lib/pacemaker/libpacemaker_private.h pcmk_scheduler_t *scheduler); scheduler 958 lib/pacemaker/libpacemaker_private.h pcmk_scheduler_t *scheduler); scheduler 1017 lib/pacemaker/libpacemaker_private.h void pcmk__apply_node_health(pcmk_scheduler_t *scheduler); scheduler 1027 lib/pacemaker/libpacemaker_private.h void pcmk__set_assignment_methods(pcmk_scheduler_t *scheduler); scheduler 1035 lib/pacemaker/libpacemaker_private.h const pcmk_scheduler_t *scheduler); scheduler 1060 lib/pacemaker/libpacemaker_private.h void pcmk__sort_resources(pcmk_scheduler_t *scheduler); scheduler 1075 lib/pacemaker/libpacemaker_private.h void pcmk__order_probes(pcmk_scheduler_t *scheduler); scheduler 1081 lib/pacemaker/libpacemaker_private.h void pcmk__schedule_probes(pcmk_scheduler_t *scheduler); scheduler 1119 lib/pacemaker/libpacemaker_private.h void pcmk__show_node_capacities(const char *desc, pcmk_scheduler_t *scheduler); scheduler 1126 lib/pacemaker/libpacemaker_private.h pcmk_scheduler_t **scheduler); scheduler 1133 lib/pacemaker/libpacemaker_private.h pcmk_scheduler_t **scheduler, xmlNode **xml); scheduler 79 lib/pacemaker/pcmk_graph_producer.c add_maintenance_nodes(xmlNode *xml, const pcmk_scheduler_t *scheduler) scheduler 87 lib/pacemaker/pcmk_graph_producer.c for (const GList *iter = scheduler->nodes; scheduler 120 lib/pacemaker/pcmk_graph_producer.c add_maintenance_update(pcmk_scheduler_t *scheduler) scheduler 124 lib/pacemaker/pcmk_graph_producer.c if (add_maintenance_nodes(NULL, scheduler) != 0) { scheduler 125 lib/pacemaker/pcmk_graph_producer.c action = get_pseudo_op(PCMK_ACTION_MAINTENANCE_NODES, scheduler); scheduler 163 lib/pacemaker/pcmk_graph_producer.c pe_foreach_guest_node(action->node->priv->scheduler, scheduler 352 lib/pacemaker/pcmk_graph_producer.c rsc->priv->scheduler); scheduler 360 lib/pacemaker/pcmk_graph_producer.c GHashTable *params = pe_rsc_params(rsc, NULL, rsc->priv->scheduler); scheduler 391 lib/pacemaker/pcmk_graph_producer.c const pcmk_scheduler_t *scheduler) scheduler 397 lib/pacemaker/pcmk_graph_producer.c if ((action == NULL) || (scheduler == NULL)) { scheduler 482 lib/pacemaker/pcmk_graph_producer.c add_maintenance_nodes(action_xml, scheduler); scheduler 542 lib/pacemaker/pcmk_graph_producer.c pcmk__sched_err(action->scheduler, scheduler 563 lib/pacemaker/pcmk_graph_producer.c pcmk__sched_err(action->scheduler, scheduler 571 lib/pacemaker/pcmk_graph_producer.c pcmk__sched_err(action->scheduler, scheduler 849 lib/pacemaker/pcmk_graph_producer.c create_graph_synapse(const pcmk_action_t *action, pcmk_scheduler_t *scheduler) scheduler 852 lib/pacemaker/pcmk_graph_producer.c xmlNode *syn = pcmk__xe_create(scheduler->priv->graph, PCMK__XE_SYNAPSE); scheduler 854 lib/pacemaker/pcmk_graph_producer.c crm_xml_add_int(syn, PCMK_XA_ID, scheduler->priv->synapse_count++); scheduler 888 lib/pacemaker/pcmk_graph_producer.c pcmk_scheduler_t *scheduler = (pcmk_scheduler_t *) user_data; scheduler 914 lib/pacemaker/pcmk_graph_producer.c syn = create_graph_synapse(action, scheduler); scheduler 918 lib/pacemaker/pcmk_graph_producer.c create_graph_action(set, action, false, scheduler); scheduler 927 lib/pacemaker/pcmk_graph_producer.c create_graph_action(input_xml, input->action, true, scheduler); scheduler 942 lib/pacemaker/pcmk_graph_producer.c pcmk__log_transition_summary(const pcmk_scheduler_t *scheduler, scheduler 945 lib/pacemaker/pcmk_graph_producer.c if (pcmk_is_set(scheduler->flags, pcmk__sched_processing_error) scheduler 952 lib/pacemaker/pcmk_graph_producer.c } else if (pcmk_is_set(scheduler->flags, pcmk__sched_processing_warning) scheduler 988 lib/pacemaker/pcmk_graph_producer.c rsc->priv->scheduler); scheduler 1005 lib/pacemaker/pcmk_graph_producer.c pcmk__create_graph(pcmk_scheduler_t *scheduler) scheduler 1010 lib/pacemaker/pcmk_graph_producer.c GHashTable *config_hash = scheduler->priv->options; scheduler 1016 lib/pacemaker/pcmk_graph_producer.c scheduler->priv->graph = pcmk__xe_create(NULL, PCMK__XE_TRANSITION_GRAPH); scheduler 1019 lib/pacemaker/pcmk_graph_producer.c crm_xml_add(scheduler->priv->graph, PCMK_OPT_CLUSTER_DELAY, value); scheduler 1022 lib/pacemaker/pcmk_graph_producer.c crm_xml_add(scheduler->priv->graph, PCMK_OPT_STONITH_TIMEOUT, value); scheduler 1024 lib/pacemaker/pcmk_graph_producer.c crm_xml_add(scheduler->priv->graph, PCMK__XA_FAILED_STOP_OFFSET, scheduler 1027 lib/pacemaker/pcmk_graph_producer.c if (pcmk_is_set(scheduler->flags, pcmk__sched_start_failure_fatal)) { scheduler 1028 lib/pacemaker/pcmk_graph_producer.c crm_xml_add(scheduler->priv->graph, PCMK__XA_FAILED_START_OFFSET, scheduler 1031 lib/pacemaker/pcmk_graph_producer.c crm_xml_add(scheduler->priv->graph, PCMK__XA_FAILED_START_OFFSET, "1"); scheduler 1035 lib/pacemaker/pcmk_graph_producer.c crm_xml_add(scheduler->priv->graph, PCMK_OPT_BATCH_LIMIT, value); scheduler 1037 lib/pacemaker/pcmk_graph_producer.c crm_xml_add_int(scheduler->priv->graph, "transition_id", transition_id); scheduler 1045 lib/pacemaker/pcmk_graph_producer.c crm_xml_add(scheduler->priv->graph, PCMK_OPT_MIGRATION_LIMIT, value); scheduler 1048 lib/pacemaker/pcmk_graph_producer.c if (scheduler->priv->recheck_by > 0) { scheduler 1052 lib/pacemaker/pcmk_graph_producer.c scheduler->priv->recheck_by); scheduler 1053 lib/pacemaker/pcmk_graph_producer.c crm_xml_add(scheduler->priv->graph, "recheck-by", recheck_epoch); scheduler 1063 lib/pacemaker/pcmk_graph_producer.c for (iter = scheduler->priv->resources; iter != NULL; iter = iter->next) { scheduler 1071 lib/pacemaker/pcmk_graph_producer.c add_maintenance_update(scheduler); scheduler 1074 lib/pacemaker/pcmk_graph_producer.c for (iter = scheduler->priv->actions; iter != NULL; iter = iter->next) { scheduler 1088 lib/pacemaker/pcmk_graph_producer.c if (pcmk_is_set(scheduler->flags, pcmk__sched_quorate) scheduler 1089 lib/pacemaker/pcmk_graph_producer.c || (scheduler->no_quorum_policy == pcmk_no_quorum_ignore)) { scheduler 1103 lib/pacemaker/pcmk_graph_producer.c add_action_to_graph((gpointer) action, (gpointer) scheduler); scheduler 1106 lib/pacemaker/pcmk_graph_producer.c crm_log_xml_trace(scheduler->priv->graph, "graph"); scheduler 557 lib/pacemaker/pcmk_injections.c const pcmk_scheduler_t *scheduler) scheduler 592 lib/pacemaker/pcmk_injections.c rsc = pe_find_resource(scheduler->priv->resources, resource); scheduler 609 lib/pacemaker/pcmk_injections.c && pcmk_is_set(scheduler->flags, scheduler 647 lib/pacemaker/pcmk_injections.c pcmk__inject_scheduler_input(pcmk_scheduler_t *scheduler, cib_t *cib, scheduler 653 lib/pacemaker/pcmk_injections.c pcmk__output_t *out = scheduler->priv->out; scheduler 768 lib/pacemaker/pcmk_injections.c inject_action(out, (const char *) iter->data, cib, scheduler); scheduler 600 lib/pacemaker/pcmk_output.c pcmk__unpack_constraints(rsc->priv->scheduler); scheduler 609 lib/pacemaker/pcmk_output.c pe__clear_resource_flags_on_all(rsc->priv->scheduler, scheduler 613 lib/pacemaker/pcmk_output.c pe__clear_resource_flags_on_all(rsc->priv->scheduler, scheduler 628 lib/pacemaker/pcmk_output.c pcmk__unpack_constraints(rsc->priv->scheduler); scheduler 638 lib/pacemaker/pcmk_output.c pe__clear_resource_flags_on_all(rsc->priv->scheduler, scheduler 642 lib/pacemaker/pcmk_output.c pe__clear_resource_flags_on_all(rsc->priv->scheduler, scheduler 1813 lib/pacemaker/pcmk_output.c pcmk_scheduler_t *scheduler = va_arg(args, pcmk_scheduler_t *); scheduler 1828 lib/pacemaker/pcmk_output.c CHECK_RC(rc, out->message(out, "cluster-summary", scheduler, pcmkd_state, scheduler 1832 lib/pacemaker/pcmk_output.c CHECK_RC(rc, out->message(out, "node-list", scheduler->nodes, unames, scheduler 1838 lib/pacemaker/pcmk_output.c CHECK_RC(rc, out->message(out, "resource-list", scheduler, show_opts, scheduler 1844 lib/pacemaker/pcmk_output.c CHECK_RC(rc, out->message(out, "node-attribute-list", scheduler, scheduler 1854 lib/pacemaker/pcmk_output.c CHECK_RC(rc, out->message(out, "node-summary", scheduler, unames, scheduler 1861 lib/pacemaker/pcmk_output.c && (scheduler->priv->failed != NULL) scheduler 1862 lib/pacemaker/pcmk_output.c && (scheduler->priv->failed->children != NULL)) { scheduler 1864 lib/pacemaker/pcmk_output.c CHECK_RC(rc, out->message(out, "failed-action-list", scheduler, unames, scheduler 1896 lib/pacemaker/pcmk_output.c scheduler->priv->ticket_constraints, scheduler 1902 lib/pacemaker/pcmk_output.c CHECK_RC(rc, out->message(out, "ban-list", scheduler, prefix, resources, scheduler 1952 lib/pacemaker/pcmk_output.c pcmk_scheduler_t *scheduler = va_arg(args, pcmk_scheduler_t *); scheduler 1964 lib/pacemaker/pcmk_output.c out->message(out, "cluster-summary", scheduler, pcmkd_state, section_opts, scheduler 1969 lib/pacemaker/pcmk_output.c out->message(out, "node-list", scheduler->nodes, unames, resources, scheduler 1978 lib/pacemaker/pcmk_output.c out->message(out, "resource-list", scheduler, full_show_opts, scheduler 1984 lib/pacemaker/pcmk_output.c out->message(out, "node-attribute-list", scheduler, show_opts, false, scheduler 1993 lib/pacemaker/pcmk_output.c out->message(out, "node-summary", scheduler, unames, scheduler 1999 lib/pacemaker/pcmk_output.c && (scheduler->priv->failed != NULL) scheduler 2000 lib/pacemaker/pcmk_output.c && (scheduler->priv->failed->children != NULL)) { scheduler 2002 lib/pacemaker/pcmk_output.c out->message(out, "failed-action-list", scheduler, unames, resources, scheduler 2015 lib/pacemaker/pcmk_output.c out->message(out, "ticket-list", scheduler->priv->ticket_constraints, scheduler 2021 lib/pacemaker/pcmk_output.c out->message(out, "ban-list", scheduler, prefix, resources, show_opts, scheduler 2035 lib/pacemaker/pcmk_output.c pcmk_scheduler_t *scheduler = va_arg(args, pcmk_scheduler_t *); scheduler 2048 lib/pacemaker/pcmk_output.c out->message(out, "cluster-summary", scheduler, pcmkd_state, section_opts, scheduler 2053 lib/pacemaker/pcmk_output.c out->message(out, "node-list", scheduler->nodes, unames, resources, scheduler 2059 lib/pacemaker/pcmk_output.c out->message(out, "resource-list", scheduler, show_opts, true, unames, scheduler 2065 lib/pacemaker/pcmk_output.c out->message(out, "node-attribute-list", scheduler, show_opts, false, scheduler 2074 lib/pacemaker/pcmk_output.c out->message(out, "node-summary", scheduler, unames, scheduler 2080 lib/pacemaker/pcmk_output.c && (scheduler->priv->failed != NULL) scheduler 2081 lib/pacemaker/pcmk_output.c && (scheduler->priv->failed->children != NULL)) { scheduler 2083 lib/pacemaker/pcmk_output.c out->message(out, "failed-action-list", scheduler, unames, resources, scheduler 2143 lib/pacemaker/pcmk_output.c out->message(out, "ticket-list", scheduler->priv->ticket_constraints, scheduler 2149 lib/pacemaker/pcmk_output.c out->message(out, "ban-list", scheduler, prefix, resources, show_opts, scheduler 45 lib/pacemaker/pcmk_resource.c history = get_xpath_object(xpath, rsc->priv->scheduler->input, LOG_NEVER); scheduler 230 lib/pacemaker/pcmk_resource.c overrides, true, rsc->priv->scheduler); scheduler 35 lib/pacemaker/pcmk_rule.c eval_rule(pcmk_scheduler_t *scheduler, const char *rule_id, const char **error) scheduler 47 lib/pacemaker/pcmk_rule.c cib_constraints = pcmk_find_cib_element(scheduler->input, scheduler 136 lib/pacemaker/pcmk_rule.c rc = pcmk__evaluate_date_expression(match, scheduler->priv->now, NULL); scheduler 163 lib/pacemaker/pcmk_rule.c pcmk_scheduler_t *scheduler = NULL; scheduler 173 lib/pacemaker/pcmk_rule.c rc = pcmk__init_scheduler(out, input, date, &scheduler); scheduler 180 lib/pacemaker/pcmk_rule.c int last_rc = eval_rule(scheduler, *rule_id, &error); scheduler 189 lib/pacemaker/pcmk_rule.c pe_free_working_set(scheduler); scheduler 225 lib/pacemaker/pcmk_sched_actions.c pcmk_scheduler_t *scheduler) scheduler 228 lib/pacemaker/pcmk_sched_actions.c filter, type, scheduler); scheduler 248 lib/pacemaker/pcmk_sched_actions.c pcmk_scheduler_t *scheduler) scheduler 281 lib/pacemaker/pcmk_sched_actions.c pcmk__ar_first_implies_then, scheduler); scheduler 299 lib/pacemaker/pcmk_sched_actions.c pcmk__ar_intermediate_stop, scheduler); scheduler 310 lib/pacemaker/pcmk_sched_actions.c pcmk__ar_then_implies_first, scheduler); scheduler 327 lib/pacemaker/pcmk_sched_actions.c pcmk__ar_promoted_then_implies_first, scheduler); scheduler 340 lib/pacemaker/pcmk_sched_actions.c scheduler); scheduler 375 lib/pacemaker/pcmk_sched_actions.c pcmk__ar_unrunnable_first_blocks, scheduler); scheduler 387 lib/pacemaker/pcmk_sched_actions.c pcmk__ar_unrunnable_first_blocks, scheduler); scheduler 405 lib/pacemaker/pcmk_sched_actions.c pcmk__ar_unmigratable_then_blocks, scheduler); scheduler 418 lib/pacemaker/pcmk_sched_actions.c scheduler); scheduler 430 lib/pacemaker/pcmk_sched_actions.c scheduler); scheduler 441 lib/pacemaker/pcmk_sched_actions.c scheduler); scheduler 513 lib/pacemaker/pcmk_sched_actions.c pcmk_scheduler_t *scheduler) scheduler 625 lib/pacemaker/pcmk_sched_actions.c other, scheduler); scheduler 651 lib/pacemaker/pcmk_sched_actions.c pcmk__update_action_for_orderings(other->action, scheduler); scheduler 653 lib/pacemaker/pcmk_sched_actions.c pcmk__update_action_for_orderings(first, scheduler); scheduler 672 lib/pacemaker/pcmk_sched_actions.c pcmk__update_action_for_orderings(then, scheduler); scheduler 676 lib/pacemaker/pcmk_sched_actions.c pcmk__update_action_for_orderings(other->action, scheduler); scheduler 846 lib/pacemaker/pcmk_sched_actions.c pcmk_scheduler_t *scheduler) scheduler 852 lib/pacemaker/pcmk_sched_actions.c pcmk__assert((first != NULL) && (then != NULL) && (scheduler != NULL)); scheduler 943 lib/pacemaker/pcmk_sched_actions.c pcmk__update_action_for_orderings(then, scheduler); scheduler 1070 lib/pacemaker/pcmk_sched_actions.c node, FALSE, node->priv->scheduler); scheduler 1401 lib/pacemaker/pcmk_sched_actions.c pcmk__output_actions(pcmk_scheduler_t *scheduler) scheduler 1403 lib/pacemaker/pcmk_sched_actions.c pcmk__output_t *out = scheduler->priv->out; scheduler 1406 lib/pacemaker/pcmk_sched_actions.c for (GList *iter = scheduler->priv->actions; scheduler 1452 lib/pacemaker/pcmk_sched_actions.c for (GList *iter = scheduler->priv->resources; scheduler 1504 lib/pacemaker/pcmk_sched_actions.c const pcmk_scheduler_t *scheduler) scheduler 1508 lib/pacemaker/pcmk_sched_actions.c if (!pcmk_is_set(scheduler->flags, pcmk__sched_sanitized)) { scheduler 1535 lib/pacemaker/pcmk_sched_actions.c rsc->priv->scheduler); scheduler 1539 lib/pacemaker/pcmk_sched_actions.c rsc->priv->scheduler); scheduler 1583 lib/pacemaker/pcmk_sched_actions.c rsc->priv->scheduler); scheduler 1590 lib/pacemaker/pcmk_sched_actions.c FALSE, rsc->priv->scheduler); scheduler 1596 lib/pacemaker/pcmk_sched_actions.c rsc->priv->scheduler); scheduler 1599 lib/pacemaker/pcmk_sched_actions.c rsc->priv->scheduler); scheduler 1639 lib/pacemaker/pcmk_sched_actions.c } else if (pcmk_is_set(rsc->priv->scheduler->flags, scheduler 1658 lib/pacemaker/pcmk_sched_actions.c rsc->priv->scheduler); scheduler 1660 lib/pacemaker/pcmk_sched_actions.c if (only_sanitized_changed(xml_op, digest_data, rsc->priv->scheduler)) { scheduler 1661 lib/pacemaker/pcmk_sched_actions.c if (!pcmk__is_daemon && (rsc->priv->scheduler->priv->out != NULL)) { scheduler 1662 lib/pacemaker/pcmk_sched_actions.c pcmk__output_t *out = rsc->priv->scheduler->priv->out; scheduler 1697 lib/pacemaker/pcmk_sched_actions.c rsc->priv->scheduler); scheduler 1843 lib/pacemaker/pcmk_sched_actions.c rsc->priv->scheduler); scheduler 1849 lib/pacemaker/pcmk_sched_actions.c rsc->priv->scheduler); scheduler 1881 lib/pacemaker/pcmk_sched_actions.c node->priv->scheduler); scheduler 1914 lib/pacemaker/pcmk_sched_actions.c pcmk__handle_rsc_config_changes(pcmk_scheduler_t *scheduler) scheduler 1922 lib/pacemaker/pcmk_sched_actions.c for (GList *iter = scheduler->nodes; iter != NULL; iter = iter->next) { scheduler 1936 lib/pacemaker/pcmk_sched_actions.c history = get_xpath_object(xpath, scheduler->input, LOG_NEVER); scheduler 126 lib/pacemaker/pcmk_sched_bundle.c pe__show_node_scores(!pcmk_is_set(rsc->priv->scheduler->flags, scheduler 129 lib/pacemaker/pcmk_sched_bundle.c rsc->priv->scheduler); scheduler 831 lib/pacemaker/pcmk_sched_bundle.c replica->remote->priv->scheduler); scheduler 908 lib/pacemaker/pcmk_sched_bundle.c replica->container->priv->scheduler); scheduler 983 lib/pacemaker/pcmk_sched_bundle.c bundle->priv->scheduler); scheduler 77 lib/pacemaker/pcmk_sched_clone.c pe__show_node_scores(!pcmk_is_set(rsc->priv->scheduler->flags, scheduler 80 lib/pacemaker/pcmk_sched_clone.c rsc->priv->scheduler); scheduler 431 lib/pacemaker/pcmk_sched_colocation.c dependent->priv->scheduler->priv->colocation_constraints = scheduler 432 lib/pacemaker/pcmk_sched_colocation.c g_list_prepend(dependent->priv->scheduler->priv->colocation_constraints, scheduler 478 lib/pacemaker/pcmk_sched_colocation.c const char *influence_s, pcmk_scheduler_t *scheduler) scheduler 539 lib/pacemaker/pcmk_sched_colocation.c pcmk__find_constraint_resource(scheduler->priv->resources, scheduler 580 lib/pacemaker/pcmk_sched_colocation.c pcmk__find_constraint_resource(scheduler->priv->resources, scheduler 601 lib/pacemaker/pcmk_sched_colocation.c pcmk__find_constraint_resource(scheduler->priv->resources, scheduler 626 lib/pacemaker/pcmk_sched_colocation.c pcmk_scheduler_t *scheduler) scheduler 653 lib/pacemaker/pcmk_sched_colocation.c rsc_1 = pcmk__find_constraint_resource(scheduler->priv->resources, scheduler 676 lib/pacemaker/pcmk_sched_colocation.c rsc_2 = pcmk__find_constraint_resource(scheduler->priv->resources, scheduler 700 lib/pacemaker/pcmk_sched_colocation.c rsc_2 = pcmk__find_constraint_resource(scheduler->priv->resources, scheduler 721 lib/pacemaker/pcmk_sched_colocation.c rsc_1 = pcmk__find_constraint_resource(scheduler->priv->resources, scheduler 746 lib/pacemaker/pcmk_sched_colocation.c rsc_1 = pcmk__find_constraint_resource(scheduler->priv->resources, scheduler 766 lib/pacemaker/pcmk_sched_colocation.c pcmk__find_constraint_resource(scheduler->priv->resources, scheduler 796 lib/pacemaker/pcmk_sched_colocation.c const char *influence_s, pcmk_scheduler_t *scheduler) scheduler 810 lib/pacemaker/pcmk_sched_colocation.c primary = pcmk__find_constraint_resource(scheduler->priv->resources, scheduler 812 lib/pacemaker/pcmk_sched_colocation.c dependent = pcmk__find_constraint_resource(scheduler->priv->resources, scheduler 840 lib/pacemaker/pcmk_sched_colocation.c pcmk_scheduler_t *scheduler) scheduler 870 lib/pacemaker/pcmk_sched_colocation.c *expanded_xml = pcmk__expand_tags_in_sets(xml_obj, scheduler); scheduler 882 lib/pacemaker/pcmk_sched_colocation.c if (!pcmk__valid_resource_or_tag(scheduler, dependent_id, &dependent, scheduler 889 lib/pacemaker/pcmk_sched_colocation.c if (!pcmk__valid_resource_or_tag(scheduler, primary_id, &primary, scheduler 917 lib/pacemaker/pcmk_sched_colocation.c scheduler)) { scheduler 938 lib/pacemaker/pcmk_sched_colocation.c scheduler)) { scheduler 973 lib/pacemaker/pcmk_sched_colocation.c pcmk__unpack_colocation(xmlNode *xml_obj, pcmk_scheduler_t *scheduler) scheduler 993 lib/pacemaker/pcmk_sched_colocation.c scheduler) != pcmk_rc_ok) { scheduler 1016 lib/pacemaker/pcmk_sched_colocation.c set = pcmk__xe_resolve_idref(set, scheduler->input); scheduler 1029 lib/pacemaker/pcmk_sched_colocation.c unpack_colocation_set(set, score_i, id, influence_s, scheduler); scheduler 1032 lib/pacemaker/pcmk_sched_colocation.c colocate_rsc_sets(id, last, set, score_i, influence_s, scheduler); scheduler 1043 lib/pacemaker/pcmk_sched_colocation.c unpack_simple_colocation(xml_obj, id, score_i, influence_s, scheduler); scheduler 1117 lib/pacemaker/pcmk_sched_colocation.c pcmk__update_action_for_orderings(action, rsc->priv->scheduler); scheduler 1565 lib/pacemaker/pcmk_sched_colocation.c for (GList *loc_iter = rsc->priv->scheduler->priv->location_constraints; scheduler 1885 lib/pacemaker/pcmk_sched_colocation.c source_rsc->priv->scheduler); scheduler 40 lib/pacemaker/pcmk_sched_constraints.c pcmk__unpack_constraints(pcmk_scheduler_t *scheduler) scheduler 42 lib/pacemaker/pcmk_sched_constraints.c xmlNode *xml_constraints = pcmk_find_cib_element(scheduler->input, scheduler 61 lib/pacemaker/pcmk_sched_constraints.c pcmk__unpack_ordering(xml_obj, scheduler); scheduler 64 lib/pacemaker/pcmk_sched_constraints.c pcmk__unpack_colocation(xml_obj, scheduler); scheduler 67 lib/pacemaker/pcmk_sched_constraints.c pcmk__unpack_location(xml_obj, scheduler); scheduler 70 lib/pacemaker/pcmk_sched_constraints.c pcmk__unpack_rsc_ticket(xml_obj, scheduler); scheduler 115 lib/pacemaker/pcmk_sched_constraints.c find_constraint_tag(const pcmk_scheduler_t *scheduler, const char *id, scheduler 121 lib/pacemaker/pcmk_sched_constraints.c if (g_hash_table_lookup_extended(scheduler->priv->templates, id, scheduler 131 lib/pacemaker/pcmk_sched_constraints.c if (g_hash_table_lookup_extended(scheduler->priv->tags, id, scheduler 196 lib/pacemaker/pcmk_sched_constraints.c pcmk__valid_resource_or_tag(const pcmk_scheduler_t *scheduler, const char *id, scheduler 200 lib/pacemaker/pcmk_sched_constraints.c *rsc = pcmk__find_constraint_resource(scheduler->priv->resources, id); scheduler 206 lib/pacemaker/pcmk_sched_constraints.c if ((tag != NULL) && find_constraint_tag(scheduler, id, tag)) { scheduler 231 lib/pacemaker/pcmk_sched_constraints.c pcmk__expand_tags_in_sets(xmlNode *xml_obj, const pcmk_scheduler_t *scheduler) scheduler 259 lib/pacemaker/pcmk_sched_constraints.c if (!pcmk__valid_resource_or_tag(scheduler, pcmk__xe_id(xml_rsc), scheduler 353 lib/pacemaker/pcmk_sched_constraints.c bool convert_rsc, const pcmk_scheduler_t *scheduler) scheduler 377 lib/pacemaker/pcmk_sched_constraints.c if (!pcmk__valid_resource_or_tag(scheduler, id, &rsc, &tag)) { scheduler 433 lib/pacemaker/pcmk_sched_constraints.c pcmk__create_internal_constraints(pcmk_scheduler_t *scheduler) scheduler 436 lib/pacemaker/pcmk_sched_constraints.c for (GList *iter = scheduler->priv->resources; scheduler 207 lib/pacemaker/pcmk_sched_fencing.c pcmk__ar_ordered, rsc->private->scheduler); scheduler 294 lib/pacemaker/pcmk_sched_fencing.c pcmk__order_vs_fence(pcmk_action_t *stonith_op, pcmk_scheduler_t *scheduler) scheduler 296 lib/pacemaker/pcmk_sched_fencing.c CRM_CHECK(stonith_op && scheduler, return); scheduler 297 lib/pacemaker/pcmk_sched_fencing.c for (GList *r = scheduler->priv->resources; r != NULL; r = r->next) { scheduler 324 lib/pacemaker/pcmk_sched_fencing.c && pcmk_is_set(rsc->priv->scheduler->flags, scheduler 333 lib/pacemaker/pcmk_sched_fencing.c FALSE, node->priv->scheduler); scheduler 343 lib/pacemaker/pcmk_sched_fencing.c node->priv->scheduler); scheduler 390 lib/pacemaker/pcmk_sched_fencing.c FALSE, node->priv->scheduler); scheduler 401 lib/pacemaker/pcmk_sched_fencing.c node->priv->scheduler); scheduler 444 lib/pacemaker/pcmk_sched_fencing.c pcmk__order_vs_fence(stonith_op, node->priv->scheduler); scheduler 479 lib/pacemaker/pcmk_sched_fencing.c false, rsc->priv->scheduler); scheduler 502 lib/pacemaker/pcmk_sched_fencing.c rsc->priv->scheduler); scheduler 508 lib/pacemaker/pcmk_sched_fencing.c rsc->priv->scheduler); scheduler 67 lib/pacemaker/pcmk_sched_group.c pe__show_node_scores(!pcmk_is_set(rsc->priv->scheduler->flags, scheduler 70 lib/pacemaker/pcmk_sched_group.c rsc->priv->scheduler); scheduler 110 lib/pacemaker/pcmk_sched_group.c group->priv->scheduler); scheduler 642 lib/pacemaker/pcmk_sched_group.c pcmk_scheduler_t *scheduler) scheduler 648 lib/pacemaker/pcmk_sched_group.c && (scheduler != NULL)); scheduler 652 lib/pacemaker/pcmk_sched_group.c type, scheduler); scheduler 670 lib/pacemaker/pcmk_sched_group.c scheduler); scheduler 864 lib/pacemaker/pcmk_sched_instances.c collective->priv->scheduler); scheduler 1457 lib/pacemaker/pcmk_sched_instances.c filter, type, then->rsc->priv->scheduler); scheduler 1540 lib/pacemaker/pcmk_sched_instances.c pcmk_scheduler_t *scheduler = instance->priv->scheduler; scheduler 1561 lib/pacemaker/pcmk_sched_instances.c type, scheduler); scheduler 1569 lib/pacemaker/pcmk_sched_instances.c pcmk__update_action_for_orderings(after->action, scheduler); scheduler 1603 lib/pacemaker/pcmk_sched_instances.c pcmk_scheduler_t *scheduler) scheduler 1605 lib/pacemaker/pcmk_sched_instances.c pcmk__assert((first != NULL) && (then != NULL) && (scheduler != NULL)); scheduler 1619 lib/pacemaker/pcmk_sched_instances.c filter, type, scheduler); scheduler 210 lib/pacemaker/pcmk_sched_location.c rule_xml = pcmk__xe_resolve_idref(rule_xml, rsc->priv->scheduler->input); scheduler 263 lib/pacemaker/pcmk_sched_location.c for (iter = rsc->priv->scheduler->nodes; scheduler 271 lib/pacemaker/pcmk_sched_location.c rsc->priv->scheduler); scheduler 329 lib/pacemaker/pcmk_sched_location.c pcmk_node_t *match = pcmk_find_node(rsc->priv->scheduler, node); scheduler 371 lib/pacemaker/pcmk_sched_location.c .now = rsc->priv->scheduler->priv->now, scheduler 387 lib/pacemaker/pcmk_sched_location.c pe__update_recheck_time(t, rsc->priv->scheduler, scheduler 395 lib/pacemaker/pcmk_sched_location.c unpack_simple_location(xmlNode *xml_obj, pcmk_scheduler_t *scheduler) scheduler 403 lib/pacemaker/pcmk_sched_location.c rsc = pcmk__find_constraint_resource(scheduler->priv->resources, value); scheduler 424 lib/pacemaker/pcmk_sched_location.c for (GList *iter = scheduler->priv->resources; scheduler 465 lib/pacemaker/pcmk_sched_location.c pcmk_scheduler_t *scheduler) scheduler 486 lib/pacemaker/pcmk_sched_location.c *expanded_xml = pcmk__expand_tags_in_sets(xml_obj, scheduler); scheduler 497 lib/pacemaker/pcmk_sched_location.c if (!pcmk__valid_resource_or_tag(scheduler, rsc_id, &rsc, &tag)) { scheduler 515 lib/pacemaker/pcmk_sched_location.c false, scheduler)) { scheduler 543 lib/pacemaker/pcmk_sched_location.c pcmk_scheduler_t *scheduler) scheduler 568 lib/pacemaker/pcmk_sched_location.c resource = pcmk__find_constraint_resource(scheduler->priv->resources, scheduler 584 lib/pacemaker/pcmk_sched_location.c pcmk__unpack_location(xmlNode *xml_obj, pcmk_scheduler_t *scheduler) scheduler 592 lib/pacemaker/pcmk_sched_location.c if (unpack_location_tags(xml_obj, &expanded_xml, scheduler) != pcmk_rc_ok) { scheduler 605 lib/pacemaker/pcmk_sched_location.c set = pcmk__xe_resolve_idref(set, scheduler->input); scheduler 607 lib/pacemaker/pcmk_sched_location.c || (unpack_location_set(xml_obj, set, scheduler) != pcmk_rc_ok)) { scheduler 622 lib/pacemaker/pcmk_sched_location.c unpack_simple_location(xml_obj, scheduler); scheduler 688 lib/pacemaker/pcmk_sched_location.c rsc->priv->scheduler->priv->location_constraints = scheduler 689 lib/pacemaker/pcmk_sched_location.c g_list_prepend(rsc->priv->scheduler->priv->location_constraints, scheduler 704 lib/pacemaker/pcmk_sched_location.c pcmk__apply_locations(pcmk_scheduler_t *scheduler) scheduler 706 lib/pacemaker/pcmk_sched_location.c for (GList *iter = scheduler->priv->location_constraints; scheduler 65 lib/pacemaker/pcmk_sched_migration.c rsc->priv->scheduler); scheduler 71 lib/pacemaker/pcmk_sched_migration.c rsc->priv->scheduler); scheduler 89 lib/pacemaker/pcmk_sched_migration.c NULL, pcmk__ar_ordered, rsc->priv->scheduler); scheduler 96 lib/pacemaker/pcmk_sched_migration.c rsc->priv->scheduler); scheduler 106 lib/pacemaker/pcmk_sched_migration.c NULL, pcmk__ar_ordered, rsc->priv->scheduler); scheduler 115 lib/pacemaker/pcmk_sched_migration.c rsc->priv->scheduler); scheduler 123 lib/pacemaker/pcmk_sched_migration.c rsc->priv->scheduler); scheduler 302 lib/pacemaker/pcmk_sched_migration.c NULL, flags, order->rsc1->priv->scheduler); scheduler 320 lib/pacemaker/pcmk_sched_migration.c NULL, flags, order->rsc1->priv->scheduler); scheduler 342 lib/pacemaker/pcmk_sched_migration.c NULL, flags, order->rsc1->priv->scheduler); scheduler 352 lib/pacemaker/pcmk_sched_migration.c NULL, flags, order->rsc1->priv->scheduler); scheduler 369 lib/pacemaker/pcmk_sched_migration.c NULL, flags, order->rsc1->priv->scheduler); scheduler 386 lib/pacemaker/pcmk_sched_migration.c NULL, flags, order->rsc1->priv->scheduler); scheduler 397 lib/pacemaker/pcmk_sched_migration.c order->rsc1->priv->scheduler); scheduler 252 lib/pacemaker/pcmk_sched_nodes.c if (pcmk__str_eq(node1->priv->scheduler->priv->placement_strategy, scheduler 257 lib/pacemaker/pcmk_sched_nodes.c if (pcmk__str_eq(node1->priv->scheduler->priv->placement_strategy, scheduler 368 lib/pacemaker/pcmk_sched_nodes.c pcmk__apply_node_health(pcmk_scheduler_t *scheduler) scheduler 373 lib/pacemaker/pcmk_sched_nodes.c pcmk__cluster_option(scheduler->priv->options, scheduler 384 lib/pacemaker/pcmk_sched_nodes.c base_health = pcmk__health_score(PCMK_OPT_NODE_HEALTH_BASE, scheduler); scheduler 387 lib/pacemaker/pcmk_sched_nodes.c for (GList *iter = scheduler->nodes; iter != NULL; iter = iter->next) { scheduler 399 lib/pacemaker/pcmk_sched_nodes.c for (GList *r = scheduler->priv->resources; r != NULL; r = r->next) { scheduler 33 lib/pacemaker/pcmk_sched_ordering.c __rsc = pcmk__find_constraint_resource(scheduler->priv->resources, \ scheduler 239 lib/pacemaker/pcmk_sched_ordering.c const pcmk_scheduler_t *scheduler) scheduler 250 lib/pacemaker/pcmk_sched_ordering.c rsc = pcmk__find_constraint_resource(scheduler->priv->resources, rsc_id); scheduler 327 lib/pacemaker/pcmk_sched_ordering.c rsc_first->priv->scheduler); scheduler 346 lib/pacemaker/pcmk_sched_ordering.c rsc_first->priv->scheduler); scheduler 353 lib/pacemaker/pcmk_sched_ordering.c rsc_first->priv->scheduler); scheduler 387 lib/pacemaker/pcmk_sched_ordering.c unpack_simple_rsc_order(xmlNode *xml_obj, pcmk_scheduler_t *scheduler) scheduler 409 lib/pacemaker/pcmk_sched_ordering.c rsc_first = get_ordering_resource(xml_obj, PCMK_XA_FIRST, scheduler); scheduler 414 lib/pacemaker/pcmk_sched_ordering.c rsc_then = get_ordering_resource(xml_obj, PCMK_XA_THEN, scheduler); scheduler 553 lib/pacemaker/pcmk_sched_ordering.c const char *parent_symmetrical_s, pcmk_scheduler_t *scheduler) scheduler 618 lib/pacemaker/pcmk_sched_ordering.c then_key, NULL, flags, scheduler); scheduler 674 lib/pacemaker/pcmk_sched_ordering.c enum pe_order_kind kind, pcmk_scheduler_t *scheduler, scheduler 724 lib/pacemaker/pcmk_sched_ordering.c pcmk_action_t *unordered_action = get_pseudo_op(task, scheduler); scheduler 744 lib/pacemaker/pcmk_sched_ordering.c scheduler); scheduler 760 lib/pacemaker/pcmk_sched_ordering.c scheduler); scheduler 876 lib/pacemaker/pcmk_sched_ordering.c const pcmk_scheduler_t *scheduler) scheduler 893 lib/pacemaker/pcmk_sched_ordering.c *expanded_xml = pcmk__expand_tags_in_sets(xml_obj, scheduler); scheduler 905 lib/pacemaker/pcmk_sched_ordering.c if (!pcmk__valid_resource_or_tag(scheduler, id_first, &rsc_first, scheduler 913 lib/pacemaker/pcmk_sched_ordering.c if (!pcmk__valid_resource_or_tag(scheduler, id_then, &rsc_then, scheduler 935 lib/pacemaker/pcmk_sched_ordering.c scheduler)) { scheduler 956 lib/pacemaker/pcmk_sched_ordering.c scheduler)) { scheduler 991 lib/pacemaker/pcmk_sched_ordering.c pcmk__unpack_ordering(xmlNode *xml_obj, pcmk_scheduler_t *scheduler) scheduler 1007 lib/pacemaker/pcmk_sched_ordering.c if (unpack_order_tags(xml_obj, &expanded_xml, scheduler) != pcmk_rc_ok) { scheduler 1019 lib/pacemaker/pcmk_sched_ordering.c set = pcmk__xe_resolve_idref(set, scheduler->input); scheduler 1021 lib/pacemaker/pcmk_sched_ordering.c || (unpack_order_set(set, kind, invert, scheduler) != pcmk_rc_ok)) { scheduler 1031 lib/pacemaker/pcmk_sched_ordering.c if (order_rsc_sets(id, last, set, kind, scheduler, scheduler 1040 lib/pacemaker/pcmk_sched_ordering.c && (order_rsc_sets(id, set, last, kind, scheduler, scheduler 1059 lib/pacemaker/pcmk_sched_ordering.c return unpack_simple_rsc_order(xml_obj, scheduler); scheduler 1096 lib/pacemaker/pcmk_sched_ordering.c pcmk__disable_invalid_orderings(pcmk_scheduler_t *scheduler) scheduler 1098 lib/pacemaker/pcmk_sched_ordering.c for (GList *iter = scheduler->priv->actions; scheduler 1125 lib/pacemaker/pcmk_sched_ordering.c for (GList *iter = node->priv->scheduler->priv->actions; scheduler 1172 lib/pacemaker/pcmk_sched_ordering.c node->priv->scheduler); scheduler 1333 lib/pacemaker/pcmk_sched_ordering.c first_rsc->priv->scheduler); scheduler 349 lib/pacemaker/pcmk_sched_primitive.c pcmk_node_t *remote_node = pcmk_find_node(connection->priv->scheduler, scheduler 402 lib/pacemaker/pcmk_sched_primitive.c pcmk_scheduler_t *scheduler = NULL; scheduler 405 lib/pacemaker/pcmk_sched_primitive.c scheduler = rsc->priv->scheduler; scheduler 434 lib/pacemaker/pcmk_sched_primitive.c rsc->priv->allowed_nodes, scheduler); scheduler 458 lib/pacemaker/pcmk_sched_primitive.c rsc->priv->allowed_nodes, scheduler); scheduler 486 lib/pacemaker/pcmk_sched_primitive.c PCMK_META_TARGET_ROLE, scheduler); scheduler 489 lib/pacemaker/pcmk_sched_primitive.c && !pcmk_is_set(scheduler->flags, pcmk__sched_quorate) scheduler 490 lib/pacemaker/pcmk_sched_primitive.c && (scheduler->no_quorum_policy == pcmk_no_quorum_freeze)) { scheduler 499 lib/pacemaker/pcmk_sched_primitive.c pe__show_node_scores(!pcmk_is_set(scheduler->flags, scheduler 501 lib/pacemaker/pcmk_sched_primitive.c rsc, __func__, rsc->priv->allowed_nodes, scheduler); scheduler 504 lib/pacemaker/pcmk_sched_primitive.c if (pcmk_is_set(scheduler->flags, pcmk__sched_fencing_enabled) scheduler 505 lib/pacemaker/pcmk_sched_primitive.c && !pcmk_is_set(scheduler->flags, pcmk__sched_have_fencing)) { scheduler 530 lib/pacemaker/pcmk_sched_primitive.c } else if (pcmk_is_set(scheduler->flags, pcmk__sched_stop_all)) { scheduler 795 lib/pacemaker/pcmk_sched_primitive.c pcmk__sched_err(rsc->priv->scheduler, scheduler 930 lib/pacemaker/pcmk_sched_primitive.c pcmk_scheduler_t *scheduler = NULL; scheduler 933 lib/pacemaker/pcmk_sched_primitive.c scheduler = rsc->priv->scheduler; scheduler 944 lib/pacemaker/pcmk_sched_primitive.c && pcmk_is_set(scheduler->flags, scheduler 950 lib/pacemaker/pcmk_sched_primitive.c && !pcmk__str_eq(scheduler->priv->placement_strategy, scheduler 958 lib/pacemaker/pcmk_sched_primitive.c |pcmk__ar_intermediate_stop, scheduler); scheduler 969 lib/pacemaker/pcmk_sched_primitive.c pcmk__ar_promoted_then_implies_first, scheduler); scheduler 975 lib/pacemaker/pcmk_sched_primitive.c pcmk__ar_unrunnable_first_blocks, scheduler); scheduler 984 lib/pacemaker/pcmk_sched_primitive.c scheduler); scheduler 1037 lib/pacemaker/pcmk_sched_primitive.c pe__resource_contains_guest_node(scheduler, scheduler 1070 lib/pacemaker/pcmk_sched_primitive.c |pcmk__ar_unrunnable_first_blocks, scheduler); scheduler 1078 lib/pacemaker/pcmk_sched_primitive.c NULL, pcmk__ar_then_implies_first, scheduler); scheduler 1331 lib/pacemaker/pcmk_sched_primitive.c rsc->priv->scheduler); scheduler 1335 lib/pacemaker/pcmk_sched_primitive.c pcmk__sched_err(rsc->priv->scheduler, scheduler 1626 lib/pacemaker/pcmk_sched_primitive.c return (result == 0)? get_effective_time(node->priv->scheduler) : result; scheduler 1644 lib/pacemaker/pcmk_sched_primitive.c PCMK_OPT_SHUTDOWN_LOCK, rsc->priv->scheduler); scheduler 1652 lib/pacemaker/pcmk_sched_primitive.c pcmk_scheduler_t *scheduler = NULL; scheduler 1655 lib/pacemaker/pcmk_sched_primitive.c scheduler = rsc->priv->scheduler; scheduler 1700 lib/pacemaker/pcmk_sched_primitive.c if (scheduler->priv->shutdown_lock_ms > 0U) { scheduler 1702 lib/pacemaker/pcmk_sched_primitive.c + pcmk__timeout_ms2s(scheduler->priv->shutdown_lock_ms); scheduler 1707 lib/pacemaker/pcmk_sched_primitive.c pe__update_recheck_time(++lock_expiration, scheduler, scheduler 1715 lib/pacemaker/pcmk_sched_primitive.c g_list_foreach(scheduler->nodes, ban_if_not_locked, rsc); scheduler 89 lib/pacemaker/pcmk_sched_probes.c pcmk__ar_ordered, rsc1->priv->scheduler); scheduler 145 lib/pacemaker/pcmk_sched_probes.c rsc->priv->scheduler); scheduler 175 lib/pacemaker/pcmk_sched_probes.c if (!pcmk_is_set(rsc->priv->scheduler->flags, scheduler 187 lib/pacemaker/pcmk_sched_probes.c && pe__resource_contains_guest_node(rsc->priv->scheduler, scheduler 264 lib/pacemaker/pcmk_sched_probes.c NULL, pcmk__ar_ordered, rsc->priv->scheduler); scheduler 292 lib/pacemaker/pcmk_sched_probes.c flags, rsc->priv->scheduler); scheduler 294 lib/pacemaker/pcmk_sched_probes.c pcmk__ar_ordered, rsc->priv->scheduler); scheduler 354 lib/pacemaker/pcmk_sched_probes.c add_probe_orderings_for_stops(pcmk_scheduler_t *scheduler) scheduler 356 lib/pacemaker/pcmk_sched_probes.c for (GList *iter = scheduler->priv->ordering_constraints; scheduler 688 lib/pacemaker/pcmk_sched_probes.c clear_actions_tracking_flag(pcmk_scheduler_t *scheduler) scheduler 690 lib/pacemaker/pcmk_sched_probes.c for (GList *iter = scheduler->priv->actions; scheduler 732 lib/pacemaker/pcmk_sched_probes.c clear_actions_tracking_flag(rsc->priv->scheduler); scheduler 748 lib/pacemaker/pcmk_sched_probes.c order_then_probes(pcmk_scheduler_t *scheduler) scheduler 780 lib/pacemaker/pcmk_sched_probes.c for (GList *iter = scheduler->priv->resources; scheduler 860 lib/pacemaker/pcmk_sched_probes.c pcmk__order_probes(pcmk_scheduler_t *scheduler) scheduler 863 lib/pacemaker/pcmk_sched_probes.c g_list_foreach(scheduler->priv->resources, scheduler 865 lib/pacemaker/pcmk_sched_probes.c add_probe_orderings_for_stops(scheduler); scheduler 867 lib/pacemaker/pcmk_sched_probes.c order_then_probes(scheduler); scheduler 879 lib/pacemaker/pcmk_sched_probes.c pcmk__schedule_probes(pcmk_scheduler_t *scheduler) scheduler 882 lib/pacemaker/pcmk_sched_probes.c for (GList *iter = scheduler->nodes; iter != NULL; iter = iter->next) { scheduler 887 lib/pacemaker/pcmk_sched_probes.c pe_fence_node(scheduler, node, scheduler 903 lib/pacemaker/pcmk_sched_probes.c pcmk__probe_resource_list(scheduler->priv->resources, node); scheduler 226 lib/pacemaker/pcmk_sched_promotable.c pcmk__sched_err(node->priv->scheduler, scheduler 470 lib/pacemaker/pcmk_sched_promotable.c clone->priv->scheduler); scheduler 484 lib/pacemaker/pcmk_sched_promotable.c clone->priv->scheduler); scheduler 912 lib/pacemaker/pcmk_sched_promotable.c if (pcmk_is_set(instance->priv->scheduler->flags, scheduler 915 lib/pacemaker/pcmk_sched_promotable.c && (instance->priv->scheduler->priv->out != NULL)) { scheduler 917 lib/pacemaker/pcmk_sched_promotable.c pcmk__output_t *out = instance->priv->scheduler->priv->out; scheduler 1045 lib/pacemaker/pcmk_sched_promotable.c const pcmk_scheduler_t *scheduler = instance->priv->scheduler; scheduler 1065 lib/pacemaker/pcmk_sched_promotable.c && !pcmk_is_set(scheduler->flags, pcmk__sched_quorate) scheduler 1066 lib/pacemaker/pcmk_sched_promotable.c && (scheduler->no_quorum_policy == pcmk_no_quorum_freeze)) { scheduler 306 lib/pacemaker/pcmk_sched_recurring.c rsc->priv->scheduler); scheduler 326 lib/pacemaker/pcmk_sched_recurring.c rsc->priv->scheduler); scheduler 354 lib/pacemaker/pcmk_sched_recurring.c rsc->priv->scheduler); scheduler 360 lib/pacemaker/pcmk_sched_recurring.c rsc->priv->scheduler); scheduler 367 lib/pacemaker/pcmk_sched_recurring.c rsc->priv->scheduler); scheduler 374 lib/pacemaker/pcmk_sched_recurring.c rsc->priv->scheduler); scheduler 415 lib/pacemaker/pcmk_sched_recurring.c rsc->priv->scheduler); scheduler 485 lib/pacemaker/pcmk_sched_recurring.c rsc->priv->scheduler); scheduler 520 lib/pacemaker/pcmk_sched_recurring.c for (GList *iter = rsc->priv->scheduler->nodes; scheduler 549 lib/pacemaker/pcmk_sched_recurring.c is_optional, rsc->priv->scheduler); scheduler 669 lib/pacemaker/pcmk_sched_recurring.c rsc->priv->scheduler); scheduler 712 lib/pacemaker/pcmk_sched_recurring.c pcmk__ar_ordered, rsc->priv->scheduler); scheduler 731 lib/pacemaker/pcmk_sched_recurring.c NULL, rsc->priv->scheduler); scheduler 733 lib/pacemaker/pcmk_sched_recurring.c task, node, TRUE, rsc->priv->scheduler); scheduler 71 lib/pacemaker/pcmk_sched_remote.c first_rsc->priv->scheduler); scheduler 83 lib/pacemaker/pcmk_sched_remote.c then_rsc->priv->scheduler); scheduler 227 lib/pacemaker/pcmk_sched_remote.c pe_fence_node(remote_rsc->priv->scheduler, action->node, scheduler 279 lib/pacemaker/pcmk_sched_remote.c pe_fence_node(remote_rsc->priv->scheduler, action->node, scheduler 317 lib/pacemaker/pcmk_sched_remote.c pe_fence_node(action->rsc->priv->scheduler, action->node, scheduler 394 lib/pacemaker/pcmk_sched_remote.c pcmk__order_remote_connection_actions(pcmk_scheduler_t *scheduler) scheduler 396 lib/pacemaker/pcmk_sched_remote.c if (!pcmk_is_set(scheduler->flags, pcmk__sched_have_remote_nodes)) { scheduler 402 lib/pacemaker/pcmk_sched_remote.c for (GList *iter = scheduler->priv->actions; scheduler 423 lib/pacemaker/pcmk_sched_remote.c NULL, pcmk__ar_ordered, scheduler); scheduler 468 lib/pacemaker/pcmk_sched_remote.c pcmk__ar_ordered, scheduler); scheduler 657 lib/pacemaker/pcmk_sched_remote.c GHashTable *base = pe_rsc_params(rsc, NULL, rsc->priv->scheduler); scheduler 128 lib/pacemaker/pcmk_sched_resource.c rsc->priv->scheduler); scheduler 140 lib/pacemaker/pcmk_sched_resource.c rsc->priv->scheduler); scheduler 186 lib/pacemaker/pcmk_sched_resource.c pcmk__rscs_matching_id(const char *id, const pcmk_scheduler_t *scheduler) scheduler 190 lib/pacemaker/pcmk_sched_resource.c CRM_CHECK((id != NULL) && (scheduler != NULL), return NULL); scheduler 192 lib/pacemaker/pcmk_sched_resource.c for (GList *iter = scheduler->priv->resources; scheduler 225 lib/pacemaker/pcmk_sched_resource.c pcmk__set_assignment_methods(pcmk_scheduler_t *scheduler) scheduler 227 lib/pacemaker/pcmk_sched_resource.c g_list_foreach(scheduler->priv->resources, set_assignment_methods_for_rsc, scheduler 333 lib/pacemaker/pcmk_sched_resource.c out = rsc->priv->scheduler->priv->out; scheduler 419 lib/pacemaker/pcmk_sched_resource.c pcmk_scheduler_t *scheduler = NULL; scheduler 422 lib/pacemaker/pcmk_sched_resource.c scheduler = rsc->priv->scheduler; scheduler 523 lib/pacemaker/pcmk_sched_resource.c if (pcmk_is_set(scheduler->flags, pcmk__sched_show_utilization)) { scheduler 524 lib/pacemaker/pcmk_sched_resource.c pcmk__output_t *out = scheduler->priv->out; scheduler 623 lib/pacemaker/pcmk_sched_resource.c pcmk__sched_warn(rsc->priv->scheduler, scheduler 726 lib/pacemaker/pcmk_sched_resource.c resource1->priv->scheduler); scheduler 728 lib/pacemaker/pcmk_sched_resource.c resource2->priv->scheduler); scheduler 792 lib/pacemaker/pcmk_sched_resource.c pcmk__sort_resources(pcmk_scheduler_t *scheduler) scheduler 794 lib/pacemaker/pcmk_sched_resource.c GList *nodes = g_list_copy(scheduler->nodes); scheduler 797 lib/pacemaker/pcmk_sched_resource.c scheduler->priv->resources = scheduler 798 lib/pacemaker/pcmk_sched_resource.c g_list_sort_with_data(scheduler->priv->resources, cmp_resources, nodes); scheduler 96 lib/pacemaker/pcmk_sched_tickets.c rsc->priv->scheduler); scheduler 104 lib/pacemaker/pcmk_sched_tickets.c rsc->priv->scheduler); scheduler 115 lib/pacemaker/pcmk_sched_tickets.c rsc->priv->scheduler); scheduler 120 lib/pacemaker/pcmk_sched_tickets.c pe_fence_node(rsc->priv->scheduler, scheduler 142 lib/pacemaker/pcmk_sched_tickets.c "__no_ticket__", rsc->priv->scheduler); scheduler 150 lib/pacemaker/pcmk_sched_tickets.c "__ticket_standby__", rsc->priv->scheduler); scheduler 179 lib/pacemaker/pcmk_sched_tickets.c if (pcmk_is_set(rsc->priv->scheduler->flags, scheduler 243 lib/pacemaker/pcmk_sched_tickets.c const char *loss_policy, pcmk_scheduler_t *scheduler) scheduler 267 lib/pacemaker/pcmk_sched_tickets.c resource = pcmk__find_constraint_resource(scheduler->priv->resources, scheduler 283 lib/pacemaker/pcmk_sched_tickets.c unpack_simple_rsc_ticket(xmlNode *xml_obj, pcmk_scheduler_t *scheduler) scheduler 310 lib/pacemaker/pcmk_sched_tickets.c ticket = g_hash_table_lookup(scheduler->priv->ticket_constraints, scheduler 324 lib/pacemaker/pcmk_sched_tickets.c rsc = pcmk__find_constraint_resource(scheduler->priv->resources, scheduler 340 lib/pacemaker/pcmk_sched_tickets.c pcmk_scheduler_t *scheduler) scheduler 363 lib/pacemaker/pcmk_sched_tickets.c *expanded_xml = pcmk__expand_tags_in_sets(xml_obj, scheduler); scheduler 374 lib/pacemaker/pcmk_sched_tickets.c if (!pcmk__valid_resource_or_tag(scheduler, rsc_id, &rsc, &tag)) { scheduler 392 lib/pacemaker/pcmk_sched_tickets.c scheduler)) { scheduler 416 lib/pacemaker/pcmk_sched_tickets.c pcmk__unpack_rsc_ticket(xmlNode *xml_obj, pcmk_scheduler_t *scheduler) scheduler 438 lib/pacemaker/pcmk_sched_tickets.c if (scheduler->priv->ticket_constraints == NULL) { scheduler 439 lib/pacemaker/pcmk_sched_tickets.c scheduler->priv->ticket_constraints = scheduler 448 lib/pacemaker/pcmk_sched_tickets.c ticket = g_hash_table_lookup(scheduler->priv->ticket_constraints, scheduler 453 lib/pacemaker/pcmk_sched_tickets.c ticket = ticket_new(ticket_str, scheduler); scheduler 460 lib/pacemaker/pcmk_sched_tickets.c scheduler) != pcmk_rc_ok) { scheduler 474 lib/pacemaker/pcmk_sched_tickets.c set = pcmk__xe_resolve_idref(set, scheduler->input); scheduler 479 lib/pacemaker/pcmk_sched_tickets.c scheduler) != pcmk_rc_ok)) { scheduler 493 lib/pacemaker/pcmk_sched_tickets.c unpack_simple_rsc_ticket(xml_obj, scheduler); scheduler 520 lib/pacemaker/pcmk_sched_tickets.c rsc->priv->scheduler); scheduler 315 lib/pacemaker/pcmk_sched_utilization.c if (pcmk__str_eq(rsc->priv->scheduler->priv->placement_strategy, scheduler 365 lib/pacemaker/pcmk_sched_utilization.c rsc->priv->scheduler); scheduler 381 lib/pacemaker/pcmk_sched_utilization.c rsc->priv->scheduler); scheduler 391 lib/pacemaker/pcmk_sched_utilization.c rsc->priv->allowed_nodes, rsc->priv->scheduler); scheduler 409 lib/pacemaker/pcmk_sched_utilization.c node->priv->scheduler); scheduler 435 lib/pacemaker/pcmk_sched_utilization.c rsc->id, rsc->priv->scheduler->priv->placement_strategy); scheduler 442 lib/pacemaker/pcmk_sched_utilization.c rsc->priv->scheduler); scheduler 450 lib/pacemaker/pcmk_sched_utilization.c rsc->priv->scheduler); scheduler 456 lib/pacemaker/pcmk_sched_utilization.c rsc->priv->scheduler); scheduler 468 lib/pacemaker/pcmk_sched_utilization.c pcmk__show_node_capacities(const char *desc, pcmk_scheduler_t *scheduler) scheduler 470 lib/pacemaker/pcmk_sched_utilization.c if (!pcmk_is_set(scheduler->flags, pcmk__sched_show_utilization)) { scheduler 473 lib/pacemaker/pcmk_sched_utilization.c for (const GList *iter = scheduler->nodes; scheduler 476 lib/pacemaker/pcmk_sched_utilization.c pcmk__output_t *out = scheduler->priv->out; scheduler 60 lib/pacemaker/pcmk_scheduler.c rsc->priv->scheduler); scheduler 76 lib/pacemaker/pcmk_scheduler.c pe__clear_failcount(rsc, node, reason, rsc->priv->scheduler); scheduler 139 lib/pacemaker/pcmk_scheduler.c "__fail_limit__", rsc->priv->scheduler); scheduler 216 lib/pacemaker/pcmk_scheduler.c if (!pcmk_is_set(rsc->priv->scheduler->flags, scheduler 230 lib/pacemaker/pcmk_scheduler.c rsc->priv->scheduler); scheduler 240 lib/pacemaker/pcmk_scheduler.c apply_shutdown_locks(pcmk_scheduler_t *scheduler) scheduler 242 lib/pacemaker/pcmk_scheduler.c if (!pcmk_is_set(scheduler->flags, pcmk__sched_shutdown_lock)) { scheduler 245 lib/pacemaker/pcmk_scheduler.c for (GList *iter = scheduler->priv->resources; scheduler 263 lib/pacemaker/pcmk_scheduler.c apply_node_criteria(pcmk_scheduler_t *scheduler) scheduler 266 lib/pacemaker/pcmk_scheduler.c apply_shutdown_locks(scheduler); scheduler 267 lib/pacemaker/pcmk_scheduler.c pcmk__apply_locations(scheduler); scheduler 268 lib/pacemaker/pcmk_scheduler.c g_list_foreach(scheduler->priv->resources, apply_stickiness, NULL); scheduler 270 lib/pacemaker/pcmk_scheduler.c for (GList *node_iter = scheduler->nodes; node_iter != NULL; scheduler 273 lib/pacemaker/pcmk_scheduler.c for (GList *rsc_iter = scheduler->priv->resources; scheduler 289 lib/pacemaker/pcmk_scheduler.c assign_resources(pcmk_scheduler_t *scheduler) scheduler 295 lib/pacemaker/pcmk_scheduler.c if (!pcmk__str_eq(scheduler->priv->placement_strategy, PCMK_VALUE_DEFAULT, scheduler 297 lib/pacemaker/pcmk_scheduler.c pcmk__sort_resources(scheduler); scheduler 299 lib/pacemaker/pcmk_scheduler.c pcmk__show_node_capacities("Original", scheduler); scheduler 301 lib/pacemaker/pcmk_scheduler.c if (pcmk_is_set(scheduler->flags, pcmk__sched_have_remote_nodes)) { scheduler 306 lib/pacemaker/pcmk_scheduler.c for (iter = scheduler->priv->resources; scheduler 321 lib/pacemaker/pcmk_scheduler.c for (iter = scheduler->priv->resources; iter != NULL; iter = iter->next) { scheduler 331 lib/pacemaker/pcmk_scheduler.c pcmk__show_node_capacities("Remaining", scheduler); scheduler 355 lib/pacemaker/pcmk_scheduler.c for (GList *iter = rsc->priv->scheduler->nodes; scheduler 369 lib/pacemaker/pcmk_scheduler.c rsc->priv->scheduler); scheduler 375 lib/pacemaker/pcmk_scheduler.c NULL, pcmk__ar_ordered, rsc->priv->scheduler); scheduler 386 lib/pacemaker/pcmk_scheduler.c schedule_resource_actions(pcmk_scheduler_t *scheduler) scheduler 389 lib/pacemaker/pcmk_scheduler.c pe__foreach_param_check(scheduler, check_params); scheduler 390 lib/pacemaker/pcmk_scheduler.c pe__free_param_checks(scheduler); scheduler 392 lib/pacemaker/pcmk_scheduler.c if (pcmk_is_set(scheduler->flags, pcmk__sched_probe_resources)) { scheduler 394 lib/pacemaker/pcmk_scheduler.c pcmk__schedule_probes(scheduler); scheduler 397 lib/pacemaker/pcmk_scheduler.c if (pcmk_is_set(scheduler->flags, pcmk__sched_stop_removed_resources)) { scheduler 398 lib/pacemaker/pcmk_scheduler.c g_list_foreach(scheduler->priv->resources, clear_failcounts_if_orphaned, scheduler 403 lib/pacemaker/pcmk_scheduler.c for (GList *iter = scheduler->priv->resources; scheduler 445 lib/pacemaker/pcmk_scheduler.c any_managed_resources(const pcmk_scheduler_t *scheduler) scheduler 447 lib/pacemaker/pcmk_scheduler.c for (const GList *iter = scheduler->priv->resources; scheduler 469 lib/pacemaker/pcmk_scheduler.c && pe_can_fence(node->priv->scheduler, node); scheduler 504 lib/pacemaker/pcmk_scheduler.c const pcmk_scheduler_t *scheduler) scheduler 506 lib/pacemaker/pcmk_scheduler.c if (!pcmk_is_set(scheduler->flags, pcmk__sched_concurrent_fencing) scheduler 528 lib/pacemaker/pcmk_scheduler.c FALSE, node->priv->scheduler); scheduler 530 lib/pacemaker/pcmk_scheduler.c pcmk__sched_warn(node->priv->scheduler, "Scheduling node %s for fencing", scheduler 532 lib/pacemaker/pcmk_scheduler.c pcmk__order_vs_fence(fencing, node->priv->scheduler); scheduler 543 lib/pacemaker/pcmk_scheduler.c schedule_fencing_and_shutdowns(pcmk_scheduler_t *scheduler) scheduler 547 lib/pacemaker/pcmk_scheduler.c bool have_managed = any_managed_resources(scheduler); scheduler 558 lib/pacemaker/pcmk_scheduler.c for (GList *iter = scheduler->nodes; iter != NULL; iter = iter->next) { scheduler 561 lib/pacemaker/pcmk_scheduler.c const bool is_dc = pcmk__same_node(node, scheduler->dc_node); scheduler 568 lib/pacemaker/pcmk_scheduler.c && have_managed && pe_can_fence(scheduler, node)) { scheduler 582 lib/pacemaker/pcmk_scheduler.c scheduler); scheduler 604 lib/pacemaker/pcmk_scheduler.c if (!pcmk_is_set(scheduler->flags, pcmk__sched_fencing_enabled)) { scheduler 609 lib/pacemaker/pcmk_scheduler.c } else if (!pcmk_is_set(scheduler->flags, pcmk__sched_quorate)) { scheduler 631 lib/pacemaker/pcmk_scheduler.c if (pcmk_is_set(scheduler->flags, pcmk__sched_concurrent_fencing)) { scheduler 651 lib/pacemaker/pcmk_scheduler.c log_resource_details(pcmk_scheduler_t *scheduler) scheduler 653 lib/pacemaker/pcmk_scheduler.c pcmk__output_t *out = scheduler->priv->out; scheduler 662 lib/pacemaker/pcmk_scheduler.c for (GList *item = scheduler->priv->resources; scheduler 679 lib/pacemaker/pcmk_scheduler.c log_all_actions(pcmk_scheduler_t *scheduler) scheduler 684 lib/pacemaker/pcmk_scheduler.c pcmk__output_t *prev_out = scheduler->priv->out; scheduler 694 lib/pacemaker/pcmk_scheduler.c scheduler->priv->out = out; scheduler 697 lib/pacemaker/pcmk_scheduler.c pcmk__output_actions(scheduler); scheduler 702 lib/pacemaker/pcmk_scheduler.c scheduler->priv->out = prev_out; scheduler 712 lib/pacemaker/pcmk_scheduler.c log_unrunnable_actions(const pcmk_scheduler_t *scheduler) scheduler 719 lib/pacemaker/pcmk_scheduler.c for (const GList *iter = scheduler->priv->actions; scheduler 739 lib/pacemaker/pcmk_scheduler.c unpack_cib(xmlNode *cib, unsigned long long flags, pcmk_scheduler_t *scheduler) scheduler 741 lib/pacemaker/pcmk_scheduler.c if (pcmk_is_set(scheduler->flags, pcmk__sched_have_status)) { scheduler 743 lib/pacemaker/pcmk_scheduler.c pcmk__set_scheduler_flags(scheduler, flags); scheduler 755 lib/pacemaker/pcmk_scheduler.c set_working_set_defaults(scheduler); scheduler 757 lib/pacemaker/pcmk_scheduler.c pcmk__set_scheduler_flags(scheduler, flags); scheduler 758 lib/pacemaker/pcmk_scheduler.c scheduler->input = cib; scheduler 759 lib/pacemaker/pcmk_scheduler.c cluster_status(scheduler); // Sets pcmk__sched_have_status scheduler 772 lib/pacemaker/pcmk_scheduler.c pcmk_scheduler_t *scheduler) scheduler 774 lib/pacemaker/pcmk_scheduler.c unpack_cib(cib, flags, scheduler); scheduler 775 lib/pacemaker/pcmk_scheduler.c pcmk__set_assignment_methods(scheduler); scheduler 776 lib/pacemaker/pcmk_scheduler.c pcmk__apply_node_health(scheduler); scheduler 777 lib/pacemaker/pcmk_scheduler.c pcmk__unpack_constraints(scheduler); scheduler 778 lib/pacemaker/pcmk_scheduler.c if (pcmk_is_set(scheduler->flags, pcmk__sched_validate_only)) { scheduler 782 lib/pacemaker/pcmk_scheduler.c if (!pcmk_is_set(scheduler->flags, pcmk__sched_location_only) scheduler 784 lib/pacemaker/pcmk_scheduler.c log_resource_details(scheduler); scheduler 787 lib/pacemaker/pcmk_scheduler.c apply_node_criteria(scheduler); scheduler 789 lib/pacemaker/pcmk_scheduler.c if (pcmk_is_set(scheduler->flags, pcmk__sched_location_only)) { scheduler 793 lib/pacemaker/pcmk_scheduler.c pcmk__create_internal_constraints(scheduler); scheduler 794 lib/pacemaker/pcmk_scheduler.c pcmk__handle_rsc_config_changes(scheduler); scheduler 795 lib/pacemaker/pcmk_scheduler.c assign_resources(scheduler); scheduler 796 lib/pacemaker/pcmk_scheduler.c schedule_resource_actions(scheduler); scheduler 801 lib/pacemaker/pcmk_scheduler.c pcmk__order_remote_connection_actions(scheduler); scheduler 803 lib/pacemaker/pcmk_scheduler.c schedule_fencing_and_shutdowns(scheduler); scheduler 804 lib/pacemaker/pcmk_scheduler.c pcmk__apply_orderings(scheduler); scheduler 805 lib/pacemaker/pcmk_scheduler.c log_all_actions(scheduler); scheduler 806 lib/pacemaker/pcmk_scheduler.c pcmk__create_graph(scheduler); scheduler 809 lib/pacemaker/pcmk_scheduler.c log_unrunnable_actions(scheduler); scheduler 836 lib/pacemaker/pcmk_scheduler.c pcmk_scheduler_t **scheduler) scheduler 877 lib/pacemaker/pcmk_scheduler.c *scheduler = new_scheduler; scheduler 43 lib/pacemaker/pcmk_setup.c pcmk_scheduler_t **scheduler, xmlNode **xml) scheduler 67 lib/pacemaker/pcmk_setup.c if (scheduler != NULL) { scheduler 68 lib/pacemaker/pcmk_setup.c rc = pcmk__init_scheduler(*out, NULL, NULL, scheduler); scheduler 74 lib/pacemaker/pcmk_setup.c pcmk__unpack_constraints(*scheduler); scheduler 30 lib/pacemaker/pcmk_simulate.c static void set_effective_date(pcmk_scheduler_t *scheduler, bool print_original, scheduler 137 lib/pacemaker/pcmk_simulate.c print_cluster_status(pcmk_scheduler_t *scheduler, uint32_t show_opts, scheduler 141 lib/pacemaker/pcmk_simulate.c pcmk__output_t *out = scheduler->priv->out; scheduler 154 lib/pacemaker/pcmk_simulate.c scheduler, state, stonith_rc, NULL, scheduler 170 lib/pacemaker/pcmk_simulate.c print_transition_summary(pcmk_scheduler_t *scheduler, bool print_spacer) scheduler 172 lib/pacemaker/pcmk_simulate.c pcmk__output_t *out = scheduler->priv->out; scheduler 176 lib/pacemaker/pcmk_simulate.c pcmk__output_actions(scheduler); scheduler 191 lib/pacemaker/pcmk_simulate.c reset(pcmk_scheduler_t *scheduler, xmlNodePtr input, pcmk__output_t *out, scheduler 194 lib/pacemaker/pcmk_simulate.c scheduler->input = input; scheduler 195 lib/pacemaker/pcmk_simulate.c scheduler->priv->out = out; scheduler 196 lib/pacemaker/pcmk_simulate.c set_effective_date(scheduler, true, use_date); scheduler 198 lib/pacemaker/pcmk_simulate.c pcmk__set_scheduler_flags(scheduler, pcmk__sched_sanitized); scheduler 201 lib/pacemaker/pcmk_simulate.c pcmk__set_scheduler_flags(scheduler, pcmk__sched_output_scores); scheduler 204 lib/pacemaker/pcmk_simulate.c pcmk__set_scheduler_flags(scheduler, pcmk__sched_show_utilization); scheduler 222 lib/pacemaker/pcmk_simulate.c write_sim_dotfile(pcmk_scheduler_t *scheduler, const char *dot_file, scheduler 233 lib/pacemaker/pcmk_simulate.c for (iter = scheduler->priv->actions; iter != NULL; iter = iter->next) { scheduler 274 lib/pacemaker/pcmk_simulate.c for (iter = scheduler->priv->actions; iter != NULL; iter = iter->next) { scheduler 330 lib/pacemaker/pcmk_simulate.c pcmk_scheduler_t *scheduler, const char *use_date) scheduler 332 lib/pacemaker/pcmk_simulate.c pcmk__output_t *out = scheduler->priv->out; scheduler 357 lib/pacemaker/pcmk_simulate.c if (pcmk_is_set(scheduler->flags, pcmk__sched_output_scores)) { scheduler 360 lib/pacemaker/pcmk_simulate.c if (pcmk_is_set(scheduler->flags, pcmk__sched_show_utilization)) { scheduler 370 lib/pacemaker/pcmk_simulate.c scheduler->input = input; scheduler 371 lib/pacemaker/pcmk_simulate.c set_effective_date(scheduler, false, use_date); scheduler 372 lib/pacemaker/pcmk_simulate.c pcmk__schedule_actions(input, scheduler_flags, scheduler); scheduler 373 lib/pacemaker/pcmk_simulate.c pe_reset_working_set(scheduler); scheduler 382 lib/pacemaker/pcmk_simulate.c pcmk_scheduler_t *scheduler, const char *use_date) scheduler 384 lib/pacemaker/pcmk_simulate.c pcmk__output_t *out = scheduler->priv->out; scheduler 410 lib/pacemaker/pcmk_simulate.c profile_file(buffer, repeat, scheduler, use_date); scheduler 434 lib/pacemaker/pcmk_simulate.c set_effective_date(pcmk_scheduler_t *scheduler, bool print_original, scheduler 437 lib/pacemaker/pcmk_simulate.c pcmk__output_t *out = scheduler->priv->out; scheduler 442 lib/pacemaker/pcmk_simulate.c crm_element_value_epoch(scheduler->input, PCMK_XA_EXECUTION_DATE, scheduler 446 lib/pacemaker/pcmk_simulate.c scheduler->priv->now = crm_time_new(use_date); scheduler 448 lib/pacemaker/pcmk_simulate.c crm_time_log(LOG_NOTICE, "Pretending 'now' is", scheduler->priv->now, scheduler 452 lib/pacemaker/pcmk_simulate.c scheduler->priv->now = pcmk__copy_timet(original_date); scheduler 455 lib/pacemaker/pcmk_simulate.c char *when = crm_time_as_string(scheduler->priv->now, scheduler 751 lib/pacemaker/pcmk_simulate.c pcmk__simulate_transition(pcmk_scheduler_t *scheduler, cib_t *cib, scheduler 764 lib/pacemaker/pcmk_simulate.c out = scheduler->priv->out; scheduler 774 lib/pacemaker/pcmk_simulate.c transition = pcmk__unpack_graph(scheduler->priv->graph, crm_system_name); scheduler 777 lib/pacemaker/pcmk_simulate.c fake_resource_list = scheduler->priv->resources; scheduler 798 lib/pacemaker/pcmk_simulate.c pe_reset_working_set(scheduler); scheduler 799 lib/pacemaker/pcmk_simulate.c scheduler->input = cib_object; scheduler 806 lib/pacemaker/pcmk_simulate.c pcmk__simulate(pcmk_scheduler_t *scheduler, pcmk__output_t *out, scheduler 822 lib/pacemaker/pcmk_simulate.c reset(scheduler, input, out, use_date, flags); scheduler 823 lib/pacemaker/pcmk_simulate.c cluster_status(scheduler); scheduler 828 lib/pacemaker/pcmk_simulate.c if (pcmk_is_set(scheduler->flags, pcmk__sched_in_maintenance)) { scheduler 829 lib/pacemaker/pcmk_simulate.c printed = out->message(out, "maint-mode", scheduler->flags); scheduler 832 lib/pacemaker/pcmk_simulate.c if ((scheduler->priv->disabled_resources > 0) scheduler 833 lib/pacemaker/pcmk_simulate.c || (scheduler->priv->blocked_resources > 0)) { scheduler 839 lib/pacemaker/pcmk_simulate.c scheduler->priv->disabled_resources, scheduler 840 lib/pacemaker/pcmk_simulate.c scheduler->priv->ninstances, scheduler 841 lib/pacemaker/pcmk_simulate.c scheduler->priv->blocked_resources); scheduler 847 lib/pacemaker/pcmk_simulate.c print_cluster_status(scheduler, (show_pending? pcmk_show_pending : 0), scheduler 865 lib/pacemaker/pcmk_simulate.c pcmk__inject_scheduler_input(scheduler, cib, injections); scheduler 874 lib/pacemaker/pcmk_simulate.c cleanup_calculations(scheduler); scheduler 875 lib/pacemaker/pcmk_simulate.c reset(scheduler, input, out, use_date, flags); scheduler 876 lib/pacemaker/pcmk_simulate.c cluster_status(scheduler); scheduler 890 lib/pacemaker/pcmk_simulate.c if (pcmk_is_set(scheduler->flags, pcmk__sched_output_scores)) { scheduler 893 lib/pacemaker/pcmk_simulate.c if (pcmk_is_set(scheduler->flags, pcmk__sched_show_utilization)) { scheduler 897 lib/pacemaker/pcmk_simulate.c if (pcmk_all_flags_set(scheduler->flags, scheduler 905 lib/pacemaker/pcmk_simulate.c } else if (pcmk_is_set(scheduler->flags, pcmk__sched_output_scores)) { scheduler 910 lib/pacemaker/pcmk_simulate.c } else if (pcmk_is_set(scheduler->flags, pcmk__sched_show_utilization)) { scheduler 922 lib/pacemaker/pcmk_simulate.c scheduler->priv->out = logger_out; scheduler 925 lib/pacemaker/pcmk_simulate.c pcmk__schedule_actions(input, scheduler_flags, scheduler); scheduler 932 lib/pacemaker/pcmk_simulate.c scheduler->priv->out = out; scheduler 938 lib/pacemaker/pcmk_simulate.c rc = pcmk__xml_write_file(scheduler->priv->graph, graph_file, scheduler 947 lib/pacemaker/pcmk_simulate.c rc = write_sim_dotfile(scheduler, dot_file, scheduler 957 lib/pacemaker/pcmk_simulate.c print_transition_summary(scheduler, printed == pcmk_rc_ok); scheduler 968 lib/pacemaker/pcmk_simulate.c if (pcmk__simulate_transition(scheduler, cib, injections->op_fail) scheduler 977 lib/pacemaker/pcmk_simulate.c set_effective_date(scheduler, true, use_date); scheduler 980 lib/pacemaker/pcmk_simulate.c pcmk__set_scheduler_flags(scheduler, pcmk__sched_output_scores); scheduler 983 lib/pacemaker/pcmk_simulate.c pcmk__set_scheduler_flags(scheduler, pcmk__sched_show_utilization); scheduler 986 lib/pacemaker/pcmk_simulate.c cluster_status(scheduler); scheduler 987 lib/pacemaker/pcmk_simulate.c print_cluster_status(scheduler, 0, section_opts, "Revised Cluster Status", scheduler 996 lib/pacemaker/pcmk_simulate.c pcmk_simulate(xmlNodePtr *xml, pcmk_scheduler_t *scheduler, scheduler 1013 lib/pacemaker/pcmk_simulate.c rc = pcmk__simulate(scheduler, out, injections, flags, section_opts, scheduler 69 lib/pacemaker/pcmk_status.c pcmk__output_cluster_status(pcmk_scheduler_t *scheduler, stonith_t *stonith, scheduler 86 lib/pacemaker/pcmk_status.c if ((scheduler == NULL) || (scheduler->priv->out == NULL)) { scheduler 89 lib/pacemaker/pcmk_status.c out = scheduler->priv->out; scheduler 105 lib/pacemaker/pcmk_status.c pe_reset_working_set(scheduler); scheduler 106 lib/pacemaker/pcmk_status.c scheduler->input = cib_copy; scheduler 107 lib/pacemaker/pcmk_status.c cluster_status(scheduler); scheduler 114 lib/pacemaker/pcmk_status.c pcmk__unpack_constraints(scheduler); scheduler 117 lib/pacemaker/pcmk_status.c unames = pe__build_node_name_list(scheduler, only_node); scheduler 118 lib/pacemaker/pcmk_status.c resources = pe__build_rsc_list(scheduler, only_rsc); scheduler 121 lib/pacemaker/pcmk_status.c if (scheduler->dc_node == NULL) { scheduler 126 lib/pacemaker/pcmk_status.c scheduler, pcmkd_state, pcmk_rc2exitc(history_rc), scheduler 216 lib/pacemaker/pcmk_status.c pcmk_scheduler_t *scheduler = NULL; scheduler 261 lib/pacemaker/pcmk_status.c scheduler = pe_new_working_set(); scheduler 262 lib/pacemaker/pcmk_status.c pcmk__mem_assert(scheduler); scheduler 263 lib/pacemaker/pcmk_status.c scheduler->priv->out = out; scheduler 267 lib/pacemaker/pcmk_status.c pcmk__query_node_name(out, 0, &(scheduler->priv->local_node_name), 0); scheduler 270 lib/pacemaker/pcmk_status.c rc = pcmk__output_cluster_status(scheduler, stonith, cib, current_cib, scheduler 279 lib/pacemaker/pcmk_status.c pe_free_working_set(scheduler); scheduler 50 lib/pacemaker/pcmk_ticket.c add_attribute_xml(pcmk_scheduler_t *scheduler, const char *ticket_id, scheduler 58 lib/pacemaker/pcmk_ticket.c ticket = g_hash_table_lookup(scheduler->priv->ticket_constraints, scheduler 180 lib/pacemaker/pcmk_ticket.c pcmk__ticket_delete(pcmk__output_t *out, cib_t *cib, pcmk_scheduler_t *scheduler, scheduler 186 lib/pacemaker/pcmk_ticket.c pcmk__assert((cib != NULL) && (scheduler != NULL)); scheduler 195 lib/pacemaker/pcmk_ticket.c ticket = g_hash_table_lookup(scheduler->priv->ticket_constraints, scheduler 238 lib/pacemaker/pcmk_ticket.c pcmk_scheduler_t *scheduler = NULL; scheduler 243 lib/pacemaker/pcmk_ticket.c rc = pcmk__setup_output_cib_sched(&out, &cib, &scheduler, xml); scheduler 248 lib/pacemaker/pcmk_ticket.c rc = pcmk__ticket_delete(out, cib, scheduler, ticket_id, force); scheduler 256 lib/pacemaker/pcmk_ticket.c pe_free_working_set(scheduler); scheduler 261 lib/pacemaker/pcmk_ticket.c pcmk__ticket_get_attr(pcmk__output_t *out, pcmk_scheduler_t *scheduler, scheduler 269 lib/pacemaker/pcmk_ticket.c pcmk__assert((out != NULL) && (scheduler != NULL)); scheduler 275 lib/pacemaker/pcmk_ticket.c ticket = g_hash_table_lookup(scheduler->priv->ticket_constraints, scheduler 297 lib/pacemaker/pcmk_ticket.c pcmk_scheduler_t *scheduler = NULL; scheduler 301 lib/pacemaker/pcmk_ticket.c rc = pcmk__setup_output_cib_sched(&out, NULL, &scheduler, xml); scheduler 306 lib/pacemaker/pcmk_ticket.c rc = pcmk__ticket_get_attr(out, scheduler, ticket_id, attr_name, attr_default); scheduler 310 lib/pacemaker/pcmk_ticket.c pe_free_working_set(scheduler); scheduler 315 lib/pacemaker/pcmk_ticket.c pcmk__ticket_info(pcmk__output_t *out, pcmk_scheduler_t *scheduler, scheduler 320 lib/pacemaker/pcmk_ticket.c pcmk__assert((out != NULL) && (scheduler != NULL)); scheduler 326 lib/pacemaker/pcmk_ticket.c ticket = g_hash_table_lookup(scheduler->priv->ticket_constraints, scheduler 341 lib/pacemaker/pcmk_ticket.c out->message(out, "ticket-list", scheduler->priv->ticket_constraints, scheduler 351 lib/pacemaker/pcmk_ticket.c pcmk_scheduler_t *scheduler = NULL; scheduler 355 lib/pacemaker/pcmk_ticket.c rc = pcmk__setup_output_cib_sched(&out, NULL, &scheduler, xml); scheduler 366 lib/pacemaker/pcmk_ticket.c rc = pcmk__ticket_info(out, scheduler, ticket_id, false, false); scheduler 370 lib/pacemaker/pcmk_ticket.c pe_free_working_set(scheduler); scheduler 375 lib/pacemaker/pcmk_ticket.c pcmk__ticket_remove_attr(pcmk__output_t *out, cib_t *cib, pcmk_scheduler_t *scheduler, scheduler 382 lib/pacemaker/pcmk_ticket.c pcmk__assert((out != NULL) && (cib != NULL) && (scheduler != NULL)); scheduler 424 lib/pacemaker/pcmk_ticket.c pcmk_scheduler_t *scheduler = NULL; scheduler 429 lib/pacemaker/pcmk_ticket.c rc = pcmk__setup_output_cib_sched(&out, &cib, &scheduler, xml); scheduler 434 lib/pacemaker/pcmk_ticket.c rc = pcmk__ticket_remove_attr(out, cib, scheduler, ticket_id, attr_delete, force); scheduler 442 lib/pacemaker/pcmk_ticket.c pe_free_working_set(scheduler); scheduler 447 lib/pacemaker/pcmk_ticket.c pcmk__ticket_set_attr(pcmk__output_t *out, cib_t *cib, pcmk_scheduler_t *scheduler, scheduler 454 lib/pacemaker/pcmk_ticket.c pcmk__assert((out != NULL) && (cib != NULL) && (scheduler != NULL)); scheduler 479 lib/pacemaker/pcmk_ticket.c add_attribute_xml(scheduler, ticket_id, attr_set, &ticket_state_xml); scheduler 493 lib/pacemaker/pcmk_ticket.c pcmk_scheduler_t *scheduler = NULL; scheduler 498 lib/pacemaker/pcmk_ticket.c rc = pcmk__setup_output_cib_sched(&out, &cib, &scheduler, xml); scheduler 503 lib/pacemaker/pcmk_ticket.c rc = pcmk__ticket_set_attr(out, cib, scheduler, ticket_id, attr_set, force); scheduler 511 lib/pacemaker/pcmk_ticket.c pe_free_working_set(scheduler); scheduler 49 lib/pacemaker/pcmk_verify.c pcmk__verify(pcmk_scheduler_t *scheduler, pcmk__output_t *out, scheduler 111 lib/pacemaker/pcmk_verify.c pcmk__schedule_actions(cib_object_copy, flags, scheduler); scheduler 127 lib/pacemaker/pcmk_verify.c pcmk_scheduler_t *scheduler = NULL; scheduler 147 lib/pacemaker/pcmk_verify.c scheduler = pe_new_working_set(); scheduler 148 lib/pacemaker/pcmk_verify.c if (scheduler == NULL) { scheduler 154 lib/pacemaker/pcmk_verify.c scheduler->priv->out = out; scheduler 155 lib/pacemaker/pcmk_verify.c rc = pcmk__verify(scheduler, out, &cib_object); scheduler 158 lib/pacemaker/pcmk_verify.c pe_free_working_set(scheduler); scheduler 392 lib/pengine/bundle.c parent->priv->scheduler) != pcmk_rc_ok) { scheduler 615 lib/pengine/bundle.c parent->priv->scheduler) != pcmk_rc_ok) { scheduler 656 lib/pengine/bundle.c pcmk_scheduler_t *scheduler = parent->priv->scheduler; scheduler 658 lib/pengine/bundle.c if (pe_find_resource(scheduler->priv->resources, id) != NULL) { scheduler 664 lib/pengine/bundle.c pcmk__assert(pe_find_resource(scheduler->priv->resources, scheduler 701 lib/pengine/bundle.c node = pcmk_find_node(scheduler, uname); scheduler 704 lib/pengine/bundle.c -PCMK_SCORE_INFINITY, scheduler); scheduler 727 lib/pengine/bundle.c g_list_foreach(scheduler->priv->resources, scheduler 753 lib/pengine/bundle.c scheduler) != pcmk_rc_ok) { scheduler 900 lib/pengine/bundle.c params = pe_rsc_params(rsc, NULL, rsc->priv->scheduler); scheduler 954 lib/pengine/bundle.c pe__unpack_bundle(pcmk_resource_t *rsc, pcmk_scheduler_t *scheduler) scheduler 1161 lib/pengine/bundle.c scheduler) != pcmk_rc_ok) { scheduler 206 lib/pengine/clone.c pcmk_scheduler_t *scheduler) scheduler 217 lib/pengine/clone.c g_list_length(scheduler->nodes)); scheduler 222 lib/pengine/clone.c pe__create_clone_child(pcmk_resource_t *rsc, pcmk_scheduler_t *scheduler) scheduler 249 lib/pengine/clone.c scheduler) != pcmk_rc_ok) { scheduler 323 lib/pengine/clone.c clone_unpack(pcmk_resource_t *rsc, pcmk_scheduler_t *scheduler) scheduler 357 lib/pengine/clone.c QB_MAX(1, g_list_length(scheduler->nodes))); scheduler 423 lib/pengine/clone.c if (pe__create_clone_child(rsc, scheduler) == NULL) { scheduler 430 lib/pengine/clone.c if (pe__create_clone_child(rsc, scheduler) == NULL) { scheduler 980 lib/pengine/clone.c const pcmk_scheduler_t *scheduler) scheduler 985 lib/pengine/clone.c if (clone_data->clone_max == g_list_length(scheduler->nodes)) { scheduler 131 lib/pengine/complex.c GHashTable *meta_hash, pcmk_scheduler_t *scheduler) scheduler 149 lib/pengine/complex.c scheduler); scheduler 176 lib/pengine/complex.c pcmk_node_t *node, pcmk_scheduler_t *scheduler) scheduler 186 lib/pengine/complex.c .now = scheduler->priv->now, scheduler 202 lib/pengine/complex.c &rule_data, meta_hash, NULL, scheduler); scheduler 209 lib/pengine/complex.c expand_parents_fixed_nvpairs(rsc, &rule_data, meta_hash, scheduler); scheduler 213 lib/pengine/complex.c pe__unpack_dataset_nvpairs(scheduler->priv->rsc_defaults, scheduler 215 lib/pengine/complex.c NULL, scheduler); scheduler 237 lib/pengine/complex.c const pcmk_node_t *node, pcmk_scheduler_t *scheduler) scheduler 247 lib/pengine/complex.c CRM_CHECK((instance_attrs != NULL) && (rsc != NULL) && (scheduler != NULL), scheduler 250 lib/pengine/complex.c rule_data.now = scheduler->priv->now; scheduler 257 lib/pengine/complex.c &rule_data, instance_attrs, NULL, scheduler); scheduler 259 lib/pengine/complex.c get_rsc_attributes(instance_attrs, rsc->priv->parent, node, scheduler); scheduler 282 lib/pengine/complex.c pcmk_scheduler_t *scheduler) scheduler 315 lib/pengine/complex.c cib_resources = get_xpath_object("//" PCMK_XE_RESOURCES, scheduler->input, scheduler 383 lib/pengine/complex.c if (!unpack_template(new_xml, expanded_xml, scheduler)) { scheduler 394 lib/pengine/complex.c add_template_rsc(xmlNode *xml_obj, pcmk_scheduler_t *scheduler) scheduler 422 lib/pengine/complex.c pcmk__add_idref(scheduler->priv->templates, template_ref, id); scheduler 477 lib/pengine/complex.c pcmk_scheduler_t *scheduler) scheduler 488 lib/pengine/complex.c if ((rsc == NULL) || (scheduler == NULL)) { scheduler 507 lib/pengine/complex.c get_rsc_attributes(params_on_node, rsc, node, scheduler); scheduler 525 lib/pengine/complex.c const pcmk_scheduler_t *scheduler = rsc->priv->scheduler; scheduler 534 lib/pengine/complex.c if (!pcmk_is_set(scheduler->flags, pcmk__sched_fencing_enabled)) { scheduler 547 lib/pengine/complex.c } else if (!pcmk_is_set(scheduler->flags, pcmk__sched_fencing_enabled)) { scheduler 569 lib/pengine/complex.c } else if (pcmk_is_set(scheduler->flags, pcmk__sched_enable_unfencing)) { scheduler 572 lib/pengine/complex.c } else if (pcmk_is_set(scheduler->flags, pcmk__sched_fencing_enabled)) { scheduler 575 lib/pengine/complex.c } else if (scheduler->no_quorum_policy == pcmk_no_quorum_ignore) { scheduler 701 lib/pengine/complex.c pcmk_resource_t *parent, pcmk_scheduler_t *scheduler) scheduler 720 lib/pengine/complex.c CRM_CHECK((xml_obj != NULL) && (scheduler != NULL), scheduler 724 lib/pengine/complex.c rule_data.now = scheduler->priv->now; scheduler 735 lib/pengine/complex.c if (unpack_template(xml_obj, &expanded_xml, scheduler) == FALSE) { scheduler 741 lib/pengine/complex.c pcmk__sched_err(scheduler, scheduler 748 lib/pengine/complex.c pcmk__sched_err(scheduler, scheduler 755 lib/pengine/complex.c rsc_private->scheduler = scheduler; scheduler 773 lib/pengine/complex.c rsc_private->ops_xml = pcmk__xe_resolve_idref(ops, scheduler->input); scheduler 801 lib/pengine/complex.c get_meta_attributes(rsc_private->meta, *rsc, NULL, scheduler); scheduler 806 lib/pengine/complex.c if (!pcmk_is_set(scheduler->flags, pcmk__sched_in_maintenance)) { scheduler 868 lib/pengine/complex.c if (pcmk_is_set(scheduler->flags, pcmk__sched_in_maintenance)) { scheduler 924 lib/pengine/complex.c pcmk__set_scheduler_flags(scheduler, pcmk__sched_have_fencing); scheduler 937 lib/pengine/complex.c GHashTable *params = pe_rsc_params(*rsc, NULL, scheduler); scheduler 965 lib/pengine/complex.c if (rsc_private->fns->unpack(*rsc, scheduler) == FALSE) { scheduler 971 lib/pengine/complex.c if (pcmk_is_set(scheduler->flags, pcmk__sched_symmetric_cluster)) { scheduler 973 lib/pengine/complex.c resource_location(*rsc, NULL, 0, "symmetric_default", scheduler); scheduler 979 lib/pengine/complex.c scheduler); scheduler 987 lib/pengine/complex.c scheduler); scheduler 990 lib/pengine/complex.c if (add_template_rsc(xml_obj, scheduler) == FALSE) { scheduler 1246 lib/pengine/complex.c rsc->priv->scheduler->priv->ninstances++; scheduler 1248 lib/pengine/complex.c rsc->priv->scheduler->priv->disabled_resources++; scheduler 1251 lib/pengine/complex.c rsc->priv->scheduler->priv->blocked_resources++; scheduler 140 lib/pengine/failcounts.c lrm_op_xpathObj = xpath_search(rsc->priv->scheduler->input, scheduler 401 lib/pengine/failcounts.c time_t now = get_effective_time(rsc->priv->scheduler); scheduler 465 lib/pengine/failcounts.c const char *reason, pcmk_scheduler_t *scheduler) scheduler 470 lib/pengine/failcounts.c CRM_CHECK(rsc && node && reason && scheduler, return NULL); scheduler 474 lib/pengine/failcounts.c scheduler); scheduler 184 lib/pengine/group.c group_unpack(pcmk_resource_t *rsc, pcmk_scheduler_t *scheduler) scheduler 214 lib/pengine/group.c scheduler) != pcmk_rc_ok) { scheduler 88 lib/pengine/native.c pcmk_scheduler_t *scheduler, gboolean failed) scheduler 122 lib/pengine/native.c "not_managed_default", scheduler); scheduler 144 lib/pengine/native.c pe__node_list2table(scheduler->nodes); scheduler 190 lib/pengine/native.c native_add_running(parent, node, scheduler, FALSE); scheduler 205 lib/pengine/native.c native_unpack(pcmk_resource_t *rsc, pcmk_scheduler_t *scheduler) scheduler 223 lib/pengine/native.c pe__force_anon(standard, parent, rsc->id, scheduler); scheduler 327 lib/pengine/native.c const char *name, pcmk_scheduler_t *scheduler) scheduler 336 lib/pengine/native.c params = pe_rsc_params(rsc, node, scheduler); scheduler 26 lib/pengine/pe_actions.c add_singleton(pcmk_scheduler_t *scheduler, pcmk_action_t *action) scheduler 28 lib/pengine/pe_actions.c if (scheduler->priv->singletons == NULL) { scheduler 29 lib/pengine/pe_actions.c scheduler->priv->singletons = pcmk__strkey_table(NULL, NULL); scheduler 31 lib/pengine/pe_actions.c g_hash_table_insert(scheduler->priv->singletons, action->uuid, action); scheduler 35 lib/pengine/pe_actions.c lookup_singleton(pcmk_scheduler_t *scheduler, const char *action_uuid) scheduler 42 lib/pengine/pe_actions.c if (scheduler->priv->singletons == NULL) { scheduler 45 lib/pengine/pe_actions.c return g_hash_table_lookup(scheduler->priv->singletons, action_uuid); scheduler 61 lib/pengine/pe_actions.c const pcmk_node_t *node, const pcmk_scheduler_t *scheduler) scheduler 67 lib/pengine/pe_actions.c GList *actions = (rsc == NULL)? scheduler->priv->actions : rsc->priv->actions; scheduler 175 lib/pengine/pe_actions.c const pcmk_node_t *node, bool optional, pcmk_scheduler_t *scheduler) scheduler 182 lib/pengine/pe_actions.c action->scheduler = scheduler; scheduler 222 lib/pengine/pe_actions.c scheduler->priv->next_action_id, key, task, scheduler 225 lib/pengine/pe_actions.c action->id = scheduler->priv->next_action_id++; scheduler 227 lib/pengine/pe_actions.c scheduler->priv->actions = g_list_prepend(scheduler->priv->actions, action); scheduler 229 lib/pengine/pe_actions.c add_singleton(scheduler, action); scheduler 249 lib/pengine/pe_actions.c pcmk_scheduler_t *scheduler) scheduler 255 lib/pengine/pe_actions.c .now = scheduler->priv->now, scheduler 262 lib/pengine/pe_actions.c &rule_data, params, NULL, scheduler); scheduler 295 lib/pengine/pe_actions.c effective_quorum_policy(pcmk_resource_t *rsc, pcmk_scheduler_t *scheduler) scheduler 297 lib/pengine/pe_actions.c enum pe_quorum_policy policy = scheduler->no_quorum_policy; scheduler 299 lib/pengine/pe_actions.c if (pcmk_is_set(scheduler->flags, pcmk__sched_quorate)) { scheduler 302 lib/pengine/pe_actions.c } else if (scheduler->no_quorum_policy == pcmk_no_quorum_demote) { scheduler 331 lib/pengine/pe_actions.c pcmk_scheduler_t *scheduler) scheduler 354 lib/pengine/pe_actions.c pe_fence_node(scheduler, action->node, "stop is unrunnable", false); scheduler 367 lib/pengine/pe_actions.c && !pe_can_fence(scheduler, action->node)) { scheduler 386 lib/pengine/pe_actions.c switch (effective_quorum_policy(rsc, scheduler)) { scheduler 705 lib/pengine/pe_actions.c .now = rsc->priv->scheduler->priv->now, scheduler 717 lib/pengine/pe_actions.c rsc->priv->scheduler); scheduler 754 lib/pengine/pe_actions.c pe__unpack_dataset_nvpairs(rsc->priv->scheduler->priv->op_defaults, scheduler 756 lib/pengine/pe_actions.c rsc->priv->scheduler); scheduler 784 lib/pengine/pe_actions.c GHashTable *params = pe_rsc_params(rsc, node, rsc->priv->scheduler); scheduler 813 lib/pengine/pe_actions.c rsc->priv->scheduler->priv->now, scheduler 876 lib/pengine/pe_actions.c const pcmk_scheduler_t *scheduler = NULL; scheduler 880 lib/pengine/pe_actions.c scheduler = rsc->priv->scheduler; scheduler 890 lib/pengine/pe_actions.c if (pcmk_is_set(scheduler->flags, pcmk__sched_fencing_enabled)) { scheduler 951 lib/pengine/pe_actions.c && pcmk__is_remote_node(pcmk_find_node(scheduler, rsc->id)) scheduler 969 lib/pengine/pe_actions.c if (pcmk_is_set(scheduler->flags, pcmk__sched_fencing_enabled)) { scheduler 981 lib/pengine/pe_actions.c if (pcmk_is_set(scheduler->flags, pcmk__sched_fencing_enabled)) { scheduler 1095 lib/pengine/pe_actions.c pcmk_scheduler_t *scheduler) scheduler 1099 lib/pengine/pe_actions.c pcmk__assert((key != NULL) && (task != NULL) && (scheduler != NULL)); scheduler 1101 lib/pengine/pe_actions.c action = find_existing_action(key, rsc, on_node, scheduler); scheduler 1103 lib/pengine/pe_actions.c action = new_action(key, task, rsc, on_node, optional, scheduler); scheduler 1125 lib/pengine/pe_actions.c attrs, scheduler); scheduler 1129 lib/pengine/pe_actions.c update_resource_action_runnable(action, scheduler); scheduler 1140 lib/pengine/pe_actions.c get_pseudo_op(const char *name, pcmk_scheduler_t *scheduler) scheduler 1142 lib/pengine/pe_actions.c pcmk_action_t *op = lookup_singleton(scheduler, name); scheduler 1145 lib/pengine/pe_actions.c op = custom_action(NULL, strdup(name), name, NULL, TRUE, scheduler); scheduler 1178 lib/pengine/pe_actions.c const pcmk_scheduler_t *scheduler) scheduler 1187 lib/pengine/pe_actions.c if (scheduler->priv->priority_fencing_ms == 0U) { scheduler 1202 lib/pengine/pe_actions.c for (gIter = scheduler->nodes; gIter != NULL; gIter = gIter->next) { scheduler 1241 lib/pengine/pe_actions.c return pcmk__timeout_ms2s(scheduler->priv->priority_fencing_ms); scheduler 1247 lib/pengine/pe_actions.c pcmk_scheduler_t *scheduler) scheduler 1253 lib/pengine/pe_actions.c op = scheduler->priv->fence_action; scheduler 1259 lib/pengine/pe_actions.c stonith_op = lookup_singleton(scheduler, op_key); scheduler 1262 lib/pengine/pe_actions.c TRUE, scheduler); scheduler 1269 lib/pengine/pe_actions.c if (pcmk_is_set(scheduler->flags, pcmk__sched_enable_unfencing)) { scheduler 1275 lib/pengine/pe_actions.c GList *matches = find_unfencing_devices(scheduler->priv->resources, scheduler 1285 lib/pengine/pe_actions.c scheduler); scheduler 1290 lib/pengine/pe_actions.c if (!pcmk__is_daemon && (scheduler->priv->out != NULL)) { scheduler 1291 lib/pengine/pe_actions.c pcmk__output_t *out = scheduler->priv->out; scheduler 1322 lib/pengine/pe_actions.c if ((scheduler->priv->priority_fencing_ms > 0U) scheduler 1342 lib/pengine/pe_actions.c scheduler)); scheduler 1349 lib/pengine/pe_actions.c if(optional == FALSE && pe_can_fence(scheduler, node)) { scheduler 1599 lib/pengine/pe_actions.c PCMK_ACTION_LRM_DELETE, node, FALSE, rsc->priv->scheduler); scheduler 1758 lib/pengine/pe_actions.c optional, rsc->priv->scheduler); scheduler 102 lib/pengine/pe_digest.c GHashTable *overrides, pcmk_scheduler_t *scheduler) scheduler 149 lib/pengine/pe_digest.c scheduler); scheduler 306 lib/pengine/pe_digest.c bool calc_secure, pcmk_scheduler_t *scheduler) scheduler 312 lib/pengine/pe_digest.c CRM_CHECK(scheduler != NULL, return NULL); scheduler 316 lib/pengine/pe_digest.c pcmk__sched_err(scheduler, scheduler 327 lib/pengine/pe_digest.c if ((op_version == NULL) && (scheduler->input != NULL)) { scheduler 328 lib/pengine/pe_digest.c op_version = crm_element_value(scheduler->input, scheduler 336 lib/pengine/pe_digest.c params = pe_rsc_params(rsc, node, scheduler); scheduler 338 lib/pengine/pe_digest.c op_version, overrides, scheduler); scheduler 364 lib/pengine/pe_digest.c bool calc_secure, pcmk_scheduler_t *scheduler) scheduler 372 lib/pengine/pe_digest.c NULL, calc_secure, scheduler); scheduler 393 lib/pengine/pe_digest.c pcmk_node_t *node, pcmk_scheduler_t *scheduler) scheduler 411 lib/pengine/pe_digest.c pcmk_is_set(scheduler->flags, scheduler 413 lib/pengine/pe_digest.c scheduler); scheduler 550 lib/pengine/pe_digest.c pcmk_node_t *node, pcmk_scheduler_t *scheduler) scheduler 556 lib/pengine/pe_digest.c node, NULL, TRUE, scheduler); scheduler 579 lib/pengine/pe_digest.c if (!pcmk__is_daemon && (scheduler->priv->out != NULL)) { scheduler 580 lib/pengine/pe_digest.c pcmk__output_t *out = scheduler->priv->out; scheduler 591 lib/pengine/pe_digest.c if (pcmk_is_set(scheduler->flags, pcmk__sched_sanitized) scheduler 594 lib/pengine/pe_digest.c if (scheduler->priv->out != NULL) { scheduler 595 lib/pengine/pe_digest.c pcmk__output_t *out = scheduler->priv->out; scheduler 24 lib/pengine/pe_health.c pe__unpack_node_health_scores(pcmk_scheduler_t *scheduler) scheduler 26 lib/pengine/pe_health.c switch (pe__health_strategy(scheduler)) { scheduler 47 lib/pengine/pe_health.c scheduler); scheduler 49 lib/pengine/pe_health.c scheduler); scheduler 51 lib/pengine/pe_health.c scheduler); scheduler 141 lib/pengine/pe_health.c strategy = pe__health_strategy(node->priv->scheduler); scheduler 294 lib/pengine/pe_notif.c rsc->priv->scheduler); scheduler 352 lib/pengine/pe_notif.c rsc->priv->scheduler); scheduler 596 lib/pengine/pe_notif.c pcmk__sched_err(rsc->priv->scheduler, scheduler 759 lib/pengine/pe_notif.c get_node_names(rsc->priv->scheduler->nodes, &node_list, &metal_list); scheduler 762 lib/pengine/pe_notif.c get_node_names(rsc->priv->scheduler->nodes, &node_list, NULL); scheduler 928 lib/pengine/pe_notif.c pcmk__sched_err(rsc->priv->scheduler, scheduler 65 lib/pengine/pe_output.c pcmk_scheduler_t *scheduler, const char *attrname, scheduler 78 lib/pengine/pe_output.c if (add_extra_info(node, rsc->priv->children, scheduler, scheduler 88 lib/pengine/pe_output.c params = pe_rsc_params(rsc, node, scheduler); scheduler 201 lib/pengine/pe_output.c get_cluster_stack(pcmk_scheduler_t *scheduler) scheduler 203 lib/pengine/pe_output.c xmlNode *stack = get_xpath_object(XPATH_STACK, scheduler->input, LOG_DEBUG); scheduler 371 lib/pengine/pe_output.c is_mixed_version(pcmk_scheduler_t *scheduler) scheduler 374 lib/pengine/pe_output.c for (GList *gIter = scheduler->nodes; gIter != NULL; gIter = gIter->next) { scheduler 406 lib/pengine/pe_output.c pcmk_scheduler_t *scheduler = va_arg(args, pcmk_scheduler_t *); scheduler 413 lib/pengine/pe_output.c const char *stack_s = get_cluster_stack(scheduler); scheduler 422 lib/pengine/pe_output.c scheduler->input, LOG_DEBUG); scheduler 426 lib/pengine/pe_output.c const char *quorum = crm_element_value(scheduler->input, scheduler 428 lib/pengine/pe_output.c char *dc_name = scheduler->dc_node? pe__node_display_name(scheduler->dc_node, pcmk_is_set(show_opts, pcmk_show_node_id)) : NULL; scheduler 429 lib/pengine/pe_output.c bool mixed_version = is_mixed_version(scheduler); scheduler 432 lib/pengine/pe_output.c out->message(out, "cluster-dc", scheduler->dc_node, quorum, scheduler 438 lib/pengine/pe_output.c const char *last_written = crm_element_value(scheduler->input, scheduler 440 lib/pengine/pe_output.c const char *user = crm_element_value(scheduler->input, scheduler 442 lib/pengine/pe_output.c const char *client = crm_element_value(scheduler->input, scheduler 444 lib/pengine/pe_output.c const char *origin = crm_element_value(scheduler->input, scheduler 448 lib/pengine/pe_output.c out->message(out, "cluster-times", scheduler->priv->local_node_name, scheduler 454 lib/pengine/pe_output.c out->message(out, "cluster-counts", g_list_length(scheduler->nodes), scheduler 455 lib/pengine/pe_output.c scheduler->priv->ninstances, scheduler 456 lib/pengine/pe_output.c scheduler->priv->disabled_resources, scheduler 457 lib/pengine/pe_output.c scheduler->priv->blocked_resources); scheduler 462 lib/pengine/pe_output.c out->message(out, "cluster-options", scheduler); scheduler 468 lib/pengine/pe_output.c if (out->message(out, "maint-mode", scheduler->flags) == pcmk_rc_ok) { scheduler 480 lib/pengine/pe_output.c pcmk_scheduler_t *scheduler = va_arg(args, pcmk_scheduler_t *); scheduler 487 lib/pengine/pe_output.c const char *stack_s = get_cluster_stack(scheduler); scheduler 495 lib/pengine/pe_output.c if ((scheduler->dc_node == NULL) scheduler 498 lib/pengine/pe_output.c scheduler->input, LOG_DEBUG); scheduler 502 lib/pengine/pe_output.c const char *quorum = crm_element_value(scheduler->input, scheduler 504 lib/pengine/pe_output.c char *dc_name = scheduler->dc_node? pe__node_display_name(scheduler->dc_node, pcmk_is_set(show_opts, pcmk_show_node_id)) : NULL; scheduler 505 lib/pengine/pe_output.c bool mixed_version = is_mixed_version(scheduler); scheduler 508 lib/pengine/pe_output.c out->message(out, "cluster-dc", scheduler->dc_node, quorum, scheduler 514 lib/pengine/pe_output.c const char *last_written = crm_element_value(scheduler->input, scheduler 516 lib/pengine/pe_output.c const char *user = crm_element_value(scheduler->input, scheduler 518 lib/pengine/pe_output.c const char *client = crm_element_value(scheduler->input, scheduler 520 lib/pengine/pe_output.c const char *origin = crm_element_value(scheduler->input, scheduler 524 lib/pengine/pe_output.c out->message(out, "cluster-times", scheduler->priv->local_node_name, scheduler 530 lib/pengine/pe_output.c out->message(out, "cluster-counts", g_list_length(scheduler->nodes), scheduler 531 lib/pengine/pe_output.c scheduler->priv->ninstances, scheduler 532 lib/pengine/pe_output.c scheduler->priv->disabled_resources, scheduler 533 lib/pengine/pe_output.c scheduler->priv->blocked_resources); scheduler 544 lib/pengine/pe_output.c out->message(out, "cluster-options", scheduler); scheduler 550 lib/pengine/pe_output.c if (out->message(out, "maint-mode", scheduler->flags) == pcmk_rc_ok) { scheduler 717 lib/pengine/pe_output.c pcmk_scheduler_t *scheduler = va_arg(args, pcmk_scheduler_t *); scheduler 727 lib/pengine/pe_output.c for (gIter = scheduler->priv->location_constraints; scheduler 1025 lib/pengine/pe_output.c pcmk_scheduler_t *scheduler = va_arg(args, pcmk_scheduler_t *); scheduler 1027 lib/pengine/pe_output.c if (pcmk_is_set(scheduler->flags, pcmk__sched_fencing_enabled)) { scheduler 1033 lib/pengine/pe_output.c if (pcmk_is_set(scheduler->flags, pcmk__sched_symmetric_cluster)) { scheduler 1039 lib/pengine/pe_output.c switch (scheduler->no_quorum_policy) { scheduler 1063 lib/pengine/pe_output.c if (pcmk_is_set(scheduler->flags, pcmk__sched_in_maintenance)) { scheduler 1078 lib/pengine/pe_output.c } else if (pcmk_is_set(scheduler->flags, pcmk__sched_stop_all)) { scheduler 1102 lib/pengine/pe_output.c pcmk_scheduler_t *scheduler = va_arg(args, pcmk_scheduler_t *); scheduler 1104 lib/pengine/pe_output.c if (pcmk_is_set(scheduler->flags, pcmk__sched_in_maintenance)) { scheduler 1106 lib/pengine/pe_output.c } else if (pcmk_is_set(scheduler->flags, pcmk__sched_stop_all)) { scheduler 1116 lib/pengine/pe_output.c pcmk_scheduler_t *scheduler = va_arg(args, pcmk_scheduler_t *); scheduler 1118 lib/pengine/pe_output.c if (pcmk_is_set(scheduler->flags, pcmk__sched_fencing_enabled)) { scheduler 1124 lib/pengine/pe_output.c if (pcmk_is_set(scheduler->flags, pcmk__sched_symmetric_cluster)) { scheduler 1130 lib/pengine/pe_output.c switch (scheduler->no_quorum_policy) { scheduler 1192 lib/pengine/pe_output.c pcmk_scheduler_t *scheduler = va_arg(args, pcmk_scheduler_t *); scheduler 1194 lib/pengine/pe_output.c const char *stonith_enabled = pcmk__flag_text(scheduler->flags, scheduler 1197 lib/pengine/pe_output.c pcmk__flag_text(scheduler->flags, pcmk__sched_symmetric_cluster); scheduler 1199 lib/pengine/pe_output.c no_quorum_policy_text(scheduler->no_quorum_policy); scheduler 1200 lib/pengine/pe_output.c const char *maintenance_mode = pcmk__flag_text(scheduler->flags, scheduler 1202 lib/pengine/pe_output.c const char *stop_all_resources = pcmk__flag_text(scheduler->flags, scheduler 1205 lib/pengine/pe_output.c crm_strdup_printf("%u", scheduler->priv->fence_timeout_ms); scheduler 1208 lib/pengine/pe_output.c crm_strdup_printf("%u", scheduler->priv->priority_fencing_ms); scheduler 1662 lib/pengine/pe_output.c pcmk_scheduler_t *scheduler = va_arg(args, pcmk_scheduler_t *); scheduler 1671 lib/pengine/pe_output.c if (xmlChildElementCount(scheduler->priv->failed) == 0) { scheduler 1675 lib/pengine/pe_output.c for (xml_op = pcmk__xe_first_child(scheduler->priv->failed, NULL, NULL, scheduler 2063 lib/pengine/pe_output.c node->priv->scheduler->dc_node); scheduler 2191 lib/pengine/pe_output.c pcmk_scheduler_t *scheduler = va_arg(args, pcmk_scheduler_t *); scheduler 2205 lib/pengine/pe_output.c rsc = pe_find_resource(scheduler->priv->resources, op_rsc); scheduler 2249 lib/pengine/pe_output.c pcmk_scheduler_t *scheduler = va_arg(args, pcmk_scheduler_t *); scheduler 2274 lib/pengine/pe_output.c rsc = pe_find_resource(scheduler->priv->resources, op_rsc); scheduler 2336 lib/pengine/pe_output.c pcmk_scheduler_t *scheduler = va_arg(args, pcmk_scheduler_t *); scheduler 2345 lib/pengine/pe_output.c for (GList *gIter = scheduler->nodes; gIter != NULL; gIter = gIter->next) { scheduler 2384 lib/pengine/pe_output.c scheduler, name, &expected_score); scheduler 2438 lib/pengine/pe_output.c pcmk_scheduler_t *scheduler = va_arg(args, pcmk_scheduler_t *); scheduler 2467 lib/pengine/pe_output.c rsc = pe_find_resource(scheduler->priv->resources, rsc_id); scheduler 2517 lib/pengine/pe_output.c rsc = pe_find_resource(scheduler->priv->resources, scheduler 2526 lib/pengine/pe_output.c out->message(out, "resource-operation-list", scheduler, rsc, node, scheduler 2702 lib/pengine/pe_output.c pcmk_scheduler_t *scheduler = va_arg(args, pcmk_scheduler_t *); scheduler 2710 lib/pengine/pe_output.c xmlNode *cib_status = pcmk_find_cib_element(scheduler->input, scheduler 2723 lib/pengine/pe_output.c pcmk_node_t *node = pe_find_node_id(scheduler->nodes, scheduler 2738 lib/pengine/pe_output.c out->message(out, "node-history-list", scheduler, node, node_state, scheduler 3016 lib/pengine/pe_output.c pcmk_scheduler_t *scheduler = va_arg(args, pcmk_scheduler_t *); scheduler 3039 lib/pengine/pe_output.c GList *rscs = pe__filter_rsc_list(scheduler->priv->resources, only_rsc); scheduler 3050 lib/pengine/pe_output.c for (rsc_iter = scheduler->priv->resources; scheduler 3127 lib/pengine/pe_output.c pcmk_scheduler_t *scheduler G_GNUC_UNUSED = va_arg(args, scheduler 55 lib/pengine/pe_status_private.h pcmk_scheduler_t *scheduler); scheduler 72 lib/pengine/pe_status_private.h pcmk_scheduler_t *scheduler); scheduler 80 lib/pengine/pe_status_private.h pcmk_scheduler_t *scheduler); scheduler 84 lib/pengine/pe_status_private.h pcmk_scheduler_t *scheduler); scheduler 88 lib/pengine/pe_status_private.h pcmk_scheduler_t *scheduler); scheduler 94 lib/pengine/pe_status_private.h gboolean unpack_config(xmlNode *config, pcmk_scheduler_t *scheduler); scheduler 97 lib/pengine/pe_status_private.h gboolean unpack_nodes(xmlNode *xml_nodes, pcmk_scheduler_t *scheduler); scheduler 100 lib/pengine/pe_status_private.h gboolean unpack_tags(xmlNode *xml_tags, pcmk_scheduler_t *scheduler); scheduler 103 lib/pengine/pe_status_private.h gboolean unpack_status(xmlNode *status, pcmk_scheduler_t *scheduler); scheduler 109 lib/pengine/pe_status_private.h pcmk_scheduler_t *scheduler); scheduler 112 lib/pengine/pe_status_private.h void pe__unpack_node_health_scores(pcmk_scheduler_t *scheduler); scheduler 29 lib/pengine/remote.c pe__resource_contains_guest_node(const pcmk_scheduler_t *scheduler, scheduler 32 lib/pengine/remote.c if ((rsc != NULL) && (scheduler != NULL) scheduler 33 lib/pengine/remote.c && pcmk_is_set(scheduler->flags, pcmk__sched_have_remote_nodes)) { scheduler 85 lib/pengine/remote.c pe_foreach_guest_node(const pcmk_scheduler_t *scheduler, scheduler 92 lib/pengine/remote.c CRM_CHECK(scheduler && host && host->details && helper, return); scheduler 93 lib/pengine/remote.c if (!pcmk_is_set(scheduler->flags, pcmk__sched_have_remote_nodes)) { scheduler 101 lib/pengine/remote.c pcmk_node_t *guest_node = pcmk_find_node(scheduler, rsc->id); scheduler 194 lib/pengine/remote.c pcmk_scheduler_t *scheduler) scheduler 198 lib/pengine/remote.c CRM_CHECK(scheduler && rsc_op && rsc && node, return); scheduler 208 lib/pengine/remote.c scheduler->priv->param_check = g_list_prepend(scheduler->priv->param_check, scheduler 220 lib/pengine/remote.c pe__foreach_param_check(pcmk_scheduler_t *scheduler, scheduler 224 lib/pengine/remote.c CRM_CHECK(scheduler && cb, return); scheduler 226 lib/pengine/remote.c for (GList *item = scheduler->priv->param_check; scheduler 236 lib/pengine/remote.c pe__free_param_checks(pcmk_scheduler_t *scheduler) scheduler 238 lib/pengine/remote.c if ((scheduler != NULL) && (scheduler->priv->param_check != NULL)) { scheduler 239 lib/pengine/remote.c g_list_free_full(scheduler->priv->param_check, free); scheduler 240 lib/pengine/remote.c scheduler->priv->param_check = NULL; scheduler 36 lib/pengine/status.c pcmk_scheduler_t *scheduler = calloc(1, sizeof(pcmk_scheduler_t)); scheduler 38 lib/pengine/status.c if (scheduler == NULL) { scheduler 41 lib/pengine/status.c scheduler->priv = calloc(1, sizeof(pcmk__scheduler_private_t)); scheduler 42 lib/pengine/status.c if (scheduler->priv == NULL) { scheduler 43 lib/pengine/status.c free(scheduler); scheduler 46 lib/pengine/status.c set_working_set_defaults(scheduler); scheduler 47 lib/pengine/status.c return scheduler; scheduler 56 lib/pengine/status.c pe_free_working_set(pcmk_scheduler_t *scheduler) scheduler 58 lib/pengine/status.c if (scheduler != NULL) { scheduler 59 lib/pengine/status.c pe_reset_working_set(scheduler); scheduler 60 lib/pengine/status.c free(scheduler->priv->local_node_name); scheduler 61 lib/pengine/status.c free(scheduler->priv); scheduler 62 lib/pengine/status.c free(scheduler); scheduler 77 lib/pengine/status.c check_for_deprecated_rules(pcmk_scheduler_t *scheduler) scheduler 81 lib/pengine/status.c scheduler->input, LOG_NEVER); scheduler 103 lib/pengine/status.c cluster_status(pcmk_scheduler_t * scheduler) scheduler 108 lib/pengine/status.c if ((scheduler == NULL) || (scheduler->input == NULL)) { scheduler 112 lib/pengine/status.c new_version = crm_element_value(scheduler->input, PCMK_XA_CRM_FEATURE_SET); scheduler 122 lib/pengine/status.c if (scheduler->priv->failed != NULL) { scheduler 123 lib/pengine/status.c pcmk__xml_free(scheduler->priv->failed); scheduler 125 lib/pengine/status.c scheduler->priv->failed = pcmk__xe_create(NULL, "failed-ops"); scheduler 127 lib/pengine/status.c if (scheduler->priv->now == NULL) { scheduler 128 lib/pengine/status.c scheduler->priv->now = crm_time_new(NULL); scheduler 131 lib/pengine/status.c if (pcmk__xe_attr_is_true(scheduler->input, PCMK_XA_HAVE_QUORUM)) { scheduler 132 lib/pengine/status.c pcmk__set_scheduler_flags(scheduler, pcmk__sched_quorate); scheduler 134 lib/pengine/status.c pcmk__clear_scheduler_flags(scheduler, pcmk__sched_quorate); scheduler 137 lib/pengine/status.c scheduler->priv->op_defaults = get_xpath_object("//" PCMK_XE_OP_DEFAULTS, scheduler 138 lib/pengine/status.c scheduler->input, scheduler 140 lib/pengine/status.c check_for_deprecated_rules(scheduler); scheduler 142 lib/pengine/status.c scheduler->priv->rsc_defaults = get_xpath_object("//" PCMK_XE_RSC_DEFAULTS, scheduler 143 lib/pengine/status.c scheduler->input, scheduler 146 lib/pengine/status.c section = get_xpath_object("//" PCMK_XE_CRM_CONFIG, scheduler->input, scheduler 148 lib/pengine/status.c unpack_config(section, scheduler); scheduler 150 lib/pengine/status.c if (!pcmk_any_flags_set(scheduler->flags, scheduler 152 lib/pengine/status.c && (scheduler->no_quorum_policy != pcmk_no_quorum_ignore)) { scheduler 153 lib/pengine/status.c pcmk__sched_warn(scheduler, scheduler 158 lib/pengine/status.c section = get_xpath_object("//" PCMK_XE_NODES, scheduler->input, LOG_TRACE); scheduler 159 lib/pengine/status.c unpack_nodes(section, scheduler); scheduler 161 lib/pengine/status.c section = get_xpath_object("//" PCMK_XE_RESOURCES, scheduler->input, scheduler 163 lib/pengine/status.c if (!pcmk_is_set(scheduler->flags, pcmk__sched_location_only)) { scheduler 164 lib/pengine/status.c unpack_remote_nodes(section, scheduler); scheduler 166 lib/pengine/status.c unpack_resources(section, scheduler); scheduler 168 lib/pengine/status.c section = get_xpath_object("//" PCMK_XE_FENCING_TOPOLOGY, scheduler->input, scheduler 172 lib/pengine/status.c section = get_xpath_object("//" PCMK_XE_TAGS, scheduler->input, LOG_NEVER); scheduler 173 lib/pengine/status.c unpack_tags(section, scheduler); scheduler 175 lib/pengine/status.c if (!pcmk_is_set(scheduler->flags, pcmk__sched_location_only)) { scheduler 176 lib/pengine/status.c section = get_xpath_object("//" PCMK_XE_STATUS, scheduler->input, scheduler 178 lib/pengine/status.c unpack_status(section, scheduler); scheduler 181 lib/pengine/status.c if (!pcmk_is_set(scheduler->flags, pcmk__sched_no_counts)) { scheduler 182 lib/pengine/status.c for (GList *item = scheduler->priv->resources; scheduler 190 lib/pengine/status.c scheduler->priv->ninstances, scheduler 191 lib/pengine/status.c scheduler->priv->disabled_resources, scheduler 192 lib/pengine/status.c scheduler->priv->blocked_resources); scheduler 195 lib/pengine/status.c if ((scheduler->priv->local_node_name != NULL) scheduler 196 lib/pengine/status.c && (pcmk_find_node(scheduler, scheduler 197 lib/pengine/status.c scheduler->priv->local_node_name) == NULL)) { scheduler 199 lib/pengine/status.c scheduler->priv->local_node_name); scheduler 200 lib/pengine/status.c pe_create_node(scheduler->priv->local_node_name, scheduler 201 lib/pengine/status.c scheduler->priv->local_node_name, NULL, 0, scheduler); scheduler 204 lib/pengine/status.c pcmk__set_scheduler_flags(scheduler, pcmk__sched_have_status); scheduler 338 lib/pengine/status.c cleanup_calculations(pcmk_scheduler_t *scheduler) scheduler 340 lib/pengine/status.c if (scheduler == NULL) { scheduler 344 lib/pengine/status.c pcmk__clear_scheduler_flags(scheduler, pcmk__sched_have_status); scheduler 345 lib/pengine/status.c if (scheduler->priv->options != NULL) { scheduler 346 lib/pengine/status.c g_hash_table_destroy(scheduler->priv->options); scheduler 349 lib/pengine/status.c if (scheduler->priv->singletons != NULL) { scheduler 350 lib/pengine/status.c g_hash_table_destroy(scheduler->priv->singletons); scheduler 353 lib/pengine/status.c if (scheduler->priv->ticket_constraints != NULL) { scheduler 354 lib/pengine/status.c g_hash_table_destroy(scheduler->priv->ticket_constraints); scheduler 357 lib/pengine/status.c if (scheduler->priv->templates != NULL) { scheduler 358 lib/pengine/status.c g_hash_table_destroy(scheduler->priv->templates); scheduler 361 lib/pengine/status.c if (scheduler->priv->tags != NULL) { scheduler 362 lib/pengine/status.c g_hash_table_destroy(scheduler->priv->tags); scheduler 366 lib/pengine/status.c pe_free_resources(scheduler->priv->resources); scheduler 369 lib/pengine/status.c pe_free_actions(scheduler->priv->actions); scheduler 372 lib/pengine/status.c pe_free_nodes(scheduler->nodes); scheduler 374 lib/pengine/status.c pe__free_param_checks(scheduler); scheduler 375 lib/pengine/status.c g_list_free(scheduler->priv->stop_needed); scheduler 376 lib/pengine/status.c crm_time_free(scheduler->priv->now); scheduler 377 lib/pengine/status.c pcmk__xml_free(scheduler->input); scheduler 378 lib/pengine/status.c pcmk__xml_free(scheduler->priv->failed); scheduler 379 lib/pengine/status.c pcmk__xml_free(scheduler->priv->graph); scheduler 381 lib/pengine/status.c set_working_set_defaults(scheduler); scheduler 383 lib/pengine/status.c CRM_LOG_ASSERT((scheduler->priv->location_constraints == NULL) scheduler 384 lib/pengine/status.c && (scheduler->priv->ordering_constraints == NULL)); scheduler 393 lib/pengine/status.c pe_reset_working_set(pcmk_scheduler_t *scheduler) scheduler 395 lib/pengine/status.c if (scheduler == NULL) { scheduler 400 lib/pengine/status.c g_list_length(scheduler->priv->ordering_constraints)); scheduler 401 lib/pengine/status.c pe__free_ordering(scheduler->priv->ordering_constraints); scheduler 402 lib/pengine/status.c scheduler->priv->ordering_constraints = NULL; scheduler 405 lib/pengine/status.c g_list_length(scheduler->priv->location_constraints)); scheduler 406 lib/pengine/status.c pe__free_location(scheduler->priv->location_constraints); scheduler 407 lib/pengine/status.c scheduler->priv->location_constraints = NULL; scheduler 410 lib/pengine/status.c g_list_length(scheduler->priv->colocation_constraints)); scheduler 411 lib/pengine/status.c g_list_free_full(scheduler->priv->colocation_constraints, free); scheduler 412 lib/pengine/status.c scheduler->priv->colocation_constraints = NULL; scheduler 414 lib/pengine/status.c cleanup_calculations(scheduler); scheduler 418 lib/pengine/status.c set_working_set_defaults(pcmk_scheduler_t *scheduler) scheduler 421 lib/pengine/status.c pcmk__scheduler_private_t *priv = scheduler->priv; scheduler 423 lib/pengine/status.c char *local_node_name = scheduler->priv->local_node_name; scheduler 426 lib/pengine/status.c memset(scheduler, 0, sizeof(pcmk_scheduler_t)); scheduler 430 lib/pengine/status.c scheduler->priv = priv; scheduler 431 lib/pengine/status.c scheduler->priv->out = out; scheduler 432 lib/pengine/status.c scheduler->priv->local_node_name = local_node_name; scheduler 435 lib/pengine/status.c scheduler->priv->next_ordering_id = 1; scheduler 436 lib/pengine/status.c scheduler->priv->next_action_id = 1; scheduler 437 lib/pengine/status.c scheduler->no_quorum_policy = pcmk_no_quorum_stop; scheduler 439 lib/pengine/status.c pcmk__set_scheduler_flags(scheduler, scheduler 445 lib/pengine/status.c pcmk__set_scheduler_flags(scheduler, scheduler 20 lib/pengine/tags.c pe__rscs_with_tag(pcmk_scheduler_t *scheduler, const char *tag_name) scheduler 25 lib/pengine/tags.c if (scheduler->priv->tags == NULL) { scheduler 29 lib/pengine/tags.c value = g_hash_table_lookup(scheduler->priv->tags, tag_name); scheduler 41 lib/pengine/tags.c pe_find_resource_with_flags(scheduler->priv->resources, id, flags); scheduler 54 lib/pengine/tags.c pe__unames_with_tag(pcmk_scheduler_t *scheduler, const char *tag_name) scheduler 59 lib/pengine/tags.c if (scheduler->priv->tags == NULL) { scheduler 63 lib/pengine/tags.c value = g_hash_table_lookup(scheduler->priv->tags, tag_name); scheduler 75 lib/pengine/tags.c pcmk_node_t *node = pe_find_node_id(scheduler->nodes, id); scheduler 89 lib/pengine/tags.c pe__rsc_has_tag(pcmk_scheduler_t *scheduler, const char *rsc_name, scheduler 92 lib/pengine/tags.c GList *rscs = pe__rscs_with_tag(scheduler, tag_name); scheduler 105 lib/pengine/tags.c pe__uname_has_tag(pcmk_scheduler_t *scheduler, const char *node_name, scheduler 108 lib/pengine/tags.c GList *unames = pe__unames_with_tag(scheduler, tag_name); scheduler 19 lib/pengine/tests/native/native_find_rsc_test.c pcmk_scheduler_t *scheduler = NULL; scheduler 40 lib/pengine/tests/native/native_find_rsc_test.c scheduler = pe_new_working_set(); scheduler 42 lib/pengine/tests/native/native_find_rsc_test.c if (scheduler == NULL) { scheduler 46 lib/pengine/tests/native/native_find_rsc_test.c pcmk__set_scheduler_flags(scheduler, pcmk__sched_no_counts); scheduler 47 lib/pengine/tests/native/native_find_rsc_test.c scheduler->input = input; scheduler 49 lib/pengine/tests/native/native_find_rsc_test.c cluster_status(scheduler); scheduler 52 lib/pengine/tests/native/native_find_rsc_test.c cluster01 = pcmk_find_node(scheduler, "cluster01"); scheduler 53 lib/pengine/tests/native/native_find_rsc_test.c cluster02 = pcmk_find_node(scheduler, "cluster02"); scheduler 54 lib/pengine/tests/native/native_find_rsc_test.c httpd_bundle_0 = pcmk_find_node(scheduler, "httpd-bundle-0"); scheduler 57 lib/pengine/tests/native/native_find_rsc_test.c for (GList *iter = scheduler->priv->resources; scheduler 82 lib/pengine/tests/native/native_find_rsc_test.c pe_free_working_set(scheduler); scheduler 89 lib/pengine/tests/native/native_find_rsc_test.c pcmk_resource_t *rsc = g_list_first(scheduler->priv->resources)->data; scheduler 122 lib/pengine/tests/native/native_find_rsc_test.c for (GList *iter = scheduler->priv->resources; scheduler 20 lib/pengine/tests/native/pe_base_name_eq_test.c pcmk_scheduler_t *scheduler = NULL; scheduler 39 lib/pengine/tests/native/pe_base_name_eq_test.c scheduler = pe_new_working_set(); scheduler 41 lib/pengine/tests/native/pe_base_name_eq_test.c if (scheduler == NULL) { scheduler 45 lib/pengine/tests/native/pe_base_name_eq_test.c pcmk__set_scheduler_flags(scheduler, pcmk__sched_no_counts); scheduler 46 lib/pengine/tests/native/pe_base_name_eq_test.c scheduler->input = input; scheduler 48 lib/pengine/tests/native/pe_base_name_eq_test.c cluster_status(scheduler); scheduler 51 lib/pengine/tests/native/pe_base_name_eq_test.c for (GList *iter = scheduler->priv->resources; scheduler 98 lib/pengine/tests/native/pe_base_name_eq_test.c pe_free_working_set(scheduler); scheduler 30 lib/pengine/tests/status/pe_new_working_set_test.c pcmk_scheduler_t *scheduler = pe_new_working_set(); scheduler 36 lib/pengine/tests/status/pe_new_working_set_test.c assert_non_null(scheduler); scheduler 41 lib/pengine/tests/status/pe_new_working_set_test.c free(scheduler); scheduler 23 lib/pengine/tests/status/set_working_set_defaults_test.c pcmk_scheduler_t *scheduler = pcmk__assert_alloc(1, scheduler 26 lib/pengine/tests/status/set_working_set_defaults_test.c scheduler->priv = pcmk__assert_alloc(1, sizeof(pcmk__scheduler_private_t)); scheduler 27 lib/pengine/tests/status/set_working_set_defaults_test.c set_working_set_defaults(scheduler); scheduler 36 lib/pengine/tests/status/set_working_set_defaults_test.c assert_null(scheduler->priv->out); scheduler 37 lib/pengine/tests/status/set_working_set_defaults_test.c assert_int_equal(scheduler->priv->next_ordering_id, 1); scheduler 38 lib/pengine/tests/status/set_working_set_defaults_test.c assert_int_equal(scheduler->priv->next_action_id, 1); scheduler 39 lib/pengine/tests/status/set_working_set_defaults_test.c assert_int_equal(scheduler->no_quorum_policy, pcmk_no_quorum_stop); scheduler 40 lib/pengine/tests/status/set_working_set_defaults_test.c assert_int_equal(scheduler->flags, flags); scheduler 45 lib/pengine/tests/status/set_working_set_defaults_test.c free(scheduler->priv); scheduler 46 lib/pengine/tests/status/set_working_set_defaults_test.c free(scheduler); scheduler 51 lib/pengine/unpack.c #define set_config_flag(scheduler, option, flag) do { \ scheduler 52 lib/pengine/unpack.c GHashTable *config_hash = (scheduler)->priv->options; \ scheduler 57 lib/pengine/unpack.c (scheduler)->flags = pcmk__set_flags_as(__func__, __LINE__, \ scheduler 59 lib/pengine/unpack.c crm_system_name, (scheduler)->flags, \ scheduler 62 lib/pengine/unpack.c (scheduler)->flags = pcmk__clear_flags_as(__func__, __LINE__, \ scheduler 64 lib/pengine/unpack.c crm_system_name, (scheduler)->flags, \ scheduler 73 lib/pengine/unpack.c static void determine_remote_online_status(pcmk_scheduler_t *scheduler, scheduler 76 lib/pengine/unpack.c bool overwrite, pcmk_scheduler_t *scheduler); scheduler 79 lib/pengine/unpack.c pcmk_scheduler_t *scheduler); scheduler 82 lib/pengine/unpack.c pcmk_scheduler_t *scheduler); scheduler 114 lib/pengine/unpack.c pe_fence_node(pcmk_scheduler_t *scheduler, pcmk_node_t *node, scheduler 130 lib/pengine/unpack.c pcmk__sched_warn(scheduler, scheduler 162 lib/pengine/unpack.c pcmk__sched_warn(scheduler, "Remote node %s %s: %s", scheduler 164 lib/pengine/unpack.c pe_can_fence(scheduler, node)? "will be fenced" : "is unclean", scheduler 169 lib/pengine/unpack.c pe_fence_op(node, NULL, TRUE, reason, FALSE, scheduler); scheduler 174 lib/pengine/unpack.c pe_can_fence(scheduler, node)? "would also be fenced" : "also is unclean", scheduler 178 lib/pengine/unpack.c pcmk__sched_warn(scheduler, "Cluster node %s %s: %s", scheduler 180 lib/pengine/unpack.c pe_can_fence(scheduler, node)? "will be fenced" : "is unclean", scheduler 183 lib/pengine/unpack.c pe_fence_op(node, NULL, TRUE, reason, priority_delay, scheduler); scheduler 203 lib/pengine/unpack.c set_if_xpath(uint64_t flag, const char *xpath, pcmk_scheduler_t *scheduler) scheduler 207 lib/pengine/unpack.c if (!pcmk_is_set(scheduler->flags, flag)) { scheduler 208 lib/pengine/unpack.c result = xpath_search(scheduler->input, xpath); scheduler 210 lib/pengine/unpack.c pcmk__set_scheduler_flags(scheduler, flag); scheduler 217 lib/pengine/unpack.c unpack_config(xmlNode *config, pcmk_scheduler_t *scheduler) scheduler 224 lib/pengine/unpack.c .now = scheduler->priv->now, scheduler 230 lib/pengine/unpack.c scheduler->priv->options = config_hash; scheduler 234 lib/pengine/unpack.c scheduler); scheduler 238 lib/pengine/unpack.c set_config_flag(scheduler, PCMK_OPT_ENABLE_STARTUP_PROBES, scheduler 240 lib/pengine/unpack.c if (!pcmk_is_set(scheduler->flags, pcmk__sched_probe_resources)) { scheduler 249 lib/pengine/unpack.c pcmk__set_scheduler_flags(scheduler, pcmk__sched_have_fencing); scheduler 256 lib/pengine/unpack.c scheduler); scheduler 259 lib/pengine/unpack.c pcmk_parse_interval_spec(value, &(scheduler->priv->fence_timeout_ms)); scheduler 262 lib/pengine/unpack.c pcmk__readable_interval(scheduler->priv->fence_timeout_ms)); scheduler 264 lib/pengine/unpack.c set_config_flag(scheduler, PCMK_OPT_STONITH_ENABLED, scheduler 266 lib/pengine/unpack.c if (pcmk_is_set(scheduler->flags, pcmk__sched_fencing_enabled)) { scheduler 272 lib/pengine/unpack.c scheduler->priv->fence_action = scheduler 274 lib/pengine/unpack.c crm_trace("STONITH will %s nodes", scheduler->priv->fence_action); scheduler 276 lib/pengine/unpack.c set_config_flag(scheduler, PCMK_OPT_CONCURRENT_FENCING, scheduler 278 lib/pengine/unpack.c if (pcmk_is_set(scheduler->flags, pcmk__sched_concurrent_fencing)) { scheduler 287 lib/pengine/unpack.c &(scheduler->priv->priority_fencing_ms)); scheduler 289 lib/pengine/unpack.c pcmk__readable_interval(scheduler->priv->priority_fencing_ms)); scheduler 292 lib/pengine/unpack.c set_config_flag(scheduler, PCMK_OPT_STOP_ALL_RESOURCES, scheduler 295 lib/pengine/unpack.c pcmk__flag_text(scheduler->flags, pcmk__sched_stop_all)); scheduler 297 lib/pengine/unpack.c set_config_flag(scheduler, PCMK_OPT_SYMMETRIC_CLUSTER, scheduler 299 lib/pengine/unpack.c if (pcmk_is_set(scheduler->flags, pcmk__sched_symmetric_cluster)) { scheduler 306 lib/pengine/unpack.c scheduler->no_quorum_policy = pcmk_no_quorum_ignore; scheduler 309 lib/pengine/unpack.c scheduler->no_quorum_policy = pcmk_no_quorum_freeze; scheduler 312 lib/pengine/unpack.c scheduler->no_quorum_policy = pcmk_no_quorum_demote; scheduler 316 lib/pengine/unpack.c if (pcmk_is_set(scheduler->flags, pcmk__sched_fencing_enabled)) { scheduler 319 lib/pengine/unpack.c crm_element_value_int(scheduler->input, PCMK_XA_NO_QUORUM_PANIC, scheduler 322 lib/pengine/unpack.c || pcmk_is_set(scheduler->flags, pcmk__sched_quorate)) { scheduler 323 lib/pengine/unpack.c scheduler->no_quorum_policy = pcmk_no_quorum_fence; scheduler 327 lib/pengine/unpack.c scheduler->no_quorum_policy = pcmk_no_quorum_stop; scheduler 332 lib/pengine/unpack.c scheduler->no_quorum_policy = pcmk_no_quorum_stop; scheduler 336 lib/pengine/unpack.c scheduler->no_quorum_policy = pcmk_no_quorum_stop; scheduler 339 lib/pengine/unpack.c switch (scheduler->no_quorum_policy) { scheduler 358 lib/pengine/unpack.c set_config_flag(scheduler, PCMK_OPT_STOP_ORPHAN_RESOURCES, scheduler 360 lib/pengine/unpack.c if (pcmk_is_set(scheduler->flags, pcmk__sched_stop_removed_resources)) { scheduler 366 lib/pengine/unpack.c set_config_flag(scheduler, PCMK_OPT_STOP_ORPHAN_ACTIONS, scheduler 368 lib/pengine/unpack.c if (pcmk_is_set(scheduler->flags, pcmk__sched_cancel_removed_actions)) { scheduler 374 lib/pengine/unpack.c set_config_flag(scheduler, PCMK_OPT_MAINTENANCE_MODE, scheduler 377 lib/pengine/unpack.c pcmk__flag_text(scheduler->flags, pcmk__sched_in_maintenance)); scheduler 379 lib/pengine/unpack.c set_config_flag(scheduler, PCMK_OPT_START_FAILURE_IS_FATAL, scheduler 381 lib/pengine/unpack.c if (pcmk_is_set(scheduler->flags, pcmk__sched_start_failure_fatal)) { scheduler 387 lib/pengine/unpack.c if (pcmk_is_set(scheduler->flags, pcmk__sched_fencing_enabled)) { scheduler 388 lib/pengine/unpack.c set_config_flag(scheduler, PCMK_OPT_STARTUP_FENCING, scheduler 391 lib/pengine/unpack.c if (pcmk_is_set(scheduler->flags, pcmk__sched_startup_fencing)) { scheduler 398 lib/pengine/unpack.c pe__unpack_node_health_scores(scheduler); scheduler 400 lib/pengine/unpack.c scheduler->priv->placement_strategy = scheduler 402 lib/pengine/unpack.c crm_trace("Placement strategy: %s", scheduler->priv->placement_strategy); scheduler 404 lib/pengine/unpack.c set_config_flag(scheduler, PCMK_OPT_SHUTDOWN_LOCK, scheduler 406 lib/pengine/unpack.c if (pcmk_is_set(scheduler->flags, pcmk__sched_shutdown_lock)) { scheduler 408 lib/pengine/unpack.c pcmk_parse_interval_spec(value, &(scheduler->priv->shutdown_lock_ms)); scheduler 411 lib/pengine/unpack.c pcmk__readable_interval(scheduler->priv->shutdown_lock_ms)); scheduler 418 lib/pengine/unpack.c pcmk_parse_interval_spec(value, &(scheduler->priv->node_pending_ms)); scheduler 419 lib/pengine/unpack.c if (scheduler->priv->node_pending_ms == 0U) { scheduler 423 lib/pengine/unpack.c pcmk__readable_interval(scheduler->priv->node_pending_ms)); scheduler 445 lib/pengine/unpack.c int score, pcmk_scheduler_t *scheduler) scheduler 450 lib/pengine/unpack.c if (pcmk_find_node(scheduler, uname) != NULL) { scheduler 469 lib/pengine/unpack.c pcmk__sched_err(scheduler, "Could not allocate memory for node %s", scheduler 483 lib/pengine/unpack.c pcmk__sched_err(scheduler, "Could not allocate memory for node %s", scheduler 496 lib/pengine/unpack.c new_node->priv->scheduler = scheduler; scheduler 504 lib/pengine/unpack.c pcmk__set_scheduler_flags(scheduler, pcmk__sched_have_remote_nodes); scheduler 509 lib/pengine/unpack.c scheduler->nodes = g_list_insert_sorted(scheduler->nodes, new_node, scheduler 579 lib/pengine/unpack.c handle_startup_fencing(pcmk_scheduler_t *scheduler, pcmk_node_t *new_node) scheduler 590 lib/pengine/unpack.c if (pcmk_is_set(scheduler->flags, pcmk__sched_startup_fencing)) { scheduler 601 lib/pengine/unpack.c unpack_nodes(xmlNode *xml_nodes, pcmk_scheduler_t *scheduler) scheduler 635 lib/pengine/unpack.c new_node = pe_create_node(id, uname, type, score, scheduler); scheduler 641 lib/pengine/unpack.c handle_startup_fencing(scheduler, new_node); scheduler 643 lib/pengine/unpack.c add_node_attrs(xml_obj, new_node, FALSE, scheduler); scheduler 653 lib/pengine/unpack.c unpack_launcher(pcmk_resource_t *rsc, pcmk_scheduler_t *scheduler) scheduler 659 lib/pengine/unpack.c scheduler); scheduler 666 lib/pengine/unpack.c pcmk_resource_t *launcher = pe_find_resource(scheduler->priv->resources, scheduler 683 lib/pengine/unpack.c unpack_remote_nodes(xmlNode *xml_resources, pcmk_scheduler_t *scheduler) scheduler 704 lib/pengine/unpack.c && (pcmk_find_node(scheduler, new_node_id) == NULL)) { scheduler 708 lib/pengine/unpack.c 0, scheduler); scheduler 722 lib/pengine/unpack.c scheduler); scheduler 724 lib/pengine/unpack.c && (pcmk_find_node(scheduler, new_node_id) == NULL)) { scheduler 728 lib/pengine/unpack.c 0, scheduler); scheduler 742 lib/pengine/unpack.c scheduler); scheduler 745 lib/pengine/unpack.c && (pcmk_find_node(scheduler, new_node_id) == NULL)) { scheduler 750 lib/pengine/unpack.c 0, scheduler); scheduler 767 lib/pengine/unpack.c link_rsc2remotenode(pcmk_scheduler_t *scheduler, pcmk_resource_t *new_rsc) scheduler 775 lib/pengine/unpack.c if (pcmk_is_set(scheduler->flags, pcmk__sched_location_only)) { scheduler 780 lib/pengine/unpack.c remote_node = pcmk_find_node(scheduler, new_rsc->id); scheduler 791 lib/pengine/unpack.c handle_startup_fencing(scheduler, remote_node); scheduler 815 lib/pengine/unpack.c unpack_resources(const xmlNode *xml_resources, pcmk_scheduler_t *scheduler) scheduler 820 lib/pengine/unpack.c scheduler->priv->templates = pcmk__strkey_table(free, pcmk__free_idref); scheduler 835 lib/pengine/unpack.c if (g_hash_table_lookup_extended(scheduler->priv->templates, id, scheduler 838 lib/pengine/unpack.c pcmk__insert_dup(scheduler->priv->templates, id, NULL); scheduler 845 lib/pengine/unpack.c scheduler) == pcmk_rc_ok) { scheduler 846 lib/pengine/unpack.c scheduler->priv->resources = scheduler 847 lib/pengine/unpack.c g_list_append(scheduler->priv->resources, new_rsc); scheduler 857 lib/pengine/unpack.c for (gIter = scheduler->priv->resources; scheduler 862 lib/pengine/unpack.c unpack_launcher(rsc, scheduler); scheduler 863 lib/pengine/unpack.c link_rsc2remotenode(scheduler, rsc); scheduler 866 lib/pengine/unpack.c scheduler->priv->resources = g_list_sort(scheduler->priv->resources, scheduler 868 lib/pengine/unpack.c if (pcmk_is_set(scheduler->flags, pcmk__sched_location_only)) { scheduler 871 lib/pengine/unpack.c } else if (pcmk_is_set(scheduler->flags, pcmk__sched_fencing_enabled) scheduler 872 lib/pengine/unpack.c && !pcmk_is_set(scheduler->flags, pcmk__sched_have_fencing)) { scheduler 925 lib/pengine/unpack.c unpack_tags(xmlNode *xml_tags, pcmk_scheduler_t *scheduler) scheduler 929 lib/pengine/unpack.c scheduler->priv->tags = pcmk__strkey_table(free, pcmk__free_idref); scheduler 956 lib/pengine/unpack.c pcmk__add_idref(scheduler->priv->tags, tag_id, obj_ref); scheduler 975 lib/pengine/unpack.c pcmk_scheduler_t *scheduler = userdata; scheduler 992 lib/pengine/unpack.c ticket = g_hash_table_lookup(scheduler->priv->ticket_constraints, scheduler 995 lib/pengine/unpack.c ticket = ticket_new(ticket_id, scheduler); scheduler 1051 lib/pengine/unpack.c pcmk_scheduler_t *scheduler) scheduler 1083 lib/pengine/unpack.c add_node_attrs(attrs, this_node, TRUE, scheduler); scheduler 1114 lib/pengine/unpack.c && !pcmk_is_set(scheduler->flags, pcmk__sched_fencing_enabled)) { scheduler 1143 lib/pengine/unpack.c pcmk_scheduler_t *scheduler) scheduler 1150 lib/pengine/unpack.c add_node_attrs(attrs, node, TRUE, scheduler); scheduler 1189 lib/pengine/unpack.c unpack_node_state(const xmlNode *state, pcmk_scheduler_t *scheduler) scheduler 1216 lib/pengine/unpack.c this_node = pe_find_node_any(scheduler->nodes, id, uname); scheduler 1241 lib/pengine/unpack.c unpack_transient_attributes(state, this_node, scheduler); scheduler 1251 lib/pengine/unpack.c determine_online_status(state, this_node, scheduler); scheduler 1253 lib/pengine/unpack.c if (!pcmk_is_set(scheduler->flags, pcmk__sched_quorate) scheduler 1255 lib/pengine/unpack.c && (scheduler->no_quorum_policy == pcmk_no_quorum_fence)) { scheduler 1260 lib/pengine/unpack.c pe_fence_node(scheduler, this_node, "cluster does not have quorum", scheduler 1284 lib/pengine/unpack.c pcmk_scheduler_t *scheduler) scheduler 1305 lib/pengine/unpack.c this_node = pe_find_node_any(scheduler->nodes, id, uname); scheduler 1347 lib/pengine/unpack.c || (!pcmk_is_set(scheduler->flags, pcmk__sched_shutdown_lock) scheduler 1359 lib/pengine/unpack.c } else if (!pcmk_any_flags_set(scheduler->flags, scheduler 1369 lib/pengine/unpack.c determine_remote_online_status(scheduler, this_node); scheduler 1370 lib/pengine/unpack.c unpack_handle_remote_attrs(this_node, state, scheduler); scheduler 1377 lib/pengine/unpack.c unpack_node_lrm(this_node, state, scheduler); scheduler 1388 lib/pengine/unpack.c unpack_status(xmlNode *status, pcmk_scheduler_t *scheduler) scheduler 1394 lib/pengine/unpack.c if (scheduler->priv->ticket_constraints == NULL) { scheduler 1395 lib/pengine/unpack.c scheduler->priv->ticket_constraints = scheduler 1404 lib/pengine/unpack.c unpack_ticket_state, scheduler); scheduler 1407 lib/pengine/unpack.c unpack_node_state(state, scheduler); scheduler 1411 lib/pengine/unpack.c while (unpack_node_history(status, FALSE, scheduler) == EAGAIN) { scheduler 1417 lib/pengine/unpack.c pcmk_is_set(scheduler->flags, scheduler 1419 lib/pengine/unpack.c scheduler); scheduler 1424 lib/pengine/unpack.c if (scheduler->priv->stop_needed != NULL) { scheduler 1425 lib/pengine/unpack.c for (GList *item = scheduler->priv->stop_needed; scheduler 1435 lib/pengine/unpack.c g_list_free(scheduler->priv->stop_needed); scheduler 1436 lib/pengine/unpack.c scheduler->priv->stop_needed = NULL; scheduler 1443 lib/pengine/unpack.c for (GList *gIter = scheduler->nodes; gIter != NULL; gIter = gIter->next) { scheduler 1455 lib/pengine/unpack.c determine_remote_online_status(scheduler, this_node); scheduler 1474 lib/pengine/unpack.c unpack_node_member(const xmlNode *node_state, pcmk_scheduler_t *scheduler) scheduler 1492 lib/pengine/unpack.c return member? (long long) get_effective_time(scheduler) : 0LL; scheduler 1575 lib/pengine/unpack.c determine_online_status_no_fencing(pcmk_scheduler_t *scheduler, scheduler 1582 lib/pengine/unpack.c long long when_member = unpack_node_member(node_state, scheduler); scheduler 1606 lib/pengine/unpack.c pe_fence_node(scheduler, this_node, "peer is unexpectedly down", FALSE); scheduler 1628 lib/pengine/unpack.c pending_too_long(pcmk_scheduler_t *scheduler, const pcmk_node_t *node, scheduler 1631 lib/pengine/unpack.c if ((scheduler->priv->node_pending_ms > 0U) scheduler 1636 lib/pengine/unpack.c + pcmk__timeout_ms2s(scheduler->priv->node_pending_ms); scheduler 1638 lib/pengine/unpack.c if (get_effective_time(node->priv->scheduler) >= timeout) { scheduler 1643 lib/pengine/unpack.c pe__update_recheck_time(timeout, scheduler, "pending node timeout"); scheduler 1649 lib/pengine/unpack.c determine_online_status_fencing(pcmk_scheduler_t *scheduler, scheduler 1656 lib/pengine/unpack.c long long when_member = unpack_node_member(node_state, scheduler); scheduler 1690 lib/pengine/unpack.c pe_fence_node(scheduler, this_node, scheduler 1696 lib/pengine/unpack.c pe_fence_node(scheduler, this_node, scheduler 1705 lib/pengine/unpack.c pe_fence_node(scheduler, this_node, "fencing was requested", false); scheduler 1710 lib/pengine/unpack.c if (pending_too_long(scheduler, this_node, when_member, when_online)) { scheduler 1711 lib/pengine/unpack.c pe_fence_node(scheduler, this_node, scheduler 1728 lib/pengine/unpack.c pe_fence_node(scheduler, this_node, scheduler 1732 lib/pengine/unpack.c pe_fence_node(scheduler, this_node, scheduler 1748 lib/pengine/unpack.c pe_fence_node(scheduler, this_node, "peer was in an unknown state", scheduler 1756 lib/pengine/unpack.c determine_remote_online_status(pcmk_scheduler_t *scheduler, scheduler 1834 lib/pengine/unpack.c pcmk_scheduler_t *scheduler) scheduler 1850 lib/pengine/unpack.c if (!pcmk_is_set(scheduler->flags, pcmk__sched_fencing_enabled)) { scheduler 1851 lib/pengine/unpack.c online = determine_online_status_no_fencing(scheduler, node_state, scheduler 1855 lib/pengine/unpack.c online = determine_online_status_fencing(scheduler, node_state, scheduler 1873 lib/pengine/unpack.c pcmk__sched_warn(scheduler, "%s is unclean", scheduler 1983 lib/pengine/unpack.c pcmk_scheduler_t *scheduler) scheduler 1992 lib/pengine/unpack.c if (pe__unpack_resource(xml_rsc, &rsc, NULL, scheduler) != pcmk_rc_ok) { scheduler 2000 lib/pengine/unpack.c node = pcmk_find_node(scheduler, rsc_id); scheduler 2003 lib/pengine/unpack.c scheduler); scheduler 2005 lib/pengine/unpack.c link_rsc2remotenode(scheduler, rsc); scheduler 2020 lib/pengine/unpack.c scheduler->priv->resources = g_list_append(scheduler->priv->resources, rsc); scheduler 2037 lib/pengine/unpack.c const pcmk_node_t *node, pcmk_scheduler_t *scheduler) scheduler 2039 lib/pengine/unpack.c pcmk_resource_t *top = pe__create_clone_child(parent, scheduler); scheduler 2067 lib/pengine/unpack.c find_anonymous_clone(pcmk_scheduler_t *scheduler, const pcmk_node_t *node, scheduler 2189 lib/pengine/unpack.c && !pe__is_universal_clone(parent, scheduler)) { scheduler 2195 lib/pengine/unpack.c rsc = create_anonymous_orphan(parent, rsc_id, node, scheduler); scheduler 2202 lib/pengine/unpack.c unpack_find_resource(pcmk_scheduler_t *scheduler, const pcmk_node_t *node, scheduler 2209 lib/pengine/unpack.c rsc = pe_find_resource(scheduler->priv->resources, rsc_id); scheduler 2217 lib/pengine/unpack.c pcmk_resource_t *clone0 = pe_find_resource(scheduler->priv->resources, scheduler 2246 lib/pengine/unpack.c rsc = find_anonymous_clone(scheduler, node, parent, base); scheduler 2265 lib/pengine/unpack.c pcmk_scheduler_t *scheduler) scheduler 2272 lib/pengine/unpack.c rsc = create_fake_resource(rsc_id, rsc_entry, scheduler); scheduler 2277 lib/pengine/unpack.c if (!pcmk_is_set(scheduler->flags, pcmk__sched_stop_removed_resources)) { scheduler 2284 lib/pengine/unpack.c "__orphan_do_not_run__", scheduler); scheduler 2296 lib/pengine/unpack.c pcmk_scheduler_t *scheduler = NULL; scheduler 2300 lib/pengine/unpack.c scheduler = rsc->priv->scheduler; scheduler 2346 lib/pengine/unpack.c } else if (pcmk_is_set(scheduler->flags, pcmk__sched_fencing_enabled)) { scheduler 2371 lib/pengine/unpack.c pe_fence_node(scheduler, node, reason, FALSE); scheduler 2401 lib/pengine/unpack.c pe_fence_node(scheduler, node, reason, FALSE); scheduler 2423 lib/pengine/unpack.c "__action_migration_auto__", scheduler); scheduler 2447 lib/pengine/unpack.c scheduler->priv->stop_needed = scheduler 2448 lib/pengine/unpack.c g_list_prepend(scheduler->priv->stop_needed, scheduler 2459 lib/pengine/unpack.c if (pcmk_is_set(scheduler->flags, pcmk__sched_fencing_enabled)) { scheduler 2462 lib/pengine/unpack.c tmpnode = pcmk_find_node(scheduler, rsc->id); scheduler 2470 lib/pengine/unpack.c pe_fence_node(scheduler, tmpnode, scheduler 2495 lib/pengine/unpack.c tmpnode = pcmk_find_node(scheduler, rsc->id); scheduler 2514 lib/pengine/unpack.c native_add_running(rsc, node, scheduler, scheduler 2569 lib/pengine/unpack.c GList *sorted_op_list, pcmk_scheduler_t *scheduler) scheduler 2623 lib/pengine/unpack.c custom_action(rsc, key, task, node, TRUE, scheduler); scheduler 2682 lib/pengine/unpack.c const pcmk_node_t *node, pcmk_scheduler_t *scheduler) scheduler 2689 lib/pengine/unpack.c if ((scheduler->priv->shutdown_lock_ms > 0U) scheduler 2690 lib/pengine/unpack.c && (get_effective_time(scheduler) scheduler 2691 lib/pengine/unpack.c > (lock_time + pcmk__timeout_ms2s(scheduler->priv->shutdown_lock_ms)))) { scheduler 2714 lib/pengine/unpack.c pcmk_scheduler_t *scheduler) scheduler 2752 lib/pengine/unpack.c if (!pcmk_is_set(scheduler->flags, pcmk__sched_shutdown_lock)) { scheduler 2760 lib/pengine/unpack.c rsc = unpack_find_resource(scheduler, node, rsc_id); scheduler 2766 lib/pengine/unpack.c rsc = process_orphan_resource(lrm_resource, node, scheduler); scheduler 2772 lib/pengine/unpack.c if (pcmk_is_set(scheduler->flags, pcmk__sched_shutdown_lock)) { scheduler 2773 lib/pengine/unpack.c unpack_shutdown_lock(lrm_resource, rsc, node, scheduler); scheduler 2790 lib/pengine/unpack.c scheduler); scheduler 2821 lib/pengine/unpack.c pcmk_scheduler_t *scheduler) scheduler 2840 lib/pengine/unpack.c launcher = pe_find_resource(scheduler->priv->resources, launcher_id); scheduler 2845 lib/pengine/unpack.c rsc = pe_find_resource(scheduler->priv->resources, rsc_id); scheduler 2869 lib/pengine/unpack.c pcmk_scheduler_t *scheduler) scheduler 2890 lib/pengine/unpack.c pcmk_resource_t *rsc = unpack_lrm_resource(node, rsc_entry, scheduler); scheduler 2902 lib/pengine/unpack.c handle_removed_launched_resources(xml, scheduler); scheduler 2936 lib/pengine/unpack.c int target_rc, pcmk_scheduler_t *scheduler) scheduler 2966 lib/pengine/unpack.c xml = get_xpath_object((const char *) xpath->str, scheduler->input, scheduler 2985 lib/pengine/unpack.c pcmk_scheduler_t *scheduler) scheduler 2998 lib/pengine/unpack.c xml = get_xpath_object((const char *) xpath->str, scheduler->input, scheduler 3027 lib/pengine/unpack.c search = xpath_search(rsc->priv->scheduler->input, xpath); scheduler 3048 lib/pengine/unpack.c const xmlNode *xml_op, pcmk_scheduler_t *scheduler) scheduler 3054 lib/pengine/unpack.c NULL, PCMK_OCF_NOT_RUNNING, scheduler); scheduler 3073 lib/pengine/unpack.c const xmlNode *xml_op, pcmk_scheduler_t *scheduler) scheduler 3077 lib/pengine/unpack.c lrm_resource = find_lrm_resource(rsc_id, node_name, scheduler); scheduler 3122 lib/pengine/unpack.c pcmk_scheduler_t *scheduler) scheduler 3140 lib/pengine/unpack.c return non_monitor_after(rsc_id, node_name, xml_op, scheduler) scheduler 3141 lib/pengine/unpack.c || monitor_not_running_after(rsc_id, node_name, xml_op, scheduler); scheduler 3265 lib/pengine/unpack.c pcmk_scheduler_t *scheduler = history->rsc->priv->scheduler; scheduler 3275 lib/pengine/unpack.c scheduler); scheduler 3279 lib/pengine/unpack.c target, source, -1, scheduler); scheduler 3297 lib/pengine/unpack.c scheduler); scheduler 3316 lib/pengine/unpack.c target_node = pcmk_find_node(scheduler, target); scheduler 3322 lib/pengine/unpack.c native_add_running(history->rsc, target_node, scheduler, TRUE); scheduler 3344 lib/pengine/unpack.c pcmk_node_t *source_node = pcmk_find_node(scheduler, source); scheduler 3346 lib/pengine/unpack.c native_add_running(history->rsc, target_node, scheduler, FALSE); scheduler 3378 lib/pengine/unpack.c pcmk_scheduler_t *scheduler = history->rsc->priv->scheduler; scheduler 3394 lib/pengine/unpack.c PCMK_OCF_OK, scheduler); scheduler 3406 lib/pengine/unpack.c target_migrate_from, scheduler)) { scheduler 3411 lib/pengine/unpack.c pcmk_node_t *target_node = pcmk_find_node(scheduler, target); scheduler 3414 lib/pengine/unpack.c native_add_running(history->rsc, target_node, scheduler, FALSE); scheduler 3418 lib/pengine/unpack.c scheduler)) { scheduler 3443 lib/pengine/unpack.c pcmk_scheduler_t *scheduler = history->rsc->priv->scheduler; scheduler 3458 lib/pengine/unpack.c source, target, PCMK_OCF_OK, scheduler); scheduler 3471 lib/pengine/unpack.c scheduler)) { scheduler 3475 lib/pengine/unpack.c pcmk_node_t *source_node = pcmk_find_node(scheduler, source); scheduler 3478 lib/pengine/unpack.c native_add_running(history->rsc, source_node, scheduler, TRUE); scheduler 3492 lib/pengine/unpack.c const pcmk_scheduler_t *scheduler = history->rsc->priv->scheduler; scheduler 3498 lib/pengine/unpack.c for (const xmlNode *xIter = scheduler->priv->failed->children; scheduler 3517 lib/pengine/unpack.c pcmk__xml_copy(scheduler->priv->failed, history->xml); scheduler 3555 lib/pengine/unpack.c const pcmk_scheduler_t *scheduler = rsc->priv->scheduler; scheduler 3574 lib/pengine/unpack.c rsc->priv->allowed_nodes = pe__node_list2table(scheduler->nodes); scheduler 3625 lib/pengine/unpack.c pcmk_scheduler_t *scheduler = history->rsc->priv->scheduler; scheduler 3632 lib/pengine/unpack.c if (!pcmk_is_set(scheduler->flags, pcmk__sched_symmetric_cluster) scheduler 3643 lib/pengine/unpack.c pcmk__sched_warn(scheduler, scheduler 3680 lib/pengine/unpack.c "__stop_fail__", scheduler); scheduler 3755 lib/pengine/unpack.c if (pe_can_fence(history->node->priv->scheduler, history->node)) { scheduler 3760 lib/pengine/unpack.c pcmk__sched_err(history->node->priv->scheduler, scheduler 4032 lib/pengine/unpack.c rsc->priv->scheduler); scheduler 4038 lib/pengine/unpack.c rsc->priv->scheduler); scheduler 4059 lib/pengine/unpack.c pcmk_scheduler_t *scheduler) scheduler 4061 lib/pengine/unpack.c pcmk_node_t *remote_node = pcmk_find_node(scheduler, remote_conn->id); scheduler 4065 lib/pengine/unpack.c FALSE, scheduler); scheduler 4096 lib/pengine/unpack.c && pcmk_is_set(rsc->priv->scheduler->flags, scheduler 4101 lib/pengine/unpack.c pcmk_node_t *remote_node = pcmk_find_node(rsc->priv->scheduler, scheduler 4144 lib/pengine/unpack.c pcmk_scheduler_t *scheduler = history->rsc->priv->scheduler; scheduler 4162 lib/pengine/unpack.c time_t now = get_effective_time(scheduler); scheduler 4188 lib/pengine/unpack.c pe__update_recheck_time(last_failure, scheduler, scheduler 4236 lib/pengine/unpack.c clear_reason, scheduler); scheduler 4238 lib/pengine/unpack.c if (pcmk_is_set(scheduler->flags, pcmk__sched_fencing_enabled) scheduler 4251 lib/pengine/unpack.c order_after_remote_fencing(clear_op, history->rsc, scheduler); scheduler 4553 lib/pengine/unpack.c "masked-probe-failure", ban_rsc->priv->scheduler); scheduler 4645 lib/pengine/unpack.c target = pcmk_find_node(history->rsc->priv->scheduler, scheduler 4783 lib/pengine/unpack.c "hard-error", rsc->priv->scheduler); scheduler 4860 lib/pengine/unpack.c "hard-error", rsc->priv->scheduler); scheduler 4863 lib/pengine/unpack.c pcmk__sched_err(rsc->priv->scheduler, scheduler 4870 lib/pengine/unpack.c "fatal-error", rsc->priv->scheduler); scheduler 4901 lib/pengine/unpack.c pcmk_scheduler_t *scheduler) scheduler 4904 lib/pengine/unpack.c const char *dc_id = crm_element_value(scheduler->input, PCMK_XA_DC_UUID); scheduler 4908 lib/pengine/unpack.c .now = scheduler->priv->now, scheduler 4919 lib/pengine/unpack.c if ((scheduler->dc_node == NULL) scheduler 4922 lib/pengine/unpack.c scheduler->dc_node = node; scheduler 4926 lib/pengine/unpack.c } else if (!pcmk__same_node(node, scheduler->dc_node)) { scheduler 4931 lib/pengine/unpack.c cluster_name = g_hash_table_lookup(scheduler->priv->options, scheduler 4945 lib/pengine/unpack.c &rule_data, unpacked, NULL, scheduler); scheduler 4952 lib/pengine/unpack.c scheduler); scheduler 4956 lib/pengine/unpack.c node->priv->utilization, NULL, scheduler); scheduler 5039 lib/pengine/unpack.c pcmk_scheduler_t *scheduler) scheduler 5045 lib/pengine/unpack.c xmlNode *status = pcmk__xe_first_child(scheduler->input, PCMK_XE_STATUS, scheduler 5065 lib/pengine/unpack.c this_node = pcmk_find_node(scheduler, uname); scheduler 5071 lib/pengine/unpack.c determine_remote_online_status(scheduler, this_node); scheduler 5074 lib/pengine/unpack.c determine_online_status(node_state, this_node, scheduler); scheduler 5078 lib/pengine/unpack.c || pcmk_is_set(scheduler->flags, pcmk__sched_fencing_enabled)) { scheduler 36 lib/pengine/utils.c pe_can_fence(const pcmk_scheduler_t *scheduler, const pcmk_node_t *node) scheduler 48 lib/pengine/utils.c && !pe_can_fence(scheduler, launcher_node)) { scheduler 54 lib/pengine/utils.c } else if (!pcmk_is_set(scheduler->flags, pcmk__sched_fencing_enabled)) { scheduler 57 lib/pengine/utils.c } else if (!pcmk_is_set(scheduler->flags, pcmk__sched_have_fencing)) { scheduler 60 lib/pengine/utils.c } else if (pcmk_is_set(scheduler->flags, pcmk__sched_quorate)) { scheduler 63 lib/pengine/utils.c } else if (scheduler->no_quorum_policy == pcmk_no_quorum_ignore) { scheduler 180 lib/pengine/utils.c GHashTable *nodes, pcmk_scheduler_t *scheduler) scheduler 182 lib/pengine/utils.c pcmk__output_t *out = scheduler->priv->out; scheduler 255 lib/pengine/utils.c pcmk_scheduler_t *scheduler) scheduler 269 lib/pengine/utils.c pe__output_node_weights(rsc, comment, nodes, scheduler); scheduler 283 lib/pengine/utils.c child->priv->allowed_nodes, scheduler); scheduler 366 lib/pengine/utils.c const char *tag, pcmk_scheduler_t *scheduler) scheduler 371 lib/pengine/utils.c } else if (scheduler != NULL) { scheduler 372 lib/pengine/utils.c GList *gIter = scheduler->nodes; scheduler 402 lib/pengine/utils.c get_effective_time(pcmk_scheduler_t *scheduler) scheduler 404 lib/pengine/utils.c if(scheduler) { scheduler 405 lib/pengine/utils.c if (scheduler->priv->now == NULL) { scheduler 407 lib/pengine/utils.c scheduler->priv->now = crm_time_new(NULL); scheduler 409 lib/pengine/utils.c return crm_time_get_seconds_since_epoch(scheduler->priv->now); scheduler 525 lib/pengine/utils.c ticket_new(const char *ticket_id, pcmk_scheduler_t *scheduler) scheduler 533 lib/pengine/utils.c if (scheduler->priv->ticket_constraints == NULL) { scheduler 534 lib/pengine/utils.c scheduler->priv->ticket_constraints = scheduler 538 lib/pengine/utils.c ticket = g_hash_table_lookup(scheduler->priv->ticket_constraints, scheduler 544 lib/pengine/utils.c pcmk__sched_err(scheduler, "Cannot allocate ticket '%s'", scheduler 555 lib/pengine/utils.c g_hash_table_insert(scheduler->priv->ticket_constraints, scheduler 585 lib/pengine/utils.c pe__clear_resource_flags_on_all(pcmk_scheduler_t *scheduler, uint64_t flag) scheduler 587 lib/pengine/utils.c for (GList *lpc = scheduler->priv->resources; scheduler 611 lib/pengine/utils.c pcmk_action_t *dependency, pcmk_scheduler_t *scheduler) scheduler 613 lib/pengine/utils.c if (!pcmk_is_set(scheduler->flags, pcmk__sched_enable_unfencing)) { scheduler 627 lib/pengine/utils.c reason, FALSE, scheduler); scheduler 639 lib/pengine/utils.c trigger_unfencing(rsc, node, reason, dependency, scheduler); scheduler 675 lib/pengine/utils.c pe__update_recheck_time(time_t recheck, pcmk_scheduler_t *scheduler, scheduler 678 lib/pengine/utils.c if ((recheck > get_effective_time(scheduler)) scheduler 679 lib/pengine/utils.c && ((scheduler->priv->recheck_by == 0) scheduler 680 lib/pengine/utils.c || (scheduler->priv->recheck_by > recheck))) { scheduler 681 lib/pengine/utils.c scheduler->priv->recheck_by = recheck; scheduler 704 lib/pengine/utils.c pcmk_scheduler_t *scheduler) scheduler 709 lib/pengine/utils.c && (scheduler != NULL), return); scheduler 720 lib/pengine/utils.c pe_eval_nvpairs(scheduler->input, xml_obj, set_name, rule_data, hash, scheduler 725 lib/pengine/utils.c pe__update_recheck_time(recheck, scheduler, "rule evaluation"); scheduler 814 lib/pengine/utils.c pe__build_node_name_list(pcmk_scheduler_t *scheduler, const char *s) scheduler 825 lib/pengine/utils.c pcmk_node_t *node = pcmk_find_node(scheduler, s); scheduler 839 lib/pengine/utils.c nodes = pe__unames_with_tag(scheduler, s); scheduler 847 lib/pengine/utils.c pe__build_rsc_list(pcmk_scheduler_t *scheduler, const char *s) scheduler 856 lib/pengine/utils.c pe_find_resource_with_flags(scheduler->priv->resources, s, flags); scheduler 874 lib/pengine/utils.c resources = pe__rscs_with_tag(scheduler, s); scheduler 886 lib/pengine/utils.c const pcmk_scheduler_t *scheduler = rsc->priv->scheduler; scheduler 892 lib/pengine/utils.c for (xmlNode *xml_op = pcmk__xe_first_child(scheduler->priv->failed, scheduler 87 tools/crm_mon.c static pcmk_scheduler_t *scheduler = NULL; scheduler 1602 tools/crm_mon.c scheduler = pe_new_working_set(); scheduler 1603 tools/crm_mon.c pcmk__mem_assert(scheduler); scheduler 1604 tools/crm_mon.c scheduler->priv->out = out; scheduler 1607 tools/crm_mon.c pcmk__query_node_name(out, 0, &(scheduler->priv->local_node_name), 0); scheduler 2004 tools/crm_mon.c rc = pcmk__output_cluster_status(scheduler, st, cib, current_cib, scheduler 2130 tools/crm_mon.c pe_free_working_set(scheduler); scheduler 129 tools/crm_resource.c static pcmk_scheduler_t *scheduler = NULL; scheduler 173 tools/crm_resource.c pe_free_working_set(scheduler); scheduler 174 tools/crm_resource.c scheduler = NULL; scheduler 899 tools/crm_resource.c scheduler, options.force); scheduler 922 tools/crm_resource.c before = build_constraint_list(scheduler->input); scheduler 926 tools/crm_resource.c rc = cli_resource_clear_all_expired(scheduler->input, cib_conn, scheduler 931 tools/crm_resource.c dest = pcmk_find_node(scheduler, options.host_uname); scheduler 943 tools/crm_resource.c rc = cli_resource_clear(options.rsc_id, NULL, scheduler->nodes, scheduler 961 tools/crm_resource.c scheduler->input = cib_xml; scheduler 962 tools/crm_resource.c cluster_status(scheduler); scheduler 964 tools/crm_resource.c after = build_constraint_list(scheduler->input); scheduler 984 tools/crm_resource.c scheduler = pe_new_working_set(); scheduler 985 tools/crm_resource.c if (scheduler == NULL) { scheduler 989 tools/crm_resource.c pcmk__set_scheduler_flags(scheduler, pcmk__sched_no_counts); scheduler 990 tools/crm_resource.c scheduler->priv->out = out; scheduler 991 tools/crm_resource.c rc = update_scheduler_input(out, scheduler, cib_conn, cib_xml_orig); scheduler 996 tools/crm_resource.c cluster_status(scheduler); scheduler 1028 tools/crm_resource.c pcmk_node_t *node = pcmk_find_node(scheduler, options.host_uname); scheduler 1076 tools/crm_resource.c FALSE, scheduler, options.force); scheduler 1652 tools/crm_resource.c rsc = pe_find_resource_with_flags(scheduler->priv->resources, scheduler 1676 tools/crm_resource.c if ((options.host_uname != NULL) && (scheduler != NULL)) { scheduler 1677 tools/crm_resource.c node = pcmk_find_node(scheduler, options.host_uname); scheduler 1718 tools/crm_resource.c rc = out->message(out, "resource-list", scheduler, scheduler 1730 tools/crm_resource.c scheduler->priv->resources); scheduler 1788 tools/crm_resource.c options.timeout_ms, cib_conn, scheduler, scheduler 1794 tools/crm_resource.c node = pcmk_find_node(scheduler, options.host_uname); scheduler 1810 tools/crm_resource.c g_list_foreach(scheduler->priv->resources, scheduler 1812 tools/crm_resource.c cli_resource_print_cts_constraints(scheduler); scheduler 1817 tools/crm_resource.c options.rsc_id, scheduler); scheduler 1826 tools/crm_resource.c scheduler); scheduler 1832 tools/crm_resource.c scheduler); scheduler 1836 tools/crm_resource.c GList *nodes = cli_resource_search(rsc, options.rsc_id, scheduler); scheduler 1843 tools/crm_resource.c rc = cli_resource_print(rsc, scheduler, true); scheduler 1847 tools/crm_resource.c rc = cli_resource_print(rsc, scheduler, false); scheduler 1855 tools/crm_resource.c scheduler->priv->resources, rsc, node); scheduler 1869 tools/crm_resource.c scheduler, options.promoted_role_only, scheduler 1918 tools/crm_resource.c params = pe_rsc_params(rsc, current, scheduler); scheduler 1926 tools/crm_resource.c get_meta_attributes(params, rsc, NULL, scheduler); scheduler 1937 tools/crm_resource.c .now = scheduler->priv->now, scheduler 1942 tools/crm_resource.c &rule_data, params, NULL, scheduler); scheduler 1988 tools/crm_resource.c scheduler); scheduler 79 tools/crm_resource.h void cli_resource_print_cts_constraints(pcmk_scheduler_t *scheduler); scheduler 81 tools/crm_resource.h int cli_resource_print(pcmk_resource_t *rsc, pcmk_scheduler_t *scheduler, scheduler 84 tools/crm_resource.h bool active, pcmk_scheduler_t *scheduler); scheduler 90 tools/crm_resource.h const char *rsc_id, pcmk_scheduler_t *scheduler); scheduler 92 tools/crm_resource.h pcmk_scheduler_t *scheduler); scheduler 96 tools/crm_resource.h pcmk_scheduler_t *scheduler, gboolean force); scheduler 99 tools/crm_resource.h pcmk_scheduler_t *scheduler); scheduler 106 tools/crm_resource.h cib_t *cib, pcmk_scheduler_t *scheduler, scheduler 119 tools/crm_resource.h pcmk_scheduler_t *scheduler, scheduler 136 tools/crm_resource.h int update_scheduler_input(pcmk__output_t *out, pcmk_scheduler_t *scheduler, scheduler 23 tools/crm_resource_print.c pcmk_scheduler_t *scheduler = (pcmk_scheduler_t *) userdata; scheduler 24 tools/crm_resource_print.c pcmk__output_t *out = scheduler->priv->out; scheduler 48 tools/crm_resource_print.c cli_resource_print_cts_constraints(pcmk_scheduler_t *scheduler) scheduler 50 tools/crm_resource_print.c pcmk__xe_foreach_child(pcmk_find_cib_element(scheduler->input, scheduler 52 tools/crm_resource_print.c NULL, print_constraint, scheduler); scheduler 88 tools/crm_resource_print.c bool active, pcmk_scheduler_t *scheduler) scheduler 90 tools/crm_resource_print.c pcmk__output_t *out = scheduler->priv->out; scheduler 92 tools/crm_resource_print.c GList *ops = find_operations(rsc_id, host_uname, active, scheduler); scheduler 103 tools/crm_resource_print.c out->message(out, "node-and-op", scheduler, xml_op); scheduler 112 tools/crm_resource_print.c cli_resource_print(pcmk_resource_t *rsc, pcmk_scheduler_t *scheduler, scheduler 115 tools/crm_resource_print.c pcmk__output_t *out = scheduler->priv->out; scheduler 498 tools/crm_resource_print.c const pcmk_scheduler_t *scheduler = checks->rsc->priv->scheduler; scheduler 531 tools/crm_resource_print.c pcmk__cluster_option(scheduler->priv->options, scheduler 56 tools/crm_resource_runtime.c pcmk_scheduler_t *scheduler) scheduler 394 tools/crm_resource_runtime.c pcmk__output_t *out = rsc->priv->scheduler->priv->out; scheduler 564 tools/crm_resource_runtime.c pcmk__output_t *out = rsc->priv->scheduler->priv->out; scheduler 579 tools/crm_resource_runtime.c pcmk__unpack_constraints(rsc->priv->scheduler); scheduler 580 tools/crm_resource_runtime.c pe__clear_resource_flags_on_all(rsc->priv->scheduler, scheduler 607 tools/crm_resource_runtime.c pcmk__output_t *out = rsc->priv->scheduler->priv->out; scheduler 711 tools/crm_resource_runtime.c pcmk_scheduler_t *scheduler) scheduler 713 tools/crm_resource_runtime.c pcmk__output_t *out = scheduler->priv->out; scheduler 721 tools/crm_resource_runtime.c pcmk_resource_t *rsc = pe_find_resource(scheduler->priv->resources, rsc_id); scheduler 741 tools/crm_resource_runtime.c pcmk_node_t *node = pcmk_find_node(scheduler, host_uname); scheduler 807 tools/crm_resource_runtime.c const char *rsc_id, pcmk_scheduler_t *scheduler) scheduler 816 tools/crm_resource_runtime.c rc = send_lrm_rsc_op(controld_api, false, host_uname, rsc_id, scheduler); scheduler 834 tools/crm_resource_runtime.c const char *interval_spec, pcmk_scheduler_t *scheduler) scheduler 857 tools/crm_resource_runtime.c for (xmlNode *xml_op = pcmk__xe_first_child(scheduler->priv->failed, NULL, scheduler 871 tools/crm_resource_runtime.c fail_rsc = pe_find_resource_with_flags(scheduler->priv->resources, scheduler 909 tools/crm_resource_runtime.c rc = clear_rsc_history(controld_api, node_name, failed_id, scheduler); scheduler 943 tools/crm_resource_runtime.c pcmk_scheduler_t *scheduler, gboolean force) scheduler 945 tools/crm_resource_runtime.c pcmk__output_t *out = scheduler->priv->out; scheduler 960 tools/crm_resource_runtime.c interval_spec, just_failures, scheduler, scheduler 973 tools/crm_resource_runtime.c nodes = pcmk__copy_node_list(scheduler->nodes, false); scheduler 997 tools/crm_resource_runtime.c scheduler, force); scheduler 1009 tools/crm_resource_runtime.c node = pcmk_find_node(scheduler, host_uname); scheduler 1038 tools/crm_resource_runtime.c interval_spec, scheduler); scheduler 1040 tools/crm_resource_runtime.c rc = clear_rsc_history(controld_api, host_uname, rsc->id, scheduler); scheduler 1055 tools/crm_resource_runtime.c pcmk_scheduler_t *scheduler) scheduler 1057 tools/crm_resource_runtime.c pcmk__output_t *out = scheduler->priv->out; scheduler 1069 tools/crm_resource_runtime.c pcmk_node_t *node = pcmk_find_node(scheduler, node_name); scheduler 1090 tools/crm_resource_runtime.c operation, interval_spec, scheduler); scheduler 1097 tools/crm_resource_runtime.c for (GList *iter = scheduler->nodes; iter; iter = iter->next) { scheduler 1101 tools/crm_resource_runtime.c NULL, operation, interval_spec, scheduler); scheduler 1165 tools/crm_resource_runtime.c switch (pe__health_strategy(node->priv->scheduler)) { scheduler 1233 tools/crm_resource_runtime.c const char *rsc_id, pcmk_scheduler_t *scheduler) scheduler 1236 tools/crm_resource_runtime.c return send_lrm_rsc_op(controld_api, true, host_uname, rsc_id, scheduler); scheduler 1241 tools/crm_resource_runtime.c pcmk_scheduler_t *scheduler) scheduler 1252 tools/crm_resource_runtime.c params = pe_rsc_params(rsc, node, scheduler); scheduler 1261 tools/crm_resource_runtime.c get_meta_attributes(meta, rsc, NULL, scheduler); scheduler 1379 tools/crm_resource_runtime.c update_scheduler_input(pcmk__output_t *out, pcmk_scheduler_t *scheduler, scheduler 1386 tools/crm_resource_runtime.c pcmk__assert((out != NULL) && (scheduler != NULL) scheduler 1387 tools/crm_resource_runtime.c && (scheduler->input == NULL) && (scheduler->priv->now == NULL) scheduler 1414 tools/crm_resource_runtime.c scheduler->input = updated_xml; scheduler 1415 tools/crm_resource_runtime.c scheduler->priv->now = crm_time_new(NULL); scheduler 1428 tools/crm_resource_runtime.c update_dataset(cib_t *cib, pcmk_scheduler_t *scheduler, xmlNode **cib_xml_orig, scheduler 1436 tools/crm_resource_runtime.c pcmk__output_t *out = scheduler->priv->out; scheduler 1438 tools/crm_resource_runtime.c pe_reset_working_set(scheduler); scheduler 1439 tools/crm_resource_runtime.c pcmk__set_scheduler_flags(scheduler, pcmk__sched_no_counts); scheduler 1444 tools/crm_resource_runtime.c rc = update_scheduler_input(out, scheduler, cib, NULL); scheduler 1459 tools/crm_resource_runtime.c rc = pcmk__xml_write_file(scheduler->input, shadow_file, false); scheduler 1474 tools/crm_resource_runtime.c pcmk__schedule_actions(scheduler->input, pcmk__sched_no_counts, scheduler 1475 tools/crm_resource_runtime.c scheduler); scheduler 1479 tools/crm_resource_runtime.c pcmk__simulate_transition(scheduler, shadow_cib, NULL); scheduler 1482 tools/crm_resource_runtime.c rc = update_dataset(shadow_cib, scheduler, cib_xml_orig, false); scheduler 1487 tools/crm_resource_runtime.c rc = update_scheduler_input(out, scheduler, cib, &xml); scheduler 1494 tools/crm_resource_runtime.c cluster_status(scheduler); scheduler 1584 tools/crm_resource_runtime.c wait_time_estimate(pcmk_scheduler_t *scheduler, const GList *resources) scheduler 1590 tools/crm_resource_runtime.c pcmk_resource_t *rsc = pe_find_resource(scheduler->priv->resources, scheduler 1653 tools/crm_resource_runtime.c pcmk_scheduler_t *scheduler = NULL; scheduler 1733 tools/crm_resource_runtime.c scheduler = pe_new_working_set(); scheduler 1734 tools/crm_resource_runtime.c if (scheduler == NULL) { scheduler 1740 tools/crm_resource_runtime.c scheduler->priv->out = out; scheduler 1741 tools/crm_resource_runtime.c rc = update_dataset(cib, scheduler, &cib_xml_orig, false); scheduler 1749 tools/crm_resource_runtime.c scheduler->priv->resources); scheduler 1750 tools/crm_resource_runtime.c current_active = get_active_resources(host, scheduler->priv->resources); scheduler 1796 tools/crm_resource_runtime.c rc = update_dataset(cib, scheduler, &cib_xml_orig, true); scheduler 1802 tools/crm_resource_runtime.c target_active = get_active_resources(host, scheduler->priv->resources); scheduler 1813 tools/crm_resource_runtime.c step_timeout_s = wait_time_estimate(scheduler, list_delta) scheduler 1824 tools/crm_resource_runtime.c rc = update_dataset(cib, scheduler, &cib_xml_orig, false); scheduler 1834 tools/crm_resource_runtime.c scheduler->priv->resources); scheduler 1892 tools/crm_resource_runtime.c step_timeout_s = wait_time_estimate(scheduler, list_delta) scheduler 1905 tools/crm_resource_runtime.c rc = update_dataset(cib, scheduler, &cib_xml_orig, false); scheduler 1918 tools/crm_resource_runtime.c scheduler->priv->resources); scheduler 1970 tools/crm_resource_runtime.c pe_free_working_set(scheduler); scheduler 2055 tools/crm_resource_runtime.c pcmk_scheduler_t *scheduler = NULL; scheduler 2070 tools/crm_resource_runtime.c scheduler = pe_new_working_set(); scheduler 2071 tools/crm_resource_runtime.c if (scheduler == NULL) { scheduler 2086 tools/crm_resource_runtime.c print_pending_actions(out, scheduler->priv->actions); scheduler 2099 tools/crm_resource_runtime.c pe_reset_working_set(scheduler); scheduler 2100 tools/crm_resource_runtime.c rc = update_scheduler_input(out, scheduler, cib, NULL); scheduler 2104 tools/crm_resource_runtime.c pcmk__schedule_actions(scheduler->input, pcmk__sched_no_counts, scheduler 2105 tools/crm_resource_runtime.c scheduler); scheduler 2118 tools/crm_resource_runtime.c dc_version = g_hash_table_lookup(scheduler->priv->options, scheduler 2127 tools/crm_resource_runtime.c search = xpath_search(scheduler->input, xpath); scheduler 2130 tools/crm_resource_runtime.c } while (actions_are_pending(scheduler->priv->actions) scheduler 2133 tools/crm_resource_runtime.c pe_free_working_set(scheduler); scheduler 2317 tools/crm_resource_runtime.c guint timeout_ms, cib_t *cib, pcmk_scheduler_t *scheduler, scheduler 2320 tools/crm_resource_runtime.c pcmk__output_t *out = scheduler->priv->out; scheduler 2331 tools/crm_resource_runtime.c GList *nodes = cli_resource_search(rsc, requested_name, scheduler); scheduler 2364 tools/crm_resource_runtime.c scheduler); scheduler 2384 tools/crm_resource_runtime.c pcmk_scheduler_t *scheduler, gboolean promoted_role_only, scheduler 2387 tools/crm_resource_runtime.c pcmk__output_t *out = scheduler->priv->out; scheduler 2391 tools/crm_resource_runtime.c pcmk_node_t *dest = pcmk_find_node(scheduler, host_name); scheduler 2460 tools/crm_resource_runtime.c cli_resource_clear(rsc_id, NULL, scheduler->nodes, cib, false, force); scheduler 2463 tools/crm_resource_runtime.c cli_resource_clear(rsc_id, dest->priv->name, scheduler->nodes, cib, true, scheduler 459 tools/crm_simulate.c pcmk_scheduler_t *scheduler = NULL; scheduler 513 tools/crm_simulate.c scheduler = pe_new_working_set(); scheduler 514 tools/crm_simulate.c if (scheduler == NULL) { scheduler 522 tools/crm_simulate.c pcmk__set_scheduler_flags(scheduler, pcmk__sched_output_scores); scheduler 525 tools/crm_simulate.c pcmk__set_scheduler_flags(scheduler, pcmk__sched_show_utilization); scheduler 529 tools/crm_simulate.c scheduler->priv->out = out; scheduler 530 tools/crm_simulate.c pcmk__profile_dir(options.test_dir, options.repeat, scheduler, scheduler 543 tools/crm_simulate.c rc = pcmk__simulate(scheduler, out, options.injections, options.flags, scheduler 563 tools/crm_simulate.c if (scheduler != NULL) { scheduler 564 tools/crm_simulate.c pe_free_working_set(scheduler); scheduler 346 tools/crm_ticket.c pcmk_scheduler_t *scheduler = NULL; scheduler 390 tools/crm_ticket.c scheduler = pe_new_working_set(); scheduler 391 tools/crm_ticket.c if (scheduler == NULL) { scheduler 398 tools/crm_ticket.c pcmk__set_scheduler_flags(scheduler, pcmk__sched_no_counts); scheduler 441 tools/crm_ticket.c scheduler->input = cib_xml_copy; scheduler 442 tools/crm_ticket.c scheduler->priv->now = crm_time_new(NULL); scheduler 444 tools/crm_ticket.c cluster_status(scheduler); scheduler 449 tools/crm_ticket.c pcmk__unpack_constraints(scheduler); scheduler 461 tools/crm_ticket.c rc = pcmk__ticket_info(out, scheduler, options.ticket_id, details, raw); scheduler 500 tools/crm_ticket.c rc = pcmk__ticket_get_attr(out, scheduler, options.ticket_id, scheduler 512 tools/crm_ticket.c rc = pcmk__ticket_delete(out, cib_conn, scheduler, options.ticket_id, scheduler 561 tools/crm_ticket.c rc = pcmk__ticket_remove_attr(out, cib_conn, scheduler, options.ticket_id, scheduler 572 tools/crm_ticket.c rc = pcmk__ticket_set_attr(out, cib_conn, scheduler, options.ticket_id, scheduler 642 tools/crm_ticket.c pe_free_working_set(scheduler); scheduler 643 tools/crm_ticket.c scheduler = NULL; scheduler 167 tools/crm_verify.c pcmk_scheduler_t *scheduler = NULL; scheduler 246 tools/crm_verify.c scheduler = pe_new_working_set(); scheduler 248 tools/crm_verify.c if (scheduler == NULL) { scheduler 255 tools/crm_verify.c scheduler->priv->out = out; scheduler 257 tools/crm_verify.c rc = pcmk__verify(scheduler, out, &cib_object); scheduler 274 tools/crm_verify.c pe_free_working_set(scheduler);