rsc               373 daemons/attrd/attrd_commands.c     const char *rsc = crm_element_value(xml, PCMK__XA_ATTR_RESOURCE);
rsc               382 daemons/attrd/attrd_commands.c     if (rsc) {
rsc               386 daemons/attrd/attrd_commands.c             pattern = crm_strdup_printf(ATTRD_RE_CLEAR_ONE, rsc);
rsc               392 daemons/attrd/attrd_commands.c                                         rsc, op, interval_ms);
rsc               555 daemons/attrd/attrd_commands.c     const char *rsc = crm_element_value(xml, PCMK__XA_ATTR_RESOURCE);
rsc               564 daemons/attrd/attrd_commands.c     if (attrd_failure_regex(&regex, rsc, op, interval_ms) != pcmk_ok) {
rsc               566 daemons/attrd/attrd_commands.c                  (rsc? rsc : "all resources"));
rsc               581 daemons/attrd/attrd_commands.c                       attr, (rsc? rsc : "all resources"));
rsc               308 daemons/attrd/attrd_utils.c attrd_failure_regex(regex_t *regex, const char *rsc, const char *op,
rsc               316 daemons/attrd/attrd_utils.c     if (rsc == NULL) {
rsc               319 daemons/attrd/attrd_utils.c         pattern = crm_strdup_printf(ATTRD_RE_CLEAR_ONE, rsc);
rsc               321 daemons/attrd/attrd_utils.c         pattern = crm_strdup_printf(ATTRD_RE_CLEAR_OP, rsc, op, interval_ms);
rsc                57 daemons/attrd/pacemaker-attrd.h int attrd_failure_regex(regex_t *regex, const char *rsc, const char *op,
rsc               169 daemons/controld/controld_attrd.c update_attrd_clear_failures(const char *host, const char *rsc, const char *op,
rsc               184 daemons/controld/controld_attrd.c              interval_desc, op_desc, rsc, node_type, host);
rsc               185 daemons/controld/controld_attrd.c     update_attrd_helper(host, rsc, op, interval_spec, NULL, is_remote_node, 0);
rsc                33 daemons/controld/controld_execd.c     const char *rsc;
rsc                45 daemons/controld/controld_execd.c static void do_lrm_rsc_op(lrm_state_t *lrm_state, lrmd_rsc_info_t *rsc,
rsc                50 daemons/controld/controld_execd.c static int do_update_resource(const char *node_name, lrmd_rsc_info_t *rsc,
rsc                68 daemons/controld/controld_execd.c make_stop_id(const char *rsc, int call_id)
rsc                70 daemons/controld/controld_execd.c     return crm_strdup_printf("%s:%d", rsc, call_id);
rsc               152 daemons/controld/controld_execd.c     free(history->rsc.type);
rsc               153 daemons/controld/controld_execd.c     free(history->rsc.standard);
rsc               154 daemons/controld/controld_execd.c     free(history->rsc.provider);
rsc               164 daemons/controld/controld_execd.c update_history_cache(lrm_state_t * lrm_state, lrmd_rsc_info_t * rsc, lrmd_event_data_t * op)
rsc               183 daemons/controld/controld_execd.c     if (entry == NULL && rsc) {
rsc               188 daemons/controld/controld_execd.c         entry->rsc.id = entry->id;
rsc               189 daemons/controld/controld_execd.c         entry->rsc.type = strdup(rsc->type);
rsc               190 daemons/controld/controld_execd.c         entry->rsc.standard = strdup(rsc->standard);
rsc               191 daemons/controld/controld_execd.c         pcmk__str_update(&entry->rsc.provider, rsc->provider);
rsc               270 daemons/controld/controld_execd.c                  const char *rsc_id, lrmd_rsc_info_t *rsc, const char *task,
rsc               276 daemons/controld/controld_execd.c     controld_ack_event_directly(ack_host, ack_sys, rsc, op, rsc_id);
rsc               665 daemons/controld/controld_execd.c build_operation_update(xmlNode * parent, lrmd_rsc_info_t * rsc, lrmd_event_data_t * op,
rsc               700 daemons/controld/controld_execd.c     if ((rsc == NULL) || (op->params == NULL)
rsc               701 daemons/controld/controld_execd.c         || !crm_op_needs_metadata(rsc->standard, op->op_type)) {
rsc               704 daemons/controld/controld_execd.c                   op->op_type, op->rsc_id, op->params, rsc);
rsc               728 daemons/controld/controld_execd.c     metadata = controld_get_rsc_metadata(lrm_state, rsc, metadata_source);
rsc               738 daemons/controld/controld_execd.c               rsc->standard, rsc->provider, rsc->type);
rsc               790 daemons/controld/controld_execd.c         crm_xml_add(xml_rsc, XML_ATTR_TYPE, entry->rsc.type);
rsc               791 daemons/controld/controld_execd.c         crm_xml_add(xml_rsc, XML_AGENT_ATTR_CLASS, entry->rsc.standard);
rsc               792 daemons/controld/controld_execd.c         crm_xml_add(xml_rsc, XML_AGENT_ATTR_PROVIDER, entry->rsc.provider);
rsc               801 daemons/controld/controld_execd.c         build_operation_update(xml_rsc, &(entry->rsc), entry->failed, lrm_state->node_name,
rsc               803 daemons/controld/controld_execd.c         build_operation_update(xml_rsc, &(entry->rsc), entry->last, lrm_state->node_name,
rsc               806 daemons/controld/controld_execd.c             build_operation_update(xml_rsc, &(entry->rsc), gIter->data, lrm_state->node_name,
rsc               931 daemons/controld/controld_execd.c     if (pcmk__str_eq(event->rsc, op->rsc, pcmk__str_none)) {
rsc               932 daemons/controld/controld_execd.c         notify_deleted(event->lrm_state, op->input, event->rsc, event->rc);
rsc               941 daemons/controld/controld_execd.c     const char *rsc = user_data;
rsc               944 daemons/controld/controld_execd.c     if (pcmk__str_eq(rsc, pending->rsc_id, pcmk__str_none)) {
rsc               946 daemons/controld/controld_execd.c                  pending->op_key, pending->call_id, rsc);
rsc               979 daemons/controld/controld_execd.c     event.rsc = rsc_id;
rsc              1201 daemons/controld/controld_execd.c     lrmd_rsc_info_t *rsc;
rsc              1214 daemons/controld/controld_execd.c         remove = !cancel_op(data->lrm_state, data->rsc->id, key, op->call_id, data->remove);
rsc              1220 daemons/controld/controld_execd.c cancel_op_key(lrm_state_t * lrm_state, lrmd_rsc_info_t * rsc, const char *key, gboolean remove)
rsc              1225 daemons/controld/controld_execd.c     CRM_CHECK(rsc != NULL, return FALSE);
rsc              1229 daemons/controld/controld_execd.c     data.rsc = rsc;
rsc              1316 daemons/controld/controld_execd.c                 lrmd_rsc_info_t * rsc,
rsc              1328 daemons/controld/controld_execd.c     if (rsc && unregister) {
rsc              1341 daemons/controld/controld_execd.c             op->rsc = strdup(rsc->id);
rsc              1414 daemons/controld/controld_execd.c         delete_resource(lrm_state, entry->id, &entry->rsc, &gIter, from_sys,
rsc              1507 daemons/controld/controld_execd.c     lrmd_rsc_info_t *rsc = NULL;
rsc              1537 daemons/controld/controld_execd.c     if (get_lrm_resource(lrm_state, xml_rsc, TRUE, &rsc) == pcmk_ok) {
rsc              1538 daemons/controld/controld_execd.c         crm_info("Failing resource %s...", rsc->id);
rsc              1543 daemons/controld/controld_execd.c         lrmd_free_rsc_info(rsc);
rsc              1620 daemons/controld/controld_execd.c               lrmd_rsc_info_t *rsc, const char *from_host, const char *from_sys)
rsc              1645 daemons/controld/controld_execd.c     op_key = pcmk__op_key(rsc->id, op_task, interval_ms);
rsc              1656 daemons/controld/controld_execd.c         in_progress = cancel_op_key(lrm_state, rsc, op_key, TRUE);
rsc              1660 daemons/controld/controld_execd.c         in_progress = cancel_op(lrm_state, rsc->id, NULL, call, TRUE);
rsc              1664 daemons/controld/controld_execd.c     if (!in_progress || is_remote_lrmd_ra(NULL, NULL, rsc->id)) {
rsc              1665 daemons/controld/controld_execd.c         char *op_id = make_stop_id(rsc->id, call);
rsc              1667 daemons/controld/controld_execd.c         if (is_remote_lrmd_ra(NULL, NULL, rsc->id) == FALSE) {
rsc              1670 daemons/controld/controld_execd.c         erase_lrm_history_by_id(lrm_state, rsc->id, op_key, NULL, call);
rsc              1671 daemons/controld/controld_execd.c         send_task_ok_ack(lrm_state, input, rsc->id, rsc, op_task,
rsc              1691 daemons/controld/controld_execd.c             send_task_ok_ack(lrm_state, input, rsc->id, rsc, op_task,
rsc              1702 daemons/controld/controld_execd.c               lrmd_rsc_info_t *rsc, const char *from_sys, const char *from_host,
rsc              1706 daemons/controld/controld_execd.c     int cib_rc = controld_delete_resource_history(rsc->id, lrm_state->node_name,
rsc              1713 daemons/controld/controld_execd.c         op = construct_op(lrm_state, input->xml, rsc->id, CRMD_ACTION_DELETE);
rsc              1719 daemons/controld/controld_execd.c         controld_ack_event_directly(from_host, from_sys, NULL, op, rsc->id);
rsc              1724 daemons/controld/controld_execd.c     if (crm_rsc_delete && is_remote_lrmd_ra(NULL, NULL, rsc->id)) {
rsc              1728 daemons/controld/controld_execd.c     delete_resource(lrm_state, rsc->id, rsc, NULL, from_sys,
rsc              1806 daemons/controld/controld_execd.c         lrmd_rsc_info_t *rsc = NULL;
rsc              1815 daemons/controld/controld_execd.c         rc = get_lrm_resource(lrm_state, xml_rsc, create_rsc, &rsc);
rsc              1857 daemons/controld/controld_execd.c             if (!do_lrm_cancel(input, lrm_state, rsc, from_host, from_sys)) {
rsc              1862 daemons/controld/controld_execd.c             do_lrm_delete(input, lrm_state, rsc, from_sys, from_host,
rsc              1875 daemons/controld/controld_execd.c             md = controld_get_rsc_metadata(lrm_state, rsc,
rsc              1881 daemons/controld/controld_execd.c             do_lrm_rsc_op(lrm_state, rsc, reload_name, input->xml);
rsc              1884 daemons/controld/controld_execd.c             do_lrm_rsc_op(lrm_state, rsc, operation, input->xml);
rsc              1887 daemons/controld/controld_execd.c         lrmd_free_rsc_info(rsc);
rsc              1902 daemons/controld/controld_execd.c     lrmd_rsc_info_t *rsc = lrm_state_get_rsc_info(lrm_state, rsc_id, 0);
rsc              1905 daemons/controld/controld_execd.c     metadata = controld_get_rsc_metadata(lrm_state, rsc,
rsc              1947 daemons/controld/controld_execd.c     lrmd_free_rsc_info(rsc);
rsc              2094 daemons/controld/controld_execd.c                             lrmd_rsc_info_t *rsc, lrmd_event_data_t *op,
rsc              2121 daemons/controld/controld_execd.c     build_operation_update(iter, rsc, op, fsa_our_uname, __func__);
rsc              2160 daemons/controld/controld_execd.c     lrmd_rsc_info_t *rsc;
rsc              2172 daemons/controld/controld_execd.c         && pcmk__str_eq(op->rsc_id, event->rsc->id, pcmk__str_none)) {
rsc              2175 daemons/controld/controld_execd.c         remove = !cancel_op(event->lrm_state, event->rsc->id, key, op->call_id, FALSE);
rsc              2198 daemons/controld/controld_execd.c record_pending_op(const char *node_name, lrmd_rsc_info_t *rsc, lrmd_event_data_t *op)
rsc              2203 daemons/controld/controld_execd.c     CRM_CHECK(rsc != NULL, return);
rsc              2228 daemons/controld/controld_execd.c     do_update_resource(node_name, rsc, op, 0);
rsc              2232 daemons/controld/controld_execd.c do_lrm_rsc_op(lrm_state_t *lrm_state, lrmd_rsc_info_t *rsc,
rsc              2245 daemons/controld/controld_execd.c     CRM_CHECK(rsc != NULL, return);
rsc              2255 daemons/controld/controld_execd.c     op = construct_op(lrm_state, msg, rsc->id, operation);
rsc              2258 daemons/controld/controld_execd.c     if (is_remote_lrmd_ra(NULL, NULL, rsc->id)
rsc              2280 daemons/controld/controld_execd.c         data.rsc = rsc;
rsc              2288 daemons/controld/controld_execd.c                       rsc->id, operation, op->interval_ms);
rsc              2295 daemons/controld/controld_execd.c                crm_action_str(op->op_type, op->interval_ms), rsc->id, lrm_state->node_name,
rsc              2296 daemons/controld/controld_execd.c                transition, rsc->id, operation, op->interval_ms);
rsc              2313 daemons/controld/controld_execd.c                    operation, rsc->id, fsa_state2string(fsa_state),
rsc              2318 daemons/controld/controld_execd.c         controld_ack_event_directly(NULL, NULL, rsc, op, rsc->id);
rsc              2324 daemons/controld/controld_execd.c     record_pending_op(lrm_state->node_name, rsc, op);
rsc              2326 daemons/controld/controld_execd.c     op_id = pcmk__op_key(rsc->id, op->op_type, op->interval_ms);
rsc              2330 daemons/controld/controld_execd.c         cancel_op_key(lrm_state, rsc, op_id, FALSE);
rsc              2344 daemons/controld/controld_execd.c     rc = controld_execute_resource_agent(lrm_state, rsc->id, op->op_type,
rsc              2352 daemons/controld/controld_execd.c         char *call_id_s = make_stop_id(rsc->id, call_id);
rsc              2362 daemons/controld/controld_execd.c         pending->rsc_id = strdup(rsc->id);
rsc              2378 daemons/controld/controld_execd.c             controld_ack_event_directly(NULL, NULL, rsc, op, rsc->id);
rsc              2386 daemons/controld/controld_execd.c                 CRM_XS " rc=%d", operation, rsc->id, pcmk_rc_str(rc), rc);
rsc              2395 daemons/controld/controld_execd.c                 operation, rsc->id, lrm_state->node_name, pcmk_rc_str(rc), rc);
rsc              2446 daemons/controld/controld_execd.c do_update_resource(const char *node_name, lrmd_rsc_info_t *rsc,
rsc              2494 daemons/controld/controld_execd.c     build_operation_update(iter, rsc, op, node_name, __func__);
rsc              2496 daemons/controld/controld_execd.c     if (rsc) {
rsc              2499 daemons/controld/controld_execd.c         crm_xml_add(iter, XML_ATTR_TYPE, rsc->type);
rsc              2500 daemons/controld/controld_execd.c         crm_xml_add(iter, XML_AGENT_ATTR_CLASS, rsc->standard);
rsc              2501 daemons/controld/controld_execd.c         crm_xml_add(iter, XML_AGENT_ATTR_PROVIDER, rsc->provider);
rsc              2523 daemons/controld/controld_execd.c         controld_ack_event_directly(NULL, NULL, rsc, op, op->rsc_id);
rsc              2706 daemons/controld/controld_execd.c     lrmd_rsc_info_t *rsc = NULL;
rsc              2733 daemons/controld/controld_execd.c         rsc = lrm_state_get_rsc_info(lrm_state, op->rsc_id, 0);
rsc              2735 daemons/controld/controld_execd.c     if ((rsc == NULL) && action_xml) {
rsc              2746 daemons/controld/controld_execd.c             rsc = lrmd_new_rsc_info(op->rsc_id, standard, provider, type);
rsc              2790 daemons/controld/controld_execd.c             if (node_name && rsc) {
rsc              2792 daemons/controld/controld_execd.c                 update_id = do_update_resource(node_name, rsc, op,
rsc              2899 daemons/controld/controld_execd.c         } else if (rsc && (op->rc == PCMK_OCF_OK)) {
rsc              2902 daemons/controld/controld_execd.c             metadata_cache_update(lrm_state->metadata_cache, rsc, metadata);
rsc              2918 daemons/controld/controld_execd.c     if (lrm_state && rsc) {
rsc              2919 daemons/controld/controld_execd.c         update_history_cache(lrm_state, rsc, op);
rsc              2922 daemons/controld/controld_execd.c     lrmd_free_rsc_info(rsc);
rsc                42 daemons/controld/controld_execd_state.c     free(op->rsc);
rsc               658 daemons/controld/controld_execd_state.c     lrmd_rsc_info_t *rsc = NULL;
rsc               667 daemons/controld/controld_execd_state.c     rsc = g_hash_table_lookup(lrm_state->rsc_info_cache, rsc_id);
rsc               668 daemons/controld/controld_execd_state.c     if (rsc == NULL) {
rsc               670 daemons/controld/controld_execd_state.c         rsc = ((lrmd_t *) lrm_state->conn)->cmds->get_rsc_info(lrm_state->conn, rsc_id, options);
rsc               671 daemons/controld/controld_execd_state.c         if (rsc == NULL) {
rsc               675 daemons/controld/controld_execd_state.c         g_hash_table_insert(lrm_state->rsc_info_cache, rsc->id, rsc);
rsc               678 daemons/controld/controld_execd_state.c     return lrmd_copy_rsc_info(rsc);
rsc                23 daemons/controld/controld_lrm.h     lrmd_rsc_info_t rsc;
rsc                83 daemons/controld/controld_lrm.h     char *rsc;
rsc               187 daemons/controld/controld_lrm.h                                  lrmd_rsc_info_t *rsc, lrmd_event_data_t *op,
rsc               586 daemons/controld/controld_messages.c     const char *rsc = NULL;
rsc               599 daemons/controld/controld_messages.c             rsc = ID(xml_rsc);
rsc               611 daemons/controld/controld_messages.c     if ((rsc == NULL) || (uname == NULL)) {
rsc               623 daemons/controld/controld_messages.c     update_attrd_clear_failures(uname, rsc, op, interval_spec, is_remote_node);
rsc               626 daemons/controld/controld_messages.c     lrm_clear_last_failure(rsc, uname, op, interval_ms);
rsc               122 daemons/controld/controld_metadata.c ra_version_from_xml(xmlNode *metadata_xml, const lrmd_rsc_info_t *rsc)
rsc               128 daemons/controld/controld_metadata.c                   rsc->standard, rsc->provider, rsc->type);
rsc               133 daemons/controld/controld_metadata.c                   rsc->standard, rsc->provider, rsc->type);
rsc               138 daemons/controld/controld_metadata.c                   rsc->standard, rsc->provider, rsc->type, version);
rsc               199 daemons/controld/controld_metadata.c metadata_cache_update(GHashTable *mdc, lrmd_rsc_info_t *rsc,
rsc               209 daemons/controld/controld_metadata.c     CRM_CHECK(mdc && rsc && metadata_str, return NULL);
rsc               211 daemons/controld/controld_metadata.c     key = crm_generate_ra_key(rsc->standard, rsc->provider, rsc->type);
rsc               220 daemons/controld/controld_metadata.c                 rsc->standard, rsc->provider, rsc->type);
rsc               231 daemons/controld/controld_metadata.c     md->ra_version = ra_version_from_xml(metadata, rsc);
rsc               234 daemons/controld/controld_metadata.c     if (strcmp(rsc->standard, PCMK_RESOURCE_CLASS_OCF) == 0) {
rsc               279 daemons/controld/controld_metadata.c                      rsc->standard, rsc->provider, rsc->type);
rsc               332 daemons/controld/controld_metadata.c controld_get_rsc_metadata(lrm_state_t *lrm_state, lrmd_rsc_info_t *rsc,
rsc               340 daemons/controld/controld_metadata.c     CRM_CHECK((lrm_state != NULL) && (rsc != NULL), return NULL);
rsc               343 daemons/controld/controld_metadata.c         key = crm_generate_ra_key(rsc->standard, rsc->provider, rsc->type);
rsc               369 daemons/controld/controld_metadata.c     rc = lrm_state_get_metadata(lrm_state, rsc->standard, rsc->provider,
rsc               370 daemons/controld/controld_metadata.c                                 rsc->type, &metadata_str, 0);
rsc               373 daemons/controld/controld_metadata.c                  rsc->id, rsc->standard,
rsc               374 daemons/controld/controld_metadata.c                  ((rsc->provider == NULL)? "" : ":"),
rsc               375 daemons/controld/controld_metadata.c                  ((rsc->provider == NULL)? "" : rsc->provider),
rsc               376 daemons/controld/controld_metadata.c                  rsc->type, pcmk_strerror(rc));
rsc               380 daemons/controld/controld_metadata.c     metadata = metadata_cache_update(lrm_state->metadata_cache, rsc,
rsc               385 daemons/controld/controld_metadata.c                  rsc->id, rsc->standard, ((rsc->provider == NULL)? "" : ":"),
rsc               386 daemons/controld/controld_metadata.c                  ((rsc->provider == NULL)? "" : rsc->provider), rsc->type);
rsc                77 daemons/controld/controld_metadata.h                                             lrmd_rsc_info_t *rsc,
rsc                80 daemons/controld/controld_metadata.h                                                 lrmd_rsc_info_t *rsc,
rsc               230 daemons/controld/controld_te_actions.c     xmlNode *rsc = NULL;
rsc               269 daemons/controld/controld_te_actions.c     rsc = create_xml_node(state, XML_CIB_TAG_LRM);
rsc               270 daemons/controld/controld_te_actions.c     crm_xml_add(rsc, XML_ATTR_ID, target_uuid);
rsc               272 daemons/controld/controld_te_actions.c     rsc = create_xml_node(rsc, XML_LRM_TAG_RESOURCES);
rsc               273 daemons/controld/controld_te_actions.c     rsc = create_xml_node(rsc, XML_LRM_TAG_RESOURCE);
rsc               274 daemons/controld/controld_te_actions.c     crm_xml_add(rsc, XML_ATTR_ID, rsc_id);
rsc               277 daemons/controld/controld_te_actions.c     crm_copy_xml_element(action_rsc, rsc, XML_ATTR_TYPE);
rsc               278 daemons/controld/controld_te_actions.c     crm_copy_xml_element(action_rsc, rsc, XML_AGENT_ATTR_CLASS);
rsc               279 daemons/controld/controld_te_actions.c     crm_copy_xml_element(action_rsc, rsc, XML_AGENT_ATTR_PROVIDER);
rsc               282 daemons/controld/controld_te_actions.c     pcmk__create_history_xml(rsc, op, CRM_FEATURE_SET, target_rc, target,
rsc               215 daemons/controld/controld_te_callbacks.c     xmlNode *rsc = NULL;
rsc               248 daemons/controld/controld_te_callbacks.c     for (rsc = pcmk__xml_first_child(xml); rsc != NULL;
rsc               249 daemons/controld/controld_te_callbacks.c          rsc = pcmk__xml_next(rsc)) {
rsc               250 daemons/controld/controld_te_callbacks.c         crm_trace("Processing %s", ID(rsc));
rsc               251 daemons/controld/controld_te_callbacks.c         process_lrm_resource_diff(rsc, node);
rsc                88 daemons/controld/controld_utils.h void update_attrd_clear_failures(const char *host, const char *rsc,
rsc               430 daemons/execd/cts-exec-helper.c     pe_resource_t *rsc = NULL;
rsc               464 daemons/execd/cts-exec-helper.c         rsc = pe_find_resource_with_flags(data_set->resources, options.rsc_id,
rsc               468 daemons/execd/cts-exec-helper.c     if (!rsc) {
rsc               474 daemons/execd/cts-exec-helper.c     params = pe_rsc_params(rsc, NULL, data_set);
rsc               477 daemons/execd/cts-exec-helper.c     get_meta_attributes(meta, rsc, NULL, data_set);
rsc               100 daemons/execd/execd_commands.c static void cmd_finalize(lrmd_cmd_t * cmd, lrmd_rsc_t * rsc);
rsc               102 daemons/execd/execd_commands.c static void cancel_all_recurring(lrmd_rsc_t * rsc, const char *client_id);
rsc               264 daemons/execd/execd_commands.c normalize_action_name(lrmd_rsc_t * rsc, const char *action)
rsc               267 daemons/execd/execd_commands.c         pcmk_is_set(pcmk_get_ra_caps(rsc->class), pcmk_ra_cap_status)) {
rsc               277 daemons/execd/execd_commands.c     lrmd_rsc_t *rsc = NULL;
rsc               279 daemons/execd/execd_commands.c     rsc = calloc(1, sizeof(lrmd_rsc_t));
rsc               281 daemons/execd/execd_commands.c     crm_element_value_int(msg, F_LRMD_CALLOPTS, &rsc->call_opts);
rsc               283 daemons/execd/execd_commands.c     rsc->rsc_id = crm_element_value_copy(rsc_xml, F_LRMD_RSC_ID);
rsc               284 daemons/execd/execd_commands.c     rsc->class = crm_element_value_copy(rsc_xml, F_LRMD_CLASS);
rsc               285 daemons/execd/execd_commands.c     rsc->provider = crm_element_value_copy(rsc_xml, F_LRMD_PROVIDER);
rsc               286 daemons/execd/execd_commands.c     rsc->type = crm_element_value_copy(rsc_xml, F_LRMD_TYPE);
rsc               287 daemons/execd/execd_commands.c     rsc->work = mainloop_add_trigger(G_PRIORITY_HIGH, lrmd_rsc_dispatch, rsc);
rsc               290 daemons/execd/execd_commands.c     pcmk__set_result(&rsc->fence_probe_result, CRM_EX_ERROR,
rsc               292 daemons/execd/execd_commands.c     return rsc;
rsc               369 daemons/execd/execd_commands.c     lrmd_rsc_t *rsc;
rsc               377 daemons/execd/execd_commands.c     rsc = g_hash_table_lookup(rsc_list, cmd->rsc_id);
rsc               379 daemons/execd/execd_commands.c     CRM_ASSERT(rsc != NULL);
rsc               382 daemons/execd/execd_commands.c     rsc->recurring_ops = g_list_remove(rsc->recurring_ops, cmd);
rsc               383 daemons/execd/execd_commands.c     rsc->pending_ops = g_list_append(rsc->pending_ops, cmd);
rsc               387 daemons/execd/execd_commands.c     mainloop_set_trigger(rsc->work);
rsc               406 daemons/execd/execd_commands.c     lrmd_rsc_t *rsc = NULL;
rsc               409 daemons/execd/execd_commands.c     rsc = cmd->rsc_id ? g_hash_table_lookup(rsc_list, cmd->rsc_id) : NULL;
rsc               411 daemons/execd/execd_commands.c     if (rsc) {
rsc               412 daemons/execd/execd_commands.c         mainloop_set_trigger(rsc->work);
rsc               436 daemons/execd/execd_commands.c merge_recurring_duplicate(lrmd_rsc_t * rsc, lrmd_cmd_t * cmd)
rsc               446 daemons/execd/execd_commands.c     dup = find_duplicate_action(rsc->pending_ops, cmd);
rsc               449 daemons/execd/execd_commands.c         dup = find_duplicate_action(rsc->recurring_ops, cmd);
rsc               458 daemons/execd/execd_commands.c     if (pcmk__str_eq(rsc->class, PCMK_RESOURCE_CLASS_STONITH,
rsc               469 daemons/execd/execd_commands.c              rsc->rsc_id, normalize_action_name(rsc, dup->action),
rsc               486 daemons/execd/execd_commands.c         if (pcmk__str_eq(rsc->class, PCMK_RESOURCE_CLASS_STONITH,
rsc               491 daemons/execd/execd_commands.c             services_action_kick(rsc->rsc_id,
rsc               492 daemons/execd/execd_commands.c                                  normalize_action_name(rsc, dup->action),
rsc               500 daemons/execd/execd_commands.c schedule_lrmd_cmd(lrmd_rsc_t * rsc, lrmd_cmd_t * cmd)
rsc               503 daemons/execd/execd_commands.c     CRM_CHECK(rsc != NULL, return);
rsc               505 daemons/execd/execd_commands.c     crm_trace("Scheduling %s on %s", cmd->action, rsc->rsc_id);
rsc               507 daemons/execd/execd_commands.c     if (merge_recurring_duplicate(rsc, cmd)) {
rsc               516 daemons/execd/execd_commands.c         cancel_all_recurring(rsc, NULL);
rsc               519 daemons/execd/execd_commands.c     rsc->pending_ops = g_list_append(rsc->pending_ops, cmd);
rsc               523 daemons/execd/execd_commands.c     mainloop_set_trigger(rsc->work);
rsc               717 daemons/execd/execd_commands.c cmd_finalize(lrmd_cmd_t * cmd, lrmd_rsc_t * rsc)
rsc               720 daemons/execd/execd_commands.c               rsc ? rsc->active : NULL, cmd);
rsc               722 daemons/execd/execd_commands.c     if (rsc && (rsc->active == cmd)) {
rsc               723 daemons/execd/execd_commands.c         rsc->active = NULL;
rsc               724 daemons/execd/execd_commands.c         mainloop_set_trigger(rsc->work);
rsc               727 daemons/execd/execd_commands.c     if (!rsc) {
rsc               739 daemons/execd/execd_commands.c         if (rsc) {
rsc               740 daemons/execd/execd_commands.c             rsc->recurring_ops = g_list_remove(rsc->recurring_ops, cmd);
rsc               741 daemons/execd/execd_commands.c             rsc->pending_ops = g_list_remove(rsc->pending_ops, cmd);
rsc               745 daemons/execd/execd_commands.c         if (rsc) {
rsc               746 daemons/execd/execd_commands.c             rsc->pending_ops = g_list_remove(rsc->pending_ops, cmd);
rsc               788 daemons/execd/execd_commands.c     lrmd_rsc_t *rsc = NULL;
rsc               792 daemons/execd/execd_commands.c     while (g_hash_table_iter_next(&iter, (gpointer *) & key, (gpointer *) & rsc)) {
rsc               793 daemons/execd/execd_commands.c         if (rsc->call_opts & lrmd_opt_drop_recurring) {
rsc               796 daemons/execd/execd_commands.c             cancel_all_recurring(rsc, client_id);
rsc               804 daemons/execd/execd_commands.c     lrmd_rsc_t *rsc;
rsc               832 daemons/execd/execd_commands.c     rsc = cmd->rsc_id ? g_hash_table_lookup(rsc_list, cmd->rsc_id) : NULL;
rsc               835 daemons/execd/execd_commands.c     if (rsc && pcmk__str_eq(rsc->class, PCMK_RESOURCE_CLASS_SERVICE, pcmk__str_casei)) {
rsc               836 daemons/execd/execd_commands.c         rclass = resources_find_service_class(rsc->type);
rsc               837 daemons/execd/execd_commands.c     } else if(rsc) {
rsc               838 daemons/execd/execd_commands.c         rclass = rsc->class;
rsc               889 daemons/execd/execd_commands.c     if (rsc && pcmk__str_eq(rsc->class, PCMK_RESOURCE_CLASS_NAGIOS, pcmk__str_casei)) {
rsc               936 daemons/execd/execd_commands.c             if(rsc) {
rsc               937 daemons/execd/execd_commands.c                 rsc->active = NULL;
rsc               939 daemons/execd/execd_commands.c             schedule_lrmd_cmd(rsc, cmd);
rsc               960 daemons/execd/execd_commands.c     cmd_finalize(cmd, rsc);
rsc               978 daemons/execd/execd_commands.c     lrmd_rsc_t *rsc = g_hash_table_lookup(rsc_list, cmd->rsc_id);
rsc              1032 daemons/execd/execd_commands.c     if ((rsc != NULL) && pcmk__result_ok(&(cmd->result))) {
rsc              1035 daemons/execd/execd_commands.c             pcmk__set_result(&rsc->fence_probe_result, CRM_EX_OK,
rsc              1039 daemons/execd/execd_commands.c             pcmk__set_result(&rsc->fence_probe_result, CRM_EX_ERROR,
rsc              1053 daemons/execd/execd_commands.c     if (rsc && (cmd->interval_ms > 0)
rsc              1058 daemons/execd/execd_commands.c     cmd_finalize(cmd, rsc);
rsc              1081 daemons/execd/execd_commands.c     lrmd_rsc_t *rsc = NULL;
rsc              1085 daemons/execd/execd_commands.c     while (g_hash_table_iter_next(&iter, (gpointer *) & key, (gpointer *) & rsc)) {
rsc              1086 daemons/execd/execd_commands.c         if (pcmk__str_eq(rsc->class, PCMK_RESOURCE_CLASS_STONITH, pcmk__str_casei)) {
rsc              1094 daemons/execd/execd_commands.c             if (rsc->fence_probe_result.execution_status == PCMK_EXEC_DONE) {
rsc              1095 daemons/execd/execd_commands.c                 pcmk__set_result(&rsc->fence_probe_result, CRM_EX_ERROR,
rsc              1100 daemons/execd/execd_commands.c             if (rsc->active) {
rsc              1101 daemons/execd/execd_commands.c                 cmd_list = g_list_append(cmd_list, rsc->active);
rsc              1103 daemons/execd/execd_commands.c             if (rsc->recurring_ops) {
rsc              1104 daemons/execd/execd_commands.c                 cmd_list = g_list_concat(cmd_list, rsc->recurring_ops);
rsc              1106 daemons/execd/execd_commands.c             if (rsc->pending_ops) {
rsc              1107 daemons/execd/execd_commands.c                 cmd_list = g_list_concat(cmd_list, rsc->pending_ops);
rsc              1109 daemons/execd/execd_commands.c             rsc->pending_ops = rsc->recurring_ops = NULL;
rsc              1141 daemons/execd/execd_commands.c execd_stonith_start(stonith_t *stonith_api, lrmd_rsc_t *rsc, lrmd_cmd_t *cmd)
rsc              1165 daemons/execd/execd_commands.c                                             cmd->rsc_id, rsc->provider,
rsc              1166 daemons/execd/execd_commands.c                                             rsc->type, device_params);
rsc              1185 daemons/execd/execd_commands.c execd_stonith_stop(stonith_t *stonith_api, const lrmd_rsc_t *rsc)
rsc              1191 daemons/execd/execd_commands.c                                             rsc->rsc_id);
rsc              1205 daemons/execd/execd_commands.c execd_stonith_monitor(stonith_t *stonith_api, lrmd_rsc_t *rsc, lrmd_cmd_t *cmd)
rsc              1214 daemons/execd/execd_commands.c         rsc->active = cmd;
rsc              1223 daemons/execd/execd_commands.c lrmd_rsc_execute_stonith(lrmd_rsc_t * rsc, lrmd_cmd_t * cmd)
rsc              1233 daemons/execd/execd_commands.c         stonith_action_complete(cmd, rsc->fence_probe_result.exit_status,
rsc              1234 daemons/execd/execd_commands.c                                 rsc->fence_probe_result.execution_status,
rsc              1235 daemons/execd/execd_commands.c                                 rsc->fence_probe_result.exit_reason);
rsc              1245 daemons/execd/execd_commands.c         rc = execd_stonith_start(stonith_api, rsc, cmd);
rsc              1251 daemons/execd/execd_commands.c         rc = execd_stonith_stop(stonith_api, rsc);
rsc              1264 daemons/execd/execd_commands.c         rc = execd_stonith_monitor(stonith_api, rsc, cmd);
rsc              1278 daemons/execd/execd_commands.c lrmd_rsc_execute_service_lib(lrmd_rsc_t * rsc, lrmd_cmd_t * cmd)
rsc              1283 daemons/execd/execd_commands.c     CRM_ASSERT(rsc);
rsc              1287 daemons/execd/execd_commands.c               rsc->rsc_id, cmd->action, rsc->class, rsc->provider, rsc->type);
rsc              1291 daemons/execd/execd_commands.c     if (pcmk__str_eq(rsc->class, PCMK_RESOURCE_CLASS_NAGIOS, pcmk__str_casei)
rsc              1301 daemons/execd/execd_commands.c     action = services__create_resource_action(rsc->rsc_id, rsc->class, rsc->provider,
rsc              1302 daemons/execd/execd_commands.c                                      rsc->type,
rsc              1303 daemons/execd/execd_commands.c                                      normalize_action_name(rsc, cmd->action),
rsc              1336 daemons/execd/execd_commands.c     cmd_finalize(cmd, rsc);
rsc              1341 daemons/execd/execd_commands.c lrmd_rsc_execute(lrmd_rsc_t * rsc)
rsc              1345 daemons/execd/execd_commands.c     CRM_CHECK(rsc != NULL, return FALSE);
rsc              1347 daemons/execd/execd_commands.c     if (rsc->active) {
rsc              1348 daemons/execd/execd_commands.c         crm_trace("%s is still active", rsc->rsc_id);
rsc              1352 daemons/execd/execd_commands.c     if (rsc->pending_ops) {
rsc              1353 daemons/execd/execd_commands.c         GList *first = rsc->pending_ops;
rsc              1362 daemons/execd/execd_commands.c         rsc->pending_ops = g_list_remove_link(rsc->pending_ops, first);
rsc              1372 daemons/execd/execd_commands.c         crm_trace("Nothing further to do for %s", rsc->rsc_id);
rsc              1376 daemons/execd/execd_commands.c     rsc->active = cmd;          /* only one op at a time for a rsc */
rsc              1378 daemons/execd/execd_commands.c         rsc->recurring_ops = g_list_append(rsc->recurring_ops, cmd);
rsc              1383 daemons/execd/execd_commands.c     if (pcmk__str_eq(rsc->class, PCMK_RESOURCE_CLASS_STONITH, pcmk__str_casei)) {
rsc              1384 daemons/execd/execd_commands.c         lrmd_rsc_execute_stonith(rsc, cmd);
rsc              1386 daemons/execd/execd_commands.c         lrmd_rsc_execute_service_lib(rsc, cmd);
rsc              1402 daemons/execd/execd_commands.c     lrmd_rsc_t *rsc = data;
rsc              1403 daemons/execd/execd_commands.c     int is_stonith = pcmk__str_eq(rsc->class, PCMK_RESOURCE_CLASS_STONITH,
rsc              1406 daemons/execd/execd_commands.c     gIter = rsc->pending_ops;
rsc              1418 daemons/execd/execd_commands.c     g_list_free(rsc->pending_ops);
rsc              1420 daemons/execd/execd_commands.c     gIter = rsc->recurring_ops;
rsc              1431 daemons/execd/execd_commands.c             if (rsc->active != cmd) {
rsc              1439 daemons/execd/execd_commands.c             services_action_cancel(rsc->rsc_id,
rsc              1440 daemons/execd/execd_commands.c                                    normalize_action_name(rsc, cmd->action),
rsc              1447 daemons/execd/execd_commands.c     g_list_free(rsc->recurring_ops);
rsc              1449 daemons/execd/execd_commands.c     free(rsc->rsc_id);
rsc              1450 daemons/execd/execd_commands.c     free(rsc->class);
rsc              1451 daemons/execd/execd_commands.c     free(rsc->provider);
rsc              1452 daemons/execd/execd_commands.c     free(rsc->type);
rsc              1453 daemons/execd/execd_commands.c     mainloop_destroy_trigger(rsc->work);
rsc              1455 daemons/execd/execd_commands.c     free(rsc);
rsc              1496 daemons/execd/execd_commands.c     lrmd_rsc_t *rsc = build_rsc_from_xml(request);
rsc              1497 daemons/execd/execd_commands.c     lrmd_rsc_t *dup = g_hash_table_lookup(rsc_list, rsc->rsc_id);
rsc              1500 daemons/execd/execd_commands.c         pcmk__str_eq(rsc->class, dup->class, pcmk__str_casei) &&
rsc              1501 daemons/execd/execd_commands.c         pcmk__str_eq(rsc->provider, dup->provider, pcmk__str_casei) && pcmk__str_eq(rsc->type, dup->type, pcmk__str_casei)) {
rsc              1503 daemons/execd/execd_commands.c         crm_notice("Ignoring duplicate registration of '%s'", rsc->rsc_id);
rsc              1504 daemons/execd/execd_commands.c         free_rsc(rsc);
rsc              1508 daemons/execd/execd_commands.c     g_hash_table_replace(rsc_list, rsc->rsc_id, rsc);
rsc              1509 daemons/execd/execd_commands.c     crm_info("Cached agent information for '%s'", rsc->rsc_id);
rsc              1520 daemons/execd/execd_commands.c     lrmd_rsc_t *rsc = NULL;
rsc              1525 daemons/execd/execd_commands.c         rsc = g_hash_table_lookup(rsc_list, rsc_id);
rsc              1526 daemons/execd/execd_commands.c         if (rsc == NULL) {
rsc              1533 daemons/execd/execd_commands.c     if (rsc) {
rsc              1534 daemons/execd/execd_commands.c         crm_xml_add(reply, F_LRMD_RSC_ID, rsc->rsc_id);
rsc              1535 daemons/execd/execd_commands.c         crm_xml_add(reply, F_LRMD_CLASS, rsc->class);
rsc              1536 daemons/execd/execd_commands.c         crm_xml_add(reply, F_LRMD_PROVIDER, rsc->provider);
rsc              1537 daemons/execd/execd_commands.c         crm_xml_add(reply, F_LRMD_TYPE, rsc->type);
rsc              1547 daemons/execd/execd_commands.c     lrmd_rsc_t *rsc = NULL;
rsc              1555 daemons/execd/execd_commands.c     rsc = g_hash_table_lookup(rsc_list, rsc_id);
rsc              1556 daemons/execd/execd_commands.c     if (rsc == NULL) {
rsc              1562 daemons/execd/execd_commands.c     if (rsc->active) {
rsc              1565 daemons/execd/execd_commands.c                   rsc->active, rsc_id);
rsc              1577 daemons/execd/execd_commands.c     lrmd_rsc_t *rsc = NULL;
rsc              1586 daemons/execd/execd_commands.c     if (!(rsc = g_hash_table_lookup(rsc_list, rsc_id))) {
rsc              1597 daemons/execd/execd_commands.c     schedule_lrmd_cmd(rsc, cmd);
rsc              1606 daemons/execd/execd_commands.c     lrmd_rsc_t *rsc = g_hash_table_lookup(rsc_list, rsc_id);
rsc              1619 daemons/execd/execd_commands.c     if (!rsc) {
rsc              1623 daemons/execd/execd_commands.c     for (gIter = rsc->pending_ops; gIter != NULL; gIter = gIter->next) {
rsc              1628 daemons/execd/execd_commands.c             cmd_finalize(cmd, rsc);
rsc              1633 daemons/execd/execd_commands.c     if (pcmk__str_eq(rsc->class, PCMK_RESOURCE_CLASS_STONITH, pcmk__str_casei)) {
rsc              1636 daemons/execd/execd_commands.c         for (gIter = rsc->recurring_ops; gIter != NULL; gIter = gIter->next) {
rsc              1641 daemons/execd/execd_commands.c                 if (rsc->active != cmd) {
rsc              1642 daemons/execd/execd_commands.c                     cmd_finalize(cmd, rsc);
rsc              1648 daemons/execd/execd_commands.c                                       normalize_action_name(rsc, action),
rsc              1661 daemons/execd/execd_commands.c cancel_all_recurring(lrmd_rsc_t * rsc, const char *client_id)
rsc              1672 daemons/execd/execd_commands.c     if (rsc->recurring_ops) {
rsc              1673 daemons/execd/execd_commands.c         cmd_list = g_list_concat(cmd_list, g_list_copy(rsc->recurring_ops));
rsc              1675 daemons/execd/execd_commands.c     if (rsc->pending_ops) {
rsc              1676 daemons/execd/execd_commands.c         cmd_list = g_list_concat(cmd_list, g_list_copy(rsc->pending_ops));
rsc              1693 daemons/execd/execd_commands.c         cancel_op(rsc->rsc_id, cmd->action, cmd->interval_ms);
rsc              1717 daemons/execd/execd_commands.c add_recurring_op_xml(xmlNode *reply, lrmd_rsc_t *rsc)
rsc              1721 daemons/execd/execd_commands.c     crm_xml_add(rsc_xml, F_LRMD_RSC_ID, rsc->rsc_id);
rsc              1722 daemons/execd/execd_commands.c     for (GList *item = rsc->recurring_ops; item != NULL; item = item->next) {
rsc              1738 daemons/execd/execd_commands.c     lrmd_rsc_t *rsc = NULL;
rsc              1753 daemons/execd/execd_commands.c         rsc = g_hash_table_lookup(rsc_list, rsc_id);
rsc              1754 daemons/execd/execd_commands.c         if (rsc == NULL) {
rsc              1770 daemons/execd/execd_commands.c                                       (gpointer *) &rsc)) {
rsc              1771 daemons/execd/execd_commands.c             add_recurring_op_xml(reply, rsc);
rsc              1773 daemons/execd/execd_commands.c     } else if (rsc) {
rsc              1774 daemons/execd/execd_commands.c         add_recurring_op_xml(reply, rsc);
rsc               589 daemons/fenced/pacemaker-fenced.c our_node_allowed_for(pe_resource_t *rsc)
rsc               594 daemons/fenced/pacemaker-fenced.c     if (rsc && stonith_our_uname) {
rsc               595 daemons/fenced/pacemaker-fenced.c         g_hash_table_iter_init(&iter, rsc->allowed_nodes);
rsc               684 daemons/fenced/pacemaker-fenced.c static void cib_device_update(pe_resource_t *rsc, pe_working_set_t *data_set)
rsc               692 daemons/fenced/pacemaker-fenced.c     if(rsc->children) {
rsc               694 daemons/fenced/pacemaker-fenced.c         for (gIter = rsc->children; gIter != NULL; gIter = gIter->next) {
rsc               696 daemons/fenced/pacemaker-fenced.c             if(pe_rsc_is_clone(rsc)) {
rsc               697 daemons/fenced/pacemaker-fenced.c                 crm_trace("Only processing one copy of the clone %s", rsc->id);
rsc               705 daemons/fenced/pacemaker-fenced.c     rclass = crm_element_value(rsc->xml, XML_AGENT_ATTR_CLASS);
rsc               711 daemons/fenced/pacemaker-fenced.c     if (pe__resource_is_disabled(rsc)) {
rsc               712 daemons/fenced/pacemaker-fenced.c         crm_info("Device %s has been disabled", rsc->id);
rsc               720 daemons/fenced/pacemaker-fenced.c         pcmk__str_eq(rsc->id, STONITH_WATCHDOG_ID, pcmk__str_none)) {
rsc               722 daemons/fenced/pacemaker-fenced.c                  "device %s as disabled", rsc->id);
rsc               727 daemons/fenced/pacemaker-fenced.c     node = our_node_allowed_for(rsc);
rsc               728 daemons/fenced/pacemaker-fenced.c     if (rsc->parent && (rsc->parent->variant == pe_group)) {
rsc               729 daemons/fenced/pacemaker-fenced.c         parent = our_node_allowed_for(rsc->parent);
rsc               736 daemons/fenced/pacemaker-fenced.c         crm_info("Device %s has been disabled on %s: unknown", rsc->id, stonith_our_uname);
rsc               737 daemons/fenced/pacemaker-fenced.c         g_hash_table_iter_init(&iter, rsc->allowed_nodes);
rsc               748 daemons/fenced/pacemaker-fenced.c         crm_info("Device %s has been disabled on %s: score=%s", rsc->id, stonith_our_uname, score);
rsc               762 daemons/fenced/pacemaker-fenced.c         const char *agent = crm_element_value(rsc->xml, XML_EXPR_ATTR_TYPE);
rsc               765 daemons/fenced/pacemaker-fenced.c         crm_debug("Device %s is allowed on %s: score=%d", rsc->id, stonith_our_uname, node->weight);
rsc               766 daemons/fenced/pacemaker-fenced.c         rsc_params = pe_rsc_params(rsc, node, data_set);
rsc               767 daemons/fenced/pacemaker-fenced.c         get_meta_attributes(rsc->meta, rsc, node, data_set);
rsc               769 daemons/fenced/pacemaker-fenced.c         rsc_provides = g_hash_table_lookup(rsc->meta, PCMK_STONITH_PROVIDES);
rsc               780 daemons/fenced/pacemaker-fenced.c         data = create_device_registration_xml(rsc_name(rsc), st_namespace_any,
rsc                23 include/crm/pengine/complex.h GHashTable *pe_rsc_params(pe_resource_t *rsc, pe_node_t *node,
rsc                25 include/crm/pengine/complex.h void get_meta_attributes(GHashTable * meta_hash, pe_resource_t *rsc,
rsc                27 include/crm/pengine/complex.h void get_rsc_attributes(GHashTable *meta_hash, pe_resource_t *rsc,
rsc                31 include/crm/pengine/complex.h void pe_get_versioned_attributes(xmlNode *meta_hash, pe_resource_t *rsc,
rsc                35 include/crm/pengine/complex.h gboolean is_parent(pe_resource_t *child, pe_resource_t *rsc);
rsc                36 include/crm/pengine/complex.h pe_resource_t *uber_parent(pe_resource_t *rsc);
rsc                20 include/crm/pengine/internal.h #  define pe_rsc_info(rsc, fmt, args...)  crm_log_tag(LOG_INFO,  rsc ? rsc->id : "<NULL>", fmt, ##args)
rsc                21 include/crm/pengine/internal.h #  define pe_rsc_debug(rsc, fmt, args...) crm_log_tag(LOG_DEBUG, rsc ? rsc->id : "<NULL>", fmt, ##args)
rsc                22 include/crm/pengine/internal.h #  define pe_rsc_trace(rsc, fmt, args...) crm_log_tag(LOG_TRACE, rsc ? rsc->id : "<NULL>", fmt, ##args)
rsc               220 include/crm/pengine/internal.h char *native_parameter(pe_resource_t * rsc, pe_node_t * node, gboolean create, const char *name,
rsc               222 include/crm/pengine/internal.h pe_node_t *native_location(const pe_resource_t *rsc, GList **list, int current);
rsc               227 include/crm/pengine/internal.h void common_update_score(pe_resource_t * rsc, const char *id, int score);
rsc               228 include/crm/pengine/internal.h void native_add_running(pe_resource_t * rsc, pe_node_t * node, pe_working_set_t * data_set, gboolean failed);
rsc               230 include/crm/pengine/internal.h gboolean native_unpack(pe_resource_t * rsc, pe_working_set_t * data_set);
rsc               231 include/crm/pengine/internal.h gboolean group_unpack(pe_resource_t * rsc, pe_working_set_t * data_set);
rsc               232 include/crm/pengine/internal.h gboolean clone_unpack(pe_resource_t * rsc, pe_working_set_t * data_set);
rsc               233 include/crm/pengine/internal.h gboolean pe__unpack_bundle(pe_resource_t *rsc, pe_working_set_t *data_set);
rsc               235 include/crm/pengine/internal.h pe_resource_t *native_find_rsc(pe_resource_t *rsc, const char *id, const pe_node_t *node,
rsc               238 include/crm/pengine/internal.h gboolean native_active(pe_resource_t * rsc, gboolean all);
rsc               239 include/crm/pengine/internal.h gboolean group_active(pe_resource_t * rsc, gboolean all);
rsc               240 include/crm/pengine/internal.h gboolean clone_active(pe_resource_t * rsc, gboolean all);
rsc               241 include/crm/pengine/internal.h gboolean pe__bundle_active(pe_resource_t *rsc, gboolean all);
rsc               243 include/crm/pengine/internal.h void native_print(pe_resource_t * rsc, const char *pre_text, long options, void *print_data);
rsc               244 include/crm/pengine/internal.h void group_print(pe_resource_t * rsc, const char *pre_text, long options, void *print_data);
rsc               245 include/crm/pengine/internal.h void clone_print(pe_resource_t * rsc, const char *pre_text, long options, void *print_data);
rsc               246 include/crm/pengine/internal.h void pe__print_bundle(pe_resource_t *rsc, const char *pre_text, long options,
rsc               249 include/crm/pengine/internal.h gchar * pcmk__native_output_string(pe_resource_t *rsc, const char *name, pe_node_t *node,
rsc               257 include/crm/pengine/internal.h pe__rsc_bool_str(pe_resource_t *rsc, uint64_t rsc_flag)
rsc               259 include/crm/pengine/internal.h     return pcmk__btoa(pcmk_is_set(rsc->flags, rsc_flag));
rsc               276 include/crm/pengine/internal.h void native_free(pe_resource_t * rsc);
rsc               277 include/crm/pengine/internal.h void group_free(pe_resource_t * rsc);
rsc               278 include/crm/pengine/internal.h void clone_free(pe_resource_t * rsc);
rsc               279 include/crm/pengine/internal.h void pe__free_bundle(pe_resource_t *rsc);
rsc               281 include/crm/pengine/internal.h enum rsc_role_e native_resource_state(const pe_resource_t * rsc, gboolean current);
rsc               282 include/crm/pengine/internal.h enum rsc_role_e group_resource_state(const pe_resource_t * rsc, gboolean current);
rsc               283 include/crm/pengine/internal.h enum rsc_role_e clone_resource_state(const pe_resource_t * rsc, gboolean current);
rsc               284 include/crm/pengine/internal.h enum rsc_role_e pe__bundle_resource_state(const pe_resource_t *rsc,
rsc               287 include/crm/pengine/internal.h void pe__count_common(pe_resource_t *rsc);
rsc               288 include/crm/pengine/internal.h void pe__count_bundle(pe_resource_t *rsc);
rsc               290 include/crm/pengine/internal.h gboolean common_unpack(xmlNode * xml_obj, pe_resource_t ** rsc, pe_resource_t * parent,
rsc               292 include/crm/pengine/internal.h void common_free(pe_resource_t * rsc);
rsc               306 include/crm/pengine/internal.h int pe_get_failcount(pe_node_t *node, pe_resource_t *rsc, time_t *last_failure,
rsc               310 include/crm/pengine/internal.h pe_action_t *pe__clear_failcount(pe_resource_t *rsc, pe_node_t *node,
rsc               316 include/crm/pengine/internal.h pe_node_t *pe__find_active_on(const pe_resource_t *rsc,
rsc               319 include/crm/pengine/internal.h pe_node_t *pe__find_active_requires(const pe_resource_t *rsc,
rsc               323 include/crm/pengine/internal.h pe__current_node(const pe_resource_t *rsc)
rsc               325 include/crm/pengine/internal.h     return pe__find_active_on(rsc, NULL, NULL);
rsc               351 include/crm/pengine/internal.h                               int line, bool to_log, pe_resource_t *rsc,
rsc               355 include/crm/pengine/internal.h #define pe__show_node_weights(level, rsc, text, nodes, data_set)    \
rsc               357 include/crm/pengine/internal.h                                  (level), (rsc), (text), (nodes), (data_set))
rsc               363 include/crm/pengine/internal.h extern xmlNode *find_rsc_op_entry(pe_resource_t * rsc, const char *key);
rsc               365 include/crm/pengine/internal.h extern pe_action_t *custom_action(pe_resource_t * rsc, char *key, const char *task, pe_node_t * on_node,
rsc               368 include/crm/pengine/internal.h #  define delete_key(rsc) pcmk__op_key(rsc->id, CRMD_ACTION_DELETE, 0)
rsc               369 include/crm/pengine/internal.h #  define delete_action(rsc, node, optional) custom_action(		\
rsc               370 include/crm/pengine/internal.h 		rsc, delete_key(rsc), CRMD_ACTION_DELETE, node,		\
rsc               373 include/crm/pengine/internal.h #  define stopped_key(rsc) pcmk__op_key(rsc->id, CRMD_ACTION_STOPPED, 0)
rsc               374 include/crm/pengine/internal.h #  define stopped_action(rsc, node, optional) custom_action(		\
rsc               375 include/crm/pengine/internal.h 		rsc, stopped_key(rsc), CRMD_ACTION_STOPPED, node,	\
rsc               378 include/crm/pengine/internal.h #  define stop_key(rsc) pcmk__op_key(rsc->id, CRMD_ACTION_STOP, 0)
rsc               379 include/crm/pengine/internal.h #  define stop_action(rsc, node, optional) custom_action(			\
rsc               380 include/crm/pengine/internal.h 		rsc, stop_key(rsc), CRMD_ACTION_STOP, node,		\
rsc               383 include/crm/pengine/internal.h #  define reload_key(rsc) pcmk__op_key(rsc->id, CRMD_ACTION_RELOAD_AGENT, 0)
rsc               384 include/crm/pengine/internal.h #  define start_key(rsc) pcmk__op_key(rsc->id, CRMD_ACTION_START, 0)
rsc               385 include/crm/pengine/internal.h #  define start_action(rsc, node, optional) custom_action(		\
rsc               386 include/crm/pengine/internal.h 		rsc, start_key(rsc), CRMD_ACTION_START, node,		\
rsc               389 include/crm/pengine/internal.h #  define started_key(rsc) pcmk__op_key(rsc->id, CRMD_ACTION_STARTED, 0)
rsc               390 include/crm/pengine/internal.h #  define started_action(rsc, node, optional) custom_action(		\
rsc               391 include/crm/pengine/internal.h 		rsc, started_key(rsc), CRMD_ACTION_STARTED, node,	\
rsc               394 include/crm/pengine/internal.h #  define promote_key(rsc) pcmk__op_key(rsc->id, CRMD_ACTION_PROMOTE, 0)
rsc               395 include/crm/pengine/internal.h #  define promote_action(rsc, node, optional) custom_action(		\
rsc               396 include/crm/pengine/internal.h 		rsc, promote_key(rsc), CRMD_ACTION_PROMOTE, node,	\
rsc               399 include/crm/pengine/internal.h #  define promoted_key(rsc) pcmk__op_key(rsc->id, CRMD_ACTION_PROMOTED, 0)
rsc               400 include/crm/pengine/internal.h #  define promoted_action(rsc, node, optional) custom_action(		\
rsc               401 include/crm/pengine/internal.h 		rsc, promoted_key(rsc), CRMD_ACTION_PROMOTED, node,	\
rsc               404 include/crm/pengine/internal.h #  define demote_key(rsc) pcmk__op_key(rsc->id, CRMD_ACTION_DEMOTE, 0)
rsc               405 include/crm/pengine/internal.h #  define demote_action(rsc, node, optional) custom_action(		\
rsc               406 include/crm/pengine/internal.h 		rsc, demote_key(rsc), CRMD_ACTION_DEMOTE, node,		\
rsc               409 include/crm/pengine/internal.h #  define demoted_key(rsc) pcmk__op_key(rsc->id, CRMD_ACTION_DEMOTED, 0)
rsc               410 include/crm/pengine/internal.h #  define demoted_action(rsc, node, optional) custom_action(		\
rsc               411 include/crm/pengine/internal.h 		rsc, demoted_key(rsc), CRMD_ACTION_DEMOTED, node,	\
rsc               414 include/crm/pengine/internal.h extern int pe_get_configured_timeout(pe_resource_t *rsc, const char *action,
rsc               419 include/crm/pengine/internal.h extern enum action_tasks get_complex_task(pe_resource_t * rsc, const char *name,
rsc               426 include/crm/pengine/internal.h GList *pe__resource_actions(const pe_resource_t *rsc, const pe_node_t *node,
rsc               431 include/crm/pengine/internal.h extern void resource_location(pe_resource_t * rsc, pe_node_t * node, int score, const char *tag,
rsc               435 include/crm/pengine/internal.h extern gboolean get_target_role(pe_resource_t * rsc, enum rsc_role_e *role);
rsc               436 include/crm/pengine/internal.h void pe__set_next_role(pe_resource_t *rsc, enum rsc_role_e role,
rsc               439 include/crm/pengine/internal.h extern pe_resource_t *find_clone_instance(pe_resource_t * rsc, const char *sub_id,
rsc               451 include/crm/pengine/internal.h pe_base_name_eq(pe_resource_t *rsc, const char *id)
rsc               453 include/crm/pengine/internal.h     if (id && rsc && rsc->id) {
rsc               455 include/crm/pengine/internal.h         size_t base_len = pe_base_name_end(rsc->id) - rsc->id + 1;
rsc               457 include/crm/pengine/internal.h         return (strlen(id) == base_len) && !strncmp(id, rsc->id, base_len);
rsc               465 include/crm/pengine/internal.h bool is_set_recursive(pe_resource_t * rsc, long long flag, bool any);
rsc               489 include/crm/pengine/internal.h op_digest_cache_t *pe__calculate_digests(pe_resource_t *rsc, const char *task,
rsc               497 include/crm/pengine/internal.h op_digest_cache_t *rsc_action_digest_cmp(pe_resource_t * rsc, xmlNode * xml_op, pe_node_t * node,
rsc               502 include/crm/pengine/internal.h     pe_resource_t * rsc, pe_node_t *node, const char *reason, pe_action_t *dependency, pe_working_set_t * data_set);
rsc               507 include/crm/pengine/internal.h void pe__set_resource_flags_recursive(pe_resource_t *rsc, uint64_t flags);
rsc               508 include/crm/pengine/internal.h void pe__clear_resource_flags_recursive(pe_resource_t *rsc, uint64_t flags);
rsc               520 include/crm/pengine/internal.h void common_print(pe_resource_t * rsc, const char *pre_text, const char *name, pe_node_t *node, long options, void *print_data);
rsc               521 include/crm/pengine/internal.h int pe__common_output_text(pcmk__output_t *out, pe_resource_t * rsc, const char *name, pe_node_t *node, unsigned int options);
rsc               522 include/crm/pengine/internal.h int pe__common_output_html(pcmk__output_t *out, pe_resource_t * rsc, const char *name, pe_node_t *node, unsigned int options);
rsc               525 include/crm/pengine/internal.h bool pe__bundle_needs_remote_name(pe_resource_t *rsc,
rsc               527 include/crm/pengine/internal.h const char *pe__add_bundle_remote_name(pe_resource_t *rsc,
rsc               532 include/crm/pengine/internal.h                                          const pe_resource_t *rsc);
rsc               534 include/crm/pengine/internal.h bool pe__is_universal_clone(pe_resource_t *rsc,
rsc               536 include/crm/pengine/internal.h void pe__add_param_check(xmlNode *rsc_op, pe_resource_t *rsc, pe_node_t *node,
rsc               558 include/crm/pengine/internal.h bool pe__resource_is_disabled(pe_resource_t *rsc);
rsc               559 include/crm/pengine/internal.h pe_action_t *pe__clear_resource_history(pe_resource_t *rsc, pe_node_t *node,
rsc               564 include/crm/pengine/internal.h bool pe__rsc_has_tag(pe_working_set_t *data_set, const char *rsc, const char *tag);
rsc               567 include/crm/pengine/internal.h bool pe__rsc_running_on_any(pe_resource_t *rsc, GList *node_list);
rsc               572 include/crm/pengine/internal.h bool pcmk__rsc_filtered_by_node(pe_resource_t *rsc, GList *only_node);
rsc               574 include/crm/pengine/internal.h gboolean pe__bundle_is_filtered(pe_resource_t *rsc, GList *only_rsc, gboolean check_parent);
rsc               575 include/crm/pengine/internal.h gboolean pe__clone_is_filtered(pe_resource_t *rsc, GList *only_rsc, gboolean check_parent);
rsc               576 include/crm/pengine/internal.h gboolean pe__group_is_filtered(pe_resource_t *rsc, GList *only_rsc, gboolean check_parent);
rsc               577 include/crm/pengine/internal.h gboolean pe__native_is_filtered(pe_resource_t *rsc, GList *only_rsc, gboolean check_parent);
rsc               579 include/crm/pengine/internal.h xmlNode *pe__failed_probe_for_rsc(pe_resource_t *rsc, const char *name);
rsc               581 include/crm/pengine/internal.h const char *pe__clone_child_id(pe_resource_t *rsc);
rsc               424 include/crm/pengine/pe_types.h     pe_resource_t *rsc;
rsc                26 include/crm/pengine/remote_internal.h bool pe__resource_is_remote_conn(const pe_resource_t *rsc,
rsc                29 include/crm/pengine/remote_internal.h                                                 const pe_resource_t *rsc);
rsc                31 include/crm/pengine/status.h const char *rsc_printable_id(pe_resource_t *rsc);
rsc                43 include/crm/pengine/status.h GList *find_operations(const char *rsc, const char *node, gboolean active_filter,
rsc                45 include/crm/pengine/status.h int pe_bundle_replicas(const pe_resource_t *rsc);
rsc                58 include/crm/pengine/status.h pe_rsc_is_clone(pe_resource_t *rsc)
rsc                60 include/crm/pengine/status.h     return rsc && (rsc->variant == pe_clone);
rsc                71 include/crm/pengine/status.h pe_rsc_is_unique_clone(pe_resource_t *rsc)
rsc                73 include/crm/pengine/status.h     return pe_rsc_is_clone(rsc) && pcmk_is_set(rsc->flags, pe_rsc_unique);
rsc                84 include/crm/pengine/status.h pe_rsc_is_anon_clone(pe_resource_t *rsc)
rsc                86 include/crm/pengine/status.h     return pe_rsc_is_clone(rsc) && !pcmk_is_set(rsc->flags, pe_rsc_unique);
rsc                97 include/crm/pengine/status.h pe_rsc_is_bundled(pe_resource_t *rsc)
rsc                99 include/crm/pengine/status.h     return uber_parent(rsc)->parent != NULL;
rsc               128 include/crm/services.h     char *rsc;
rsc               131 include/pacemaker.h int pcmk_resource_digests(xmlNodePtr *xml, pe_resource_t *rsc,
rsc                17 include/pcmki/pcmki_resource.h int pcmk__resource_digests(pcmk__output_t *out, pe_resource_t *rsc,
rsc                52 include/pcmki/pcmki_sched_allocate.h     GList *(*colocated_resources)(pe_resource_t *rsc, pe_resource_t *orig_rsc,
rsc                63 include/pcmki/pcmki_sched_allocate.h     void (*output_actions)(pe_resource_t *rsc);
rsc                66 include/pcmki/pcmki_sched_allocate.h     void (*append_meta) (pe_resource_t * rsc, xmlNode * xml);
rsc                83 include/pcmki/pcmki_sched_allocate.h     void (*add_utilization)(pe_resource_t *rsc, pe_resource_t *orig_rsc,
rsc                92 include/pcmki/pcmki_sched_allocate.h     void (*shutdown_lock)(pe_resource_t *rsc);
rsc                95 include/pcmki/pcmki_sched_allocate.h GHashTable *pcmk__native_merge_weights(pe_resource_t *rsc, const char *rhs,
rsc                99 include/pcmki/pcmki_sched_allocate.h GHashTable *pcmk__group_merge_weights(pe_resource_t *rsc, const char *rhs,
rsc               103 include/pcmki/pcmki_sched_allocate.h pe_node_t *pcmk__native_allocate(pe_resource_t *rsc, pe_node_t *preferred,
rsc               105 include/pcmki/pcmki_sched_allocate.h extern void native_create_actions(pe_resource_t * rsc, pe_working_set_t * data_set);
rsc               106 include/pcmki/pcmki_sched_allocate.h extern void native_internal_constraints(pe_resource_t * rsc, pe_working_set_t * data_set);
rsc               115 include/pcmki/pcmki_sched_allocate.h void native_rsc_location(pe_resource_t *rsc, pe__location_t *constraint);
rsc               116 include/pcmki/pcmki_sched_allocate.h extern void native_expand(pe_resource_t * rsc, pe_working_set_t * data_set);
rsc               117 include/pcmki/pcmki_sched_allocate.h extern gboolean native_create_probe(pe_resource_t * rsc, pe_node_t * node, pe_action_t * complete,
rsc               119 include/pcmki/pcmki_sched_allocate.h extern void native_append_meta(pe_resource_t * rsc, xmlNode * xml);
rsc               120 include/pcmki/pcmki_sched_allocate.h void pcmk__primitive_add_utilization(pe_resource_t *rsc,
rsc               123 include/pcmki/pcmki_sched_allocate.h void pcmk__primitive_shutdown_lock(pe_resource_t *rsc);
rsc               125 include/pcmki/pcmki_sched_allocate.h pe_node_t *pcmk__group_allocate(pe_resource_t *rsc, pe_node_t *preferred,
rsc               127 include/pcmki/pcmki_sched_allocate.h extern void group_create_actions(pe_resource_t * rsc, pe_working_set_t * data_set);
rsc               128 include/pcmki/pcmki_sched_allocate.h extern void group_internal_constraints(pe_resource_t * rsc, pe_working_set_t * data_set);
rsc               136 include/pcmki/pcmki_sched_allocate.h void group_rsc_location(pe_resource_t *rsc, pe__location_t *constraint);
rsc               137 include/pcmki/pcmki_sched_allocate.h extern void group_expand(pe_resource_t * rsc, pe_working_set_t * data_set);
rsc               138 include/pcmki/pcmki_sched_allocate.h extern void group_append_meta(pe_resource_t * rsc, xmlNode * xml);
rsc               139 include/pcmki/pcmki_sched_allocate.h void pcmk__group_add_utilization(pe_resource_t *rsc, pe_resource_t *orig_rsc,
rsc               141 include/pcmki/pcmki_sched_allocate.h void pcmk__group_shutdown_lock(pe_resource_t *rsc);
rsc               143 include/pcmki/pcmki_sched_allocate.h pe_node_t *pcmk__bundle_allocate(pe_resource_t *rsc, pe_node_t *preferred,
rsc               145 include/pcmki/pcmki_sched_allocate.h void pcmk__bundle_create_actions(pe_resource_t *rsc,
rsc               147 include/pcmki/pcmki_sched_allocate.h gboolean pcmk__bundle_create_probe(pe_resource_t *rsc, pe_node_t *node,
rsc               150 include/pcmki/pcmki_sched_allocate.h void pcmk__bundle_internal_constraints(pe_resource_t *rsc,
rsc               160 include/pcmki/pcmki_sched_allocate.h void pcmk__bundle_rsc_location(pe_resource_t *rsc, pe__location_t *constraint);
rsc               163 include/pcmki/pcmki_sched_allocate.h void pcmk__bundle_expand(pe_resource_t *rsc, pe_working_set_t *data_set);
rsc               164 include/pcmki/pcmki_sched_allocate.h void pcmk__bundle_append_meta(pe_resource_t *rsc, xmlNode *xml);
rsc               165 include/pcmki/pcmki_sched_allocate.h void pcmk__bundle_add_utilization(pe_resource_t *rsc, pe_resource_t *orig_rsc,
rsc               167 include/pcmki/pcmki_sched_allocate.h void pcmk__bundle_shutdown_lock(pe_resource_t *rsc);
rsc               169 include/pcmki/pcmki_sched_allocate.h pe_node_t *pcmk__clone_allocate(pe_resource_t *rsc, pe_node_t *preferred,
rsc               171 include/pcmki/pcmki_sched_allocate.h extern void clone_create_actions(pe_resource_t * rsc, pe_working_set_t * data_set);
rsc               172 include/pcmki/pcmki_sched_allocate.h extern void clone_internal_constraints(pe_resource_t * rsc, pe_working_set_t * data_set);
rsc               179 include/pcmki/pcmki_sched_allocate.h void clone_rsc_location(pe_resource_t *rsc, pe__location_t *constraint);
rsc               181 include/pcmki/pcmki_sched_allocate.h extern void clone_expand(pe_resource_t * rsc, pe_working_set_t * data_set);
rsc               182 include/pcmki/pcmki_sched_allocate.h extern gboolean clone_create_probe(pe_resource_t * rsc, pe_node_t * node, pe_action_t * complete,
rsc               184 include/pcmki/pcmki_sched_allocate.h extern void clone_append_meta(pe_resource_t * rsc, xmlNode * xml);
rsc               185 include/pcmki/pcmki_sched_allocate.h void pcmk__clone_add_utilization(pe_resource_t *rsc, pe_resource_t *orig_rsc,
rsc               187 include/pcmki/pcmki_sched_allocate.h void pcmk__clone_shutdown_lock(pe_resource_t *rsc);
rsc               189 include/pcmki/pcmki_sched_allocate.h void pcmk__add_promotion_scores(pe_resource_t *rsc);
rsc               190 include/pcmki/pcmki_sched_allocate.h pe_node_t *pcmk__set_instance_roles(pe_resource_t *rsc,
rsc               192 include/pcmki/pcmki_sched_allocate.h void create_promotable_actions(pe_resource_t *rsc, pe_working_set_t *data_set);
rsc               193 include/pcmki/pcmki_sched_allocate.h void promote_demote_constraints(pe_resource_t *rsc, pe_working_set_t *data_set);
rsc               194 include/pcmki/pcmki_sched_allocate.h void promotable_constraints(pe_resource_t *rsc, pe_working_set_t *data_set);
rsc               221 include/pcmki/pcmki_sched_allocate.h     pe_resource_t * rsc, GList *children, notify_data_t **start_notify, notify_data_t **stop_notify,  pe_working_set_t * data_set);
rsc                32 include/pcmki/pcmki_sched_utils.h                                      pe_resource_t *rsc, enum rsc_role_e filter,
rsc                35 include/pcmki/pcmki_sched_utils.h pe_resource_t *find_compatible_child_by_node(pe_resource_t * local_child, pe_node_t * local_node, pe_resource_t * rsc,
rsc                40 include/pcmki/pcmki_sched_utils.h int copies_per_node(pe_resource_t * rsc);
rsc                83 include/pcmki/pcmki_scheduler.h                                const pe_resource_t *rsc)
rsc                85 include/pcmki/pcmki_scheduler.h     if (rsc == NULL) {
rsc                86 include/pcmki/pcmki_scheduler.h         rsc = colocation->primary;
rsc                92 include/pcmki/pcmki_scheduler.h     return colocation->influence || (rsc->running_on == NULL);
rsc               147 include/pcmki/pcmki_transition.h     gboolean(*rsc) (crm_graph_t * graph, crm_action_t * action);
rsc                23 lib/common/tests/operations/parse_op_key_test.c     char *rsc = NULL;
rsc                27 lib/common/tests/operations/parse_op_key_test.c     assert_true(parse_op_key("Fencing_monitor_60000", &rsc, &ty, &ms));
rsc                28 lib/common/tests/operations/parse_op_key_test.c     assert_string_equal(rsc, "Fencing");
rsc                31 lib/common/tests/operations/parse_op_key_test.c     free(rsc);
rsc                38 lib/common/tests/operations/parse_op_key_test.c     char *rsc = NULL;
rsc                42 lib/common/tests/operations/parse_op_key_test.c     assert_true(parse_op_key("ClusterIP:0_start_0", &rsc, &ty, &ms));
rsc                43 lib/common/tests/operations/parse_op_key_test.c     assert_string_equal(rsc, "ClusterIP:0");
rsc                46 lib/common/tests/operations/parse_op_key_test.c     free(rsc);
rsc                49 lib/common/tests/operations/parse_op_key_test.c     assert_true(parse_op_key("imagestoreclone:1_post_notify_stop_0", &rsc, &ty, &ms));
rsc                50 lib/common/tests/operations/parse_op_key_test.c     assert_string_equal(rsc, "imagestoreclone:1");
rsc                53 lib/common/tests/operations/parse_op_key_test.c     free(rsc);
rsc                60 lib/common/tests/operations/parse_op_key_test.c     char *rsc = NULL;
rsc                64 lib/common/tests/operations/parse_op_key_test.c     assert_true(parse_op_key("httpd-bundle-0_monitor_30000", &rsc, &ty, &ms));
rsc                65 lib/common/tests/operations/parse_op_key_test.c     assert_string_equal(rsc, "httpd-bundle-0");
rsc                68 lib/common/tests/operations/parse_op_key_test.c     free(rsc);
rsc                71 lib/common/tests/operations/parse_op_key_test.c     assert_true(parse_op_key("httpd-bundle-ip-192.168.122.132_start_0", &rsc, &ty, &ms));
rsc                72 lib/common/tests/operations/parse_op_key_test.c     assert_string_equal(rsc, "httpd-bundle-ip-192.168.122.132");
rsc                75 lib/common/tests/operations/parse_op_key_test.c     free(rsc);
rsc                82 lib/common/tests/operations/parse_op_key_test.c     char *rsc = NULL;
rsc                86 lib/common/tests/operations/parse_op_key_test.c     assert_true(parse_op_key("vm_migrate_from_0", &rsc, &ty, &ms));
rsc                87 lib/common/tests/operations/parse_op_key_test.c     assert_string_equal(rsc, "vm");
rsc                90 lib/common/tests/operations/parse_op_key_test.c     free(rsc);
rsc                93 lib/common/tests/operations/parse_op_key_test.c     assert_true(parse_op_key("vm_migrate_to_0", &rsc, &ty, &ms));
rsc                94 lib/common/tests/operations/parse_op_key_test.c     assert_string_equal(rsc, "vm");
rsc                97 lib/common/tests/operations/parse_op_key_test.c     free(rsc);
rsc               100 lib/common/tests/operations/parse_op_key_test.c     assert_true(parse_op_key("vm_idcc_devel_migrate_to_0", &rsc, &ty, &ms));
rsc               101 lib/common/tests/operations/parse_op_key_test.c     assert_string_equal(rsc, "vm_idcc_devel");
rsc               104 lib/common/tests/operations/parse_op_key_test.c     free(rsc);
rsc               111 lib/common/tests/operations/parse_op_key_test.c     char *rsc = NULL;
rsc               115 lib/common/tests/operations/parse_op_key_test.c     assert_true(parse_op_key("rsc_drbd_7788:1_post_notify_start_0", &rsc, &ty, &ms));
rsc               116 lib/common/tests/operations/parse_op_key_test.c     assert_string_equal(rsc, "rsc_drbd_7788:1");
rsc               119 lib/common/tests/operations/parse_op_key_test.c     free(rsc);
rsc               122 lib/common/tests/operations/parse_op_key_test.c     assert_true(parse_op_key("rabbitmq-bundle-clone_pre_notify_stop_0", &rsc, &ty, &ms));
rsc               123 lib/common/tests/operations/parse_op_key_test.c     assert_string_equal(rsc, "rabbitmq-bundle-clone");
rsc               126 lib/common/tests/operations/parse_op_key_test.c     free(rsc);
rsc               129 lib/common/tests/operations/parse_op_key_test.c     assert_true(parse_op_key("post_notify_start_0", &rsc, &ty, &ms));
rsc               130 lib/common/tests/operations/parse_op_key_test.c     assert_string_equal(rsc, "post_notify");
rsc               133 lib/common/tests/operations/parse_op_key_test.c     free(rsc);
rsc               152 lib/common/tests/operations/parse_op_key_test.c     char *rsc = NULL;
rsc               155 lib/common/tests/operations/parse_op_key_test.c     assert_true(parse_op_key("Fencing_monitor_60000", &rsc, NULL, &ms));
rsc               156 lib/common/tests/operations/parse_op_key_test.c     assert_string_equal(rsc, "Fencing");
rsc               158 lib/common/tests/operations/parse_op_key_test.c     free(rsc);
rsc               164 lib/common/tests/operations/parse_op_key_test.c     char *rsc = NULL;
rsc               167 lib/common/tests/operations/parse_op_key_test.c     assert_true(parse_op_key("Fencing_monitor_60000", &rsc, &ty, NULL));
rsc               168 lib/common/tests/operations/parse_op_key_test.c     assert_string_equal(rsc, "Fencing");
rsc               170 lib/common/tests/operations/parse_op_key_test.c     free(rsc);
rsc               177 lib/common/tests/operations/parse_op_key_test.c     char *rsc = NULL;
rsc               181 lib/common/tests/operations/parse_op_key_test.c     assert_false(parse_op_key("", &rsc, &ty, &ms));
rsc               182 lib/common/tests/operations/parse_op_key_test.c     assert_null(rsc);
rsc               186 lib/common/tests/operations/parse_op_key_test.c     assert_false(parse_op_key(NULL, &rsc, &ty, &ms));
rsc               187 lib/common/tests/operations/parse_op_key_test.c     assert_null(rsc);
rsc               195 lib/common/tests/operations/parse_op_key_test.c     char *rsc = NULL;
rsc               199 lib/common/tests/operations/parse_op_key_test.c     assert_false(parse_op_key("httpd-bundle-0", &rsc, &ty, &ms));
rsc               200 lib/common/tests/operations/parse_op_key_test.c     assert_null(rsc);
rsc               204 lib/common/tests/operations/parse_op_key_test.c     assert_false(parse_op_key("httpd-bundle-0_monitor", &rsc, &ty, &ms));
rsc               205 lib/common/tests/operations/parse_op_key_test.c     assert_null(rsc);
rsc               209 lib/common/tests/operations/parse_op_key_test.c     assert_false(parse_op_key("httpd-bundle-0_30000", &rsc, &ty, &ms));
rsc               210 lib/common/tests/operations/parse_op_key_test.c     assert_null(rsc);
rsc                29 lib/pacemaker/libpacemaker_private.h pe_action_t *pcmk__new_rsc_pseudo_action(pe_resource_t *rsc, const char *task,
rsc                33 lib/pacemaker/libpacemaker_private.h pe_action_t *pcmk__new_cancel_action(pe_resource_t *rsc, const char *name,
rsc                50 lib/pacemaker/libpacemaker_private.h bool pcmk__check_action_config(pe_resource_t *rsc, pe_node_t *node,
rsc                75 lib/pacemaker/libpacemaker_private.h void pcmk__order_vs_unfence(pe_resource_t *rsc, pe_node_t *node,
rsc                86 lib/pacemaker/libpacemaker_private.h bool pcmk__is_unfence_device(const pe_resource_t *rsc,
rsc               107 lib/pacemaker/libpacemaker_private.h                                  pe_resource_t **rsc, pe_tag_t **tag);
rsc               123 lib/pacemaker/libpacemaker_private.h pe__location_t *pcmk__new_location(const char *id, pe_resource_t *rsc,
rsc               132 lib/pacemaker/libpacemaker_private.h void pcmk__apply_location(pe__location_t *constraint, pe_resource_t *rsc);
rsc               235 lib/pacemaker/libpacemaker_private.h bool pcmk__rsc_corresponds_to_guest(pe_resource_t *rsc, pe_node_t *node);
rsc               241 lib/pacemaker/libpacemaker_private.h void pcmk__substitute_remote_addr(pe_resource_t *rsc, GHashTable *params,
rsc               251 lib/pacemaker/libpacemaker_private.h GList *pcmk__group_colocated_resources(pe_resource_t *rsc,
rsc               259 lib/pacemaker/libpacemaker_private.h void pcmk__output_bundle_actions(pe_resource_t *rsc);
rsc               311 lib/pacemaker/libpacemaker_private.h void pcmk__create_notifications(pe_resource_t *rsc, notify_data_t *n_data);
rsc               314 lib/pacemaker/libpacemaker_private.h notify_data_t *pcmk__clone_notif_pseudo_ops(pe_resource_t *rsc,
rsc               323 lib/pacemaker/libpacemaker_private.h void pcmk__order_notifs_after_fencing(pe_action_t *action, pe_resource_t *rsc,
rsc               333 lib/pacemaker/libpacemaker_private.h bool pcmk__rsc_agent_changed(pe_resource_t *rsc, pe_node_t *node,
rsc               340 lib/pacemaker/libpacemaker_private.h GList *pcmk__colocated_resources(pe_resource_t *rsc, pe_resource_t *orig_rsc,
rsc               344 lib/pacemaker/libpacemaker_private.h void pcmk__output_resource_actions(pe_resource_t *rsc);
rsc               347 lib/pacemaker/libpacemaker_private.h bool pcmk__assign_primitive(pe_resource_t *rsc, pe_node_t *chosen, bool force);
rsc               350 lib/pacemaker/libpacemaker_private.h bool pcmk__assign_resource(pe_resource_t *rsc, pe_node_t *node, bool force);
rsc               353 lib/pacemaker/libpacemaker_private.h void pcmk__unassign_resource(pe_resource_t *rsc);
rsc               356 lib/pacemaker/libpacemaker_private.h bool pcmk__threshold_reached(pe_resource_t *rsc, pe_node_t *node,
rsc               380 lib/pacemaker/libpacemaker_private.h                                  pe_resource_t *rsc);
rsc               384 lib/pacemaker/libpacemaker_private.h                                  pe_resource_t *rsc);
rsc               387 lib/pacemaker/libpacemaker_private.h void pcmk__ban_insufficient_capacity(pe_resource_t *rsc, pe_node_t **prefer,
rsc               391 lib/pacemaker/libpacemaker_private.h void pcmk__create_utilization_constraints(pe_resource_t *rsc,
rsc               152 lib/pacemaker/pcmk_graph_consumer.c     CRM_ASSERT(graph_fns->rsc != NULL);
rsc               243 lib/pacemaker/pcmk_graph_consumer.c             return graph_fns->rsc(graph, action)? pcmk_rc_ok : pcmk_rc_error;
rsc               160 lib/pacemaker/pcmk_graph_producer.c     } else if (action->rsc && action->rsc->is_remote_node
rsc               172 lib/pacemaker/pcmk_graph_producer.c             if (input->rsc && pcmk__str_eq(action->rsc->id, input->rsc->id, pcmk__str_casei)
rsc               180 lib/pacemaker/pcmk_graph_producer.c             add_node_to_xml_by_id(action->rsc->id, downed);
rsc               203 lib/pacemaker/pcmk_graph_producer.c         return pcmk__notify_key(action->rsc->clone_name, n_type, n_task);
rsc               206 lib/pacemaker/pcmk_graph_producer.c         return pcmk__op_key(action->rsc->clone_name, action->cancel_task,
rsc               209 lib/pacemaker/pcmk_graph_producer.c         return pcmk__op_key(action->rsc->clone_name, action->task, interval_ms);
rsc               254 lib/pacemaker/pcmk_graph_producer.c                        (long long) action->rsc->lock_time);
rsc               259 lib/pacemaker/pcmk_graph_producer.c     rsc_xml = create_xml_node(action_xml, crm_element_name(action->rsc->xml));
rsc               260 lib/pacemaker/pcmk_graph_producer.c     if (pcmk_is_set(action->rsc->flags, pe_rsc_orphan)
rsc               261 lib/pacemaker/pcmk_graph_producer.c         && (action->rsc->clone_name != NULL)) {
rsc               271 lib/pacemaker/pcmk_graph_producer.c                   action->rsc->id, action->rsc->clone_name);
rsc               272 lib/pacemaker/pcmk_graph_producer.c         crm_xml_add(rsc_xml, XML_ATTR_ID, action->rsc->clone_name);
rsc               273 lib/pacemaker/pcmk_graph_producer.c         crm_xml_add(rsc_xml, XML_ATTR_ID_LONG, action->rsc->id);
rsc               275 lib/pacemaker/pcmk_graph_producer.c     } else if (!pcmk_is_set(action->rsc->flags, pe_rsc_unique)) {
rsc               276 lib/pacemaker/pcmk_graph_producer.c         const char *xml_id = ID(action->rsc->xml);
rsc               279 lib/pacemaker/pcmk_graph_producer.c                   xml_id, action->rsc->id, action->rsc->clone_name);
rsc               295 lib/pacemaker/pcmk_graph_producer.c         if ((action->rsc->clone_name != NULL)
rsc               296 lib/pacemaker/pcmk_graph_producer.c             && !pcmk__str_eq(xml_id, action->rsc->clone_name,
rsc               298 lib/pacemaker/pcmk_graph_producer.c             crm_xml_add(rsc_xml, XML_ATTR_ID_LONG, action->rsc->clone_name);
rsc               300 lib/pacemaker/pcmk_graph_producer.c             crm_xml_add(rsc_xml, XML_ATTR_ID_LONG, action->rsc->id);
rsc               304 lib/pacemaker/pcmk_graph_producer.c         CRM_ASSERT(action->rsc->clone_name == NULL);
rsc               305 lib/pacemaker/pcmk_graph_producer.c         crm_xml_add(rsc_xml, XML_ATTR_ID, action->rsc->id);
rsc               310 lib/pacemaker/pcmk_graph_producer.c                     g_hash_table_lookup(action->rsc->meta, attr_list[lpc]));
rsc               335 lib/pacemaker/pcmk_graph_producer.c     if ((action->rsc != NULL) && (action->node != NULL)) {
rsc               337 lib/pacemaker/pcmk_graph_producer.c         GHashTable *params = pe_rsc_params(action->rsc, action->node,
rsc               338 lib/pacemaker/pcmk_graph_producer.c                                            action->rsc->cluster);
rsc               340 lib/pacemaker/pcmk_graph_producer.c         pcmk__substitute_remote_addr(action->rsc, params, action->rsc->cluster);
rsc               348 lib/pacemaker/pcmk_graph_producer.c             pe_get_versioned_attributes(versioned_parameters, action->rsc,
rsc               349 lib/pacemaker/pcmk_graph_producer.c                                         action->node, action->rsc->cluster);
rsc               357 lib/pacemaker/pcmk_graph_producer.c     } else if ((action->rsc != NULL) && (action->rsc->variant <= pe_native)) {
rsc               358 lib/pacemaker/pcmk_graph_producer.c         GHashTable *params = pe_rsc_params(action->rsc, NULL,
rsc               359 lib/pacemaker/pcmk_graph_producer.c                                            action->rsc->cluster);
rsc               364 lib/pacemaker/pcmk_graph_producer.c         if (xml_has_children(action->rsc->versioned_parameters)) {
rsc               365 lib/pacemaker/pcmk_graph_producer.c             add_node_copy(action_xml, action->rsc->versioned_parameters);
rsc               382 lib/pacemaker/pcmk_graph_producer.c     if (action->rsc != NULL) {
rsc               383 lib/pacemaker/pcmk_graph_producer.c         const char *value = g_hash_table_lookup(action->rsc->meta,
rsc               385 lib/pacemaker/pcmk_graph_producer.c         pe_resource_t *parent = action->rsc;
rsc               476 lib/pacemaker/pcmk_graph_producer.c     if ((action->rsc != NULL) && (action->rsc->clone_name != NULL)) {
rsc               504 lib/pacemaker/pcmk_graph_producer.c     if ((action->rsc != NULL)
rsc               551 lib/pacemaker/pcmk_graph_producer.c     if ((action->rsc != NULL)
rsc               552 lib/pacemaker/pcmk_graph_producer.c         && !pcmk_is_set(action->rsc->flags, pe_rsc_managed)
rsc               565 lib/pacemaker/pcmk_graph_producer.c                       action->uuid, action->id, action->rsc->id);
rsc               702 lib/pacemaker/pcmk_graph_producer.c         if (action->rsc && pcmk__str_eq(action->task, RSC_MIGRATE, pcmk__str_casei)) {
rsc               703 lib/pacemaker/pcmk_graph_producer.c             pe_node_t *allocated = action->rsc->allocated_to;
rsc               761 lib/pacemaker/pcmk_graph_producer.c     } else if (input->action->rsc
rsc               762 lib/pacemaker/pcmk_graph_producer.c                && input->action->rsc != action->rsc
rsc               763 lib/pacemaker/pcmk_graph_producer.c                && pcmk_is_set(input->action->rsc->flags, pe_rsc_failed)
rsc               764 lib/pacemaker/pcmk_graph_producer.c                && !pcmk_is_set(input->action->rsc->flags, pe_rsc_managed)
rsc               766 lib/pacemaker/pcmk_graph_producer.c                && action->rsc && pe_rsc_is_clone(action->rsc)) {
rsc               889 lib/pacemaker/pcmk_graph_producer.c     if (action->rsc != NULL) {
rsc               890 lib/pacemaker/pcmk_graph_producer.c         synapse_priority = action->rsc->priority;
rsc              1050 lib/pacemaker/pcmk_graph_producer.c         pe_resource_t *rsc = (pe_resource_t *) iter->data;
rsc              1052 lib/pacemaker/pcmk_graph_producer.c         pe_rsc_trace(rsc, "Processing actions for %s", rsc->id);
rsc              1053 lib/pacemaker/pcmk_graph_producer.c         rsc->cmds->expand(rsc, data_set);
rsc              1063 lib/pacemaker/pcmk_graph_producer.c         if ((action->rsc != NULL)
rsc              1066 lib/pacemaker/pcmk_graph_producer.c             && !pcmk_is_set(action->rsc->flags, pe_rsc_maintenance)
rsc              1078 lib/pacemaker/pcmk_graph_producer.c                          action->node->details->uname, action->rsc->id,
rsc              1079 lib/pacemaker/pcmk_graph_producer.c                          pcmk_is_set(action->rsc->flags, pe_rsc_managed)? " blocked" : " unmanaged",
rsc              1080 lib/pacemaker/pcmk_graph_producer.c                          pcmk_is_set(action->rsc->flags, pe_rsc_failed)? " failed" : "",
rsc               547 lib/pacemaker/pcmk_injections.c     pe_resource_t *rsc = NULL;
rsc               563 lib/pacemaker/pcmk_injections.c     rsc = pe_find_resource(data_set->resources, resource);
rsc               564 lib/pacemaker/pcmk_injections.c     if (rsc == NULL) {
rsc               569 lib/pacemaker/pcmk_injections.c     rclass = crm_element_value(rsc->xml, XML_AGENT_ATTR_CLASS);
rsc               570 lib/pacemaker/pcmk_injections.c     rtype = crm_element_value(rsc->xml, XML_ATTR_TYPE);
rsc               571 lib/pacemaker/pcmk_injections.c     rprovider = crm_element_value(rsc->xml, XML_AGENT_ATTR_PROVIDER);
rsc                23 lib/pacemaker/pcmk_output.c colocations_header(pe_resource_t *rsc, pcmk__colocation_t *cons,
rsc                31 lib/pacemaker/pcmk_output.c                                        rsc->id, score, dependents ? "needs" : "with",
rsc                35 lib/pacemaker/pcmk_output.c                                    rsc->id, score, cons->id);
rsc                43 lib/pacemaker/pcmk_output.c colocations_xml_node(pcmk__output_t *out, pe_resource_t *rsc,
rsc                74 lib/pacemaker/pcmk_output.c do_locations_list_xml(pcmk__output_t *out, pe_resource_t *rsc, bool add_header)
rsc                77 lib/pacemaker/pcmk_output.c     GList *list = rsc->rsc_location;
rsc                95 lib/pacemaker/pcmk_output.c                                          "rsc", rsc->id,
rsc               117 lib/pacemaker/pcmk_output.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc               140 lib/pacemaker/pcmk_output.c     len = strlen(rsc->id);
rsc               145 lib/pacemaker/pcmk_output.c     if ((rsc->role > RSC_ROLE_STARTED)
rsc               146 lib/pacemaker/pcmk_output.c         || (rsc->next_role > RSC_ROLE_UNPROMOTED)) {
rsc               154 lib/pacemaker/pcmk_output.c     if(rsc->role == rsc->next_role) {
rsc               160 lib/pacemaker/pcmk_output.c         details = crm_strdup_printf("%s -> %s %s", role2text(rsc->role), role2text(rsc->next_role), destination->details->uname);
rsc               168 lib/pacemaker/pcmk_output.c         details = crm_strdup_printf("%s %s", role2text(rsc->role), origin->details->uname);
rsc               176 lib/pacemaker/pcmk_output.c         details = crm_strdup_printf("%s %s", role2text(rsc->role), origin->details->uname);
rsc               184 lib/pacemaker/pcmk_output.c         details = crm_strdup_printf("%s -> %s %s", origin->details->uname, destination->details->uname, role2text(rsc->role));
rsc               192 lib/pacemaker/pcmk_output.c         details = crm_strdup_printf("%s -> %s %s", role2text(rsc->role), role2text(rsc->next_role), origin->details->uname);
rsc               196 lib/pacemaker/pcmk_output.c         details = crm_strdup_printf("%s %s -> %s %s", role2text(rsc->role), origin->details->uname, role2text(rsc->next_role), destination->details->uname);
rsc               216 lib/pacemaker/pcmk_output.c                    rsc->id, detail_width, details, reason ? "  " : "", reason ? reason : "");
rsc               230 lib/pacemaker/pcmk_output.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc               250 lib/pacemaker/pcmk_output.c     if ((rsc->role > RSC_ROLE_STARTED)
rsc               251 lib/pacemaker/pcmk_output.c         || (rsc->next_role > RSC_ROLE_UNPROMOTED)) {
rsc               259 lib/pacemaker/pcmk_output.c     if(rsc->role == rsc->next_role) {
rsc               266 lib/pacemaker/pcmk_output.c                                        "resource", rsc->id,
rsc               273 lib/pacemaker/pcmk_output.c                            "role", role2text(rsc->role),
rsc               274 lib/pacemaker/pcmk_output.c                            "next-role", role2text(rsc->next_role),
rsc               285 lib/pacemaker/pcmk_output.c                            "role", role2text(rsc->role),
rsc               296 lib/pacemaker/pcmk_output.c                            "role", role2text(rsc->role),
rsc               309 lib/pacemaker/pcmk_output.c                            "role", role2text(rsc->role),
rsc               322 lib/pacemaker/pcmk_output.c                            "role", role2text(rsc->role),
rsc               323 lib/pacemaker/pcmk_output.c                            "next-role", role2text(rsc->next_role),
rsc               330 lib/pacemaker/pcmk_output.c                            "role", role2text(rsc->role),
rsc               332 lib/pacemaker/pcmk_output.c                            "next-role", role2text(rsc->next_role),
rsc               357 lib/pacemaker/pcmk_output.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc               362 lib/pacemaker/pcmk_output.c     if (pcmk_is_set(rsc->flags, pe_rsc_allocating)) {
rsc               366 lib/pacemaker/pcmk_output.c     pe__set_resource_flags(rsc, pe_rsc_allocating);
rsc               367 lib/pacemaker/pcmk_output.c     for (GList *lpc = rsc->rsc_cons; lpc != NULL; lpc = lpc->next) {
rsc               371 lib/pacemaker/pcmk_output.c         PCMK__OUTPUT_LIST_HEADER(out, FALSE, rc, "Resources %s is colocated with", rsc->id);
rsc               402 lib/pacemaker/pcmk_output.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc               407 lib/pacemaker/pcmk_output.c     if (pcmk_is_set(rsc->flags, pe_rsc_allocating)) {
rsc               411 lib/pacemaker/pcmk_output.c     pe__set_resource_flags(rsc, pe_rsc_allocating);
rsc               412 lib/pacemaker/pcmk_output.c     for (GList *lpc = rsc->rsc_cons; lpc != NULL; lpc = lpc->next) {
rsc               435 lib/pacemaker/pcmk_output.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc               440 lib/pacemaker/pcmk_output.c     if (pcmk_is_set(rsc->flags, pe_rsc_allocating)) {
rsc               444 lib/pacemaker/pcmk_output.c     pe__set_resource_flags(rsc, pe_rsc_allocating);
rsc               445 lib/pacemaker/pcmk_output.c     for (GList *lpc = rsc->rsc_cons_lhs; lpc != NULL; lpc = lpc->next) {
rsc               449 lib/pacemaker/pcmk_output.c         PCMK__OUTPUT_LIST_HEADER(out, FALSE, rc, "Resources colocated with %s", rsc->id);
rsc               480 lib/pacemaker/pcmk_output.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc               485 lib/pacemaker/pcmk_output.c     if (pcmk_is_set(rsc->flags, pe_rsc_allocating)) {
rsc               489 lib/pacemaker/pcmk_output.c     pe__set_resource_flags(rsc, pe_rsc_allocating);
rsc               490 lib/pacemaker/pcmk_output.c     for (GList *lpc = rsc->rsc_cons_lhs; lpc != NULL; lpc = lpc->next) {
rsc               513 lib/pacemaker/pcmk_output.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc               516 lib/pacemaker/pcmk_output.c     GList *list = rsc->rsc_location;
rsc               530 lib/pacemaker/pcmk_output.c                            node->details->uname, score, cons->id, rsc->id);
rsc               542 lib/pacemaker/pcmk_output.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc               543 lib/pacemaker/pcmk_output.c     return do_locations_list_xml(out, rsc, true);
rsc               549 lib/pacemaker/pcmk_output.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc               556 lib/pacemaker/pcmk_output.c     rsc = uber_parent(rsc);
rsc               558 lib/pacemaker/pcmk_output.c     out->message(out, "locations-list", rsc);
rsc               561 lib/pacemaker/pcmk_output.c     out->message(out, "rscs-colocated-with-list", rsc, recursive);
rsc               564 lib/pacemaker/pcmk_output.c     out->message(out, "rsc-is-colocated-with-list", rsc, recursive);
rsc               571 lib/pacemaker/pcmk_output.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc               578 lib/pacemaker/pcmk_output.c     rsc = uber_parent(rsc);
rsc               581 lib/pacemaker/pcmk_output.c     do_locations_list_xml(out, rsc, false);
rsc               584 lib/pacemaker/pcmk_output.c     out->message(out, "rscs-colocated-with-list", rsc, recursive);
rsc               587 lib/pacemaker/pcmk_output.c     out->message(out, "rsc-is-colocated-with-list", rsc, recursive);
rsc               765 lib/pacemaker/pcmk_output.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc               784 lib/pacemaker/pcmk_output.c     if ((rsc != NULL) && (rsc->id != NULL)) {
rsc               785 lib/pacemaker/pcmk_output.c         rsc_desc = rsc->id;
rsc               835 lib/pacemaker/pcmk_output.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc               845 lib/pacemaker/pcmk_output.c                                        "resource", crm_str(rsc->id),
rsc               867 lib/pacemaker/pcmk_output.c                     __func__, lineno, rsc->id);                         \
rsc               880 lib/pacemaker/pcmk_output.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc               895 lib/pacemaker/pcmk_output.c     if (!pcmk_is_set(rsc->flags, pe_rsc_managed)
rsc               897 lib/pacemaker/pcmk_output.c         pe_rsc_info(rsc, "Leave   %s\t(%s%s)",
rsc               898 lib/pacemaker/pcmk_output.c                     rsc->id, role2text(rsc->role),
rsc               899 lib/pacemaker/pcmk_output.c                     !pcmk_is_set(rsc->flags, pe_rsc_managed)? " unmanaged" : "");
rsc               906 lib/pacemaker/pcmk_output.c     possible_matches = pe__resource_actions(rsc, next, RSC_START, FALSE);
rsc               917 lib/pacemaker/pcmk_output.c     possible_matches = pe__resource_actions(rsc, start_node, RSC_STOP, FALSE);
rsc               921 lib/pacemaker/pcmk_output.c     } else if (pcmk_is_set(rsc->flags, pe_rsc_stop_unexpected)) {
rsc               926 lib/pacemaker/pcmk_output.c         possible_matches = pe__resource_actions(rsc, NULL, RSC_STOP, FALSE);
rsc               933 lib/pacemaker/pcmk_output.c     possible_matches = pe__resource_actions(rsc, next, RSC_PROMOTE, FALSE);
rsc               939 lib/pacemaker/pcmk_output.c     possible_matches = pe__resource_actions(rsc, next, RSC_DEMOTE, FALSE);
rsc               945 lib/pacemaker/pcmk_output.c     if (rsc->role == rsc->next_role) {
rsc               950 lib/pacemaker/pcmk_output.c         possible_matches = pe__resource_actions(rsc, next, RSC_MIGRATED, FALSE);
rsc               957 lib/pacemaker/pcmk_output.c             rc = out->message(out, "rsc-action-item", "Migrate", rsc, current,
rsc               960 lib/pacemaker/pcmk_output.c         } else if (pcmk_is_set(rsc->flags, pe_rsc_reload)) {
rsc               961 lib/pacemaker/pcmk_output.c             rc = out->message(out, "rsc-action-item", "Reload", rsc, current,
rsc               968 lib/pacemaker/pcmk_output.c                 rc = out->message(out, "rsc-action-item", "Re-promote", rsc,
rsc               971 lib/pacemaker/pcmk_output.c                 pe_rsc_info(rsc, "Leave   %s\t(%s %s)", rsc->id,
rsc               972 lib/pacemaker/pcmk_output.c                             role2text(rsc->role), next->details->uname);
rsc               976 lib/pacemaker/pcmk_output.c             rc = out->message(out, "rsc-action-item", "Stop", rsc, current,
rsc               981 lib/pacemaker/pcmk_output.c             rc = out->message(out, "rsc-action-item", pcmk_is_set(rsc->flags, pe_rsc_failed)? "Recover" : "Move",
rsc               982 lib/pacemaker/pcmk_output.c                               rsc, current, next, stop, NULL);
rsc               984 lib/pacemaker/pcmk_output.c         } else if (pcmk_is_set(rsc->flags, pe_rsc_failed)) {
rsc               985 lib/pacemaker/pcmk_output.c             rc = out->message(out, "rsc-action-item", "Recover", rsc, current,
rsc               990 lib/pacemaker/pcmk_output.c             rc = out->message(out, "rsc-action-item", "Restart", rsc, current,
rsc              1000 lib/pacemaker/pcmk_output.c        && (rsc->next_role == RSC_ROLE_STOPPED
rsc              1005 lib/pacemaker/pcmk_output.c         key = stop_key(rsc);
rsc              1006 lib/pacemaker/pcmk_output.c         for (gIter = rsc->running_on; gIter != NULL; gIter = gIter->next) {
rsc              1010 lib/pacemaker/pcmk_output.c             possible_matches = find_actions(rsc->actions, key, node);
rsc              1020 lib/pacemaker/pcmk_output.c             if (out->message(out, "rsc-action-item", "Stop", rsc, node, NULL,
rsc              1029 lib/pacemaker/pcmk_output.c                && pcmk_all_flags_set(rsc->flags, pe_rsc_failed|pe_rsc_stop)) {
rsc              1031 lib/pacemaker/pcmk_output.c         rc = out->message(out, "rsc-action-item", "Recover", rsc, current,
rsc              1036 lib/pacemaker/pcmk_output.c         rc = out->message(out, "rsc-action-item", "Move", rsc, current, next,
rsc              1040 lib/pacemaker/pcmk_output.c     } else if (pcmk_is_set(rsc->flags, pe_rsc_reload)) {
rsc              1041 lib/pacemaker/pcmk_output.c         rc = out->message(out, "rsc-action-item", "Reload", rsc, current, next,
rsc              1045 lib/pacemaker/pcmk_output.c         rc = out->message(out, "rsc-action-item", "Restart", rsc, current,
rsc              1049 lib/pacemaker/pcmk_output.c     } else if (rsc->role == RSC_ROLE_PROMOTED) {
rsc              1051 lib/pacemaker/pcmk_output.c         rc = out->message(out, "rsc-action-item", "Demote", rsc, current,
rsc              1054 lib/pacemaker/pcmk_output.c     } else if (rsc->next_role == RSC_ROLE_PROMOTED) {
rsc              1056 lib/pacemaker/pcmk_output.c         rc = out->message(out, "rsc-action-item", "Promote", rsc, current,
rsc              1059 lib/pacemaker/pcmk_output.c     } else if (rsc->role == RSC_ROLE_STOPPED && rsc->next_role > RSC_ROLE_STOPPED) {
rsc              1060 lib/pacemaker/pcmk_output.c         rc = out->message(out, "rsc-action-item", "Start", rsc, current, next,
rsc              1115 lib/pacemaker/pcmk_output.c     xmlNodePtr rsc = va_arg(args, xmlNodePtr);
rsc              1121 lib/pacemaker/pcmk_output.c     if(rsc) {
rsc              1122 lib/pacemaker/pcmk_output.c         out->list_item(out, NULL, "Cluster action:  %s for %s on %s", task, ID(rsc), node);
rsc              1136 lib/pacemaker/pcmk_output.c     xmlNodePtr rsc = va_arg(args, xmlNodePtr);
rsc              1149 lib/pacemaker/pcmk_output.c     if (rsc) {
rsc              1150 lib/pacemaker/pcmk_output.c         crm_xml_add(xml_node, "id", ID(rsc));
rsc              1442 lib/pacemaker/pcmk_output.c     const char *rsc = va_arg(args, const char *);
rsc              1453 lib/pacemaker/pcmk_output.c                        rsc, operation, interval_ms, node);
rsc              1456 lib/pacemaker/pcmk_output.c                        rsc, operation, node);
rsc              1466 lib/pacemaker/pcmk_output.c     const char *rsc = va_arg(args, const char *);
rsc              1478 lib/pacemaker/pcmk_output.c                                             "resource", rsc,
rsc                31 lib/pacemaker/pcmk_resource.c best_op(pe_resource_t *rsc, pe_node_t *node, pe_working_set_t *data_set)
rsc                38 lib/pacemaker/pcmk_resource.c     xpath = crm_strdup_printf(XPATH_OP_HISTORY, node->details->uname, rsc->id);
rsc                84 lib/pacemaker/pcmk_resource.c pcmk__resource_digests(pcmk__output_t *out, pe_resource_t *rsc,
rsc                94 lib/pacemaker/pcmk_resource.c     if ((out == NULL) || (rsc == NULL) || (node == NULL) || (data_set == NULL)) {
rsc                97 lib/pacemaker/pcmk_resource.c     if (rsc->variant != pe_native) {
rsc               103 lib/pacemaker/pcmk_resource.c     xml_op = best_op(rsc, node, data_set);
rsc               116 lib/pacemaker/pcmk_resource.c     digests = pe__calculate_digests(rsc, task, &interval_ms, node, xml_op,
rsc               118 lib/pacemaker/pcmk_resource.c     rc = out->message(out, "digests", rsc, node, task, interval_ms, digests);
rsc               125 lib/pacemaker/pcmk_resource.c pcmk_resource_digests(xmlNodePtr *xml, pe_resource_t *rsc,
rsc               137 lib/pacemaker/pcmk_resource.c     rc = pcmk__resource_digests(out, rsc, node, overrides, data_set);
rsc                20 lib/pacemaker/pcmk_sched_actions.c extern gboolean DeleteRsc(pe_resource_t *rsc, pe_node_t *node,
rsc                40 lib/pacemaker/pcmk_sched_actions.c     if (action->rsc == NULL) {
rsc                48 lib/pacemaker/pcmk_sched_actions.c     flags = action->rsc->cmds->action_flags(action, NULL);
rsc                49 lib/pacemaker/pcmk_sched_actions.c     if ((node == NULL) || !pe_rsc_is_clone(action->rsc)) {
rsc                59 lib/pacemaker/pcmk_sched_actions.c     flags = action->rsc->cmds->action_flags(action, node);
rsc                70 lib/pacemaker/pcmk_sched_actions.c         pe__set_raw_action_flags(flags, action->rsc->id,
rsc               191 lib/pacemaker/pcmk_sched_actions.c     pe_resource_t *rsc = action->rsc;
rsc               193 lib/pacemaker/pcmk_sched_actions.c     if ((rsc != NULL) && (rsc->variant >= pe_group) && (action->uuid != NULL)) {
rsc               194 lib/pacemaker/pcmk_sched_actions.c         char *uuid = action_uuid_for_ordering(action->uuid, rsc);
rsc               196 lib/pacemaker/pcmk_sched_actions.c         result = find_first_action(rsc->actions, uuid, NULL, NULL);
rsc               199 lib/pacemaker/pcmk_sched_actions.c                      "remapped action", action->uuid, uuid, rsc->id);
rsc               245 lib/pacemaker/pcmk_sched_actions.c         pe_rsc_trace(then->rsc,
rsc               252 lib/pacemaker/pcmk_sched_actions.c         if (then->rsc != NULL) {
rsc               253 lib/pacemaker/pcmk_sched_actions.c             changed |= then->rsc->cmds->update_actions(first, then, node,
rsc               263 lib/pacemaker/pcmk_sched_actions.c         pe_rsc_trace(then->rsc, "%s then %s: %s after pe_order_implies_then",
rsc               268 lib/pacemaker/pcmk_sched_actions.c     if (pcmk_is_set(order->type, pe_order_restart) && (then->rsc != NULL)) {
rsc               271 lib/pacemaker/pcmk_sched_actions.c         changed |= then->rsc->cmds->update_actions(first, then, node,
rsc               274 lib/pacemaker/pcmk_sched_actions.c         pe_rsc_trace(then->rsc, "%s then %s: %s after pe_order_restart",
rsc               280 lib/pacemaker/pcmk_sched_actions.c         if (first->rsc != NULL) {
rsc               281 lib/pacemaker/pcmk_sched_actions.c             changed |= first->rsc->cmds->update_actions(first, then, node,
rsc               291 lib/pacemaker/pcmk_sched_actions.c         pe_rsc_trace(then->rsc, "%s then %s: %s after pe_order_implies_first",
rsc               297 lib/pacemaker/pcmk_sched_actions.c         if (then->rsc != NULL) {
rsc               298 lib/pacemaker/pcmk_sched_actions.c             changed |= then->rsc->cmds->update_actions(first, then, node,
rsc               304 lib/pacemaker/pcmk_sched_actions.c         pe_rsc_trace(then->rsc,
rsc               311 lib/pacemaker/pcmk_sched_actions.c         if (then->rsc != NULL) {
rsc               312 lib/pacemaker/pcmk_sched_actions.c             changed |= then->rsc->cmds->update_actions(first, then, node,
rsc               332 lib/pacemaker/pcmk_sched_actions.c         pe_rsc_trace(then->rsc, "%s then %s: %s after pe_order_one_or_more",
rsc               337 lib/pacemaker/pcmk_sched_actions.c     if (pcmk_is_set(order->type, pe_order_probe) && (then->rsc != NULL)) {
rsc               339 lib/pacemaker/pcmk_sched_actions.c             && (first->rsc->running_on != NULL)) {
rsc               341 lib/pacemaker/pcmk_sched_actions.c             pe_rsc_trace(then->rsc,
rsc               346 lib/pacemaker/pcmk_sched_actions.c             changed |= then->rsc->cmds->update_actions(first, then, node,
rsc               352 lib/pacemaker/pcmk_sched_actions.c         pe_rsc_trace(then->rsc, "%s then %s: %s after pe_order_probe",
rsc               358 lib/pacemaker/pcmk_sched_actions.c         if (then->rsc != NULL) {
rsc               359 lib/pacemaker/pcmk_sched_actions.c             changed |= then->rsc->cmds->update_actions(first, then, node,
rsc               371 lib/pacemaker/pcmk_sched_actions.c         pe_rsc_trace(then->rsc, "%s then %s: %s after pe_order_runnable_left",
rsc               377 lib/pacemaker/pcmk_sched_actions.c         if (then->rsc != NULL) {
rsc               378 lib/pacemaker/pcmk_sched_actions.c             changed |= then->rsc->cmds->update_actions(first, then, node,
rsc               382 lib/pacemaker/pcmk_sched_actions.c         pe_rsc_trace(then->rsc, "%s then %s: %s after "
rsc               389 lib/pacemaker/pcmk_sched_actions.c         if (then->rsc != NULL) {
rsc               390 lib/pacemaker/pcmk_sched_actions.c             changed |= then->rsc->cmds->update_actions(first, then, node,
rsc               396 lib/pacemaker/pcmk_sched_actions.c         pe_rsc_trace(then->rsc, "%s then %s: %s after pe_order_pseudo_left",
rsc               402 lib/pacemaker/pcmk_sched_actions.c         if (then->rsc != NULL) {
rsc               403 lib/pacemaker/pcmk_sched_actions.c             changed |= then->rsc->cmds->update_actions(first, then, node,
rsc               409 lib/pacemaker/pcmk_sched_actions.c         pe_rsc_trace(then->rsc, "%s then %s: %s after pe_order_optional",
rsc               415 lib/pacemaker/pcmk_sched_actions.c         if (then->rsc != NULL) {
rsc               416 lib/pacemaker/pcmk_sched_actions.c             changed |= then->rsc->cmds->update_actions(first, then, node,
rsc               422 lib/pacemaker/pcmk_sched_actions.c         pe_rsc_trace(then->rsc, "%s then %s: %s after pe_order_asymmetrical",
rsc               431 lib/pacemaker/pcmk_sched_actions.c         pe_rsc_trace(then->rsc, "%s will be in graph because %s is required",
rsc               440 lib/pacemaker/pcmk_sched_actions.c         pe_rsc_trace(then->rsc, "%s will be in graph because %s is required",
rsc               449 lib/pacemaker/pcmk_sched_actions.c         && (first->rsc != NULL)
rsc               450 lib/pacemaker/pcmk_sched_actions.c         && !pcmk_is_set(first->rsc->flags, pe_rsc_managed)
rsc               451 lib/pacemaker/pcmk_sched_actions.c         && pcmk_is_set(first->rsc->flags, pe_rsc_block)
rsc               459 lib/pacemaker/pcmk_sched_actions.c         pe_rsc_trace(then->rsc, "%s then %s: %s after checking whether first "
rsc               496 lib/pacemaker/pcmk_sched_actions.c     pe_rsc_trace(then->rsc, "Updating %s %s (%s %s) on %s",
rsc               529 lib/pacemaker/pcmk_sched_actions.c         if ((first->rsc != NULL)
rsc               530 lib/pacemaker/pcmk_sched_actions.c             && (first->rsc->variant == pe_group)
rsc               533 lib/pacemaker/pcmk_sched_actions.c             first_node = first->rsc->fns->location(first->rsc, NULL, FALSE);
rsc               535 lib/pacemaker/pcmk_sched_actions.c                 pe_rsc_trace(first->rsc, "Found node %s for 'first' %s",
rsc               540 lib/pacemaker/pcmk_sched_actions.c         if ((then->rsc != NULL)
rsc               541 lib/pacemaker/pcmk_sched_actions.c             && (then->rsc->variant == pe_group)
rsc               544 lib/pacemaker/pcmk_sched_actions.c             then_node = then->rsc->fns->location(then->rsc, NULL, FALSE);
rsc               546 lib/pacemaker/pcmk_sched_actions.c                 pe_rsc_trace(then->rsc, "Found node %s for 'then' %s",
rsc               556 lib/pacemaker/pcmk_sched_actions.c             pe_rsc_trace(then->rsc,
rsc               566 lib/pacemaker/pcmk_sched_actions.c         if ((first->rsc != NULL)
rsc               575 lib/pacemaker/pcmk_sched_actions.c                 pe__clear_resource_flags(first->rsc, pe_rsc_reload);
rsc               579 lib/pacemaker/pcmk_sched_actions.c         if ((first->rsc != NULL) && (then->rsc != NULL)
rsc               580 lib/pacemaker/pcmk_sched_actions.c             && (first->rsc != then->rsc) && !is_parent(then->rsc, first->rsc)) {
rsc               584 lib/pacemaker/pcmk_sched_actions.c             pe_rsc_trace(then->rsc, "Ordering %s after %s instead of %s",
rsc               588 lib/pacemaker/pcmk_sched_actions.c         pe_rsc_trace(then->rsc,
rsc               619 lib/pacemaker/pcmk_sched_actions.c             pe_rsc_trace(then->rsc,
rsc               728 lib/pacemaker/pcmk_sched_actions.c                       (action->rsc? action->rsc->id : "<none>"),
rsc               771 lib/pacemaker/pcmk_sched_actions.c pcmk__new_rsc_pseudo_action(pe_resource_t *rsc, const char *task,
rsc               776 lib/pacemaker/pcmk_sched_actions.c     CRM_ASSERT((rsc != NULL) && (task != NULL));
rsc               778 lib/pacemaker/pcmk_sched_actions.c     action = custom_action(rsc, pcmk__op_key(rsc->id, task, 0), task, NULL,
rsc               779 lib/pacemaker/pcmk_sched_actions.c                            optional, TRUE, rsc->cluster);
rsc               800 lib/pacemaker/pcmk_sched_actions.c pcmk__new_cancel_action(pe_resource_t *rsc, const char *task, guint interval_ms,
rsc               807 lib/pacemaker/pcmk_sched_actions.c     CRM_ASSERT((rsc != NULL) && (task != NULL) && (node != NULL));
rsc               810 lib/pacemaker/pcmk_sched_actions.c     key = pcmk__op_key(rsc->id, task, interval_ms);
rsc               812 lib/pacemaker/pcmk_sched_actions.c     cancel_op = custom_action(rsc, key, RSC_CANCEL, node, FALSE, TRUE,
rsc               813 lib/pacemaker/pcmk_sched_actions.c                               rsc->cluster);
rsc              1077 lib/pacemaker/pcmk_sched_actions.c     if ((action == NULL) || (action->rsc == NULL)
rsc              1078 lib/pacemaker/pcmk_sched_actions.c         || (action->rsc->lock_node == NULL) || (action->node == NULL)
rsc              1079 lib/pacemaker/pcmk_sched_actions.c         || (action->node->details != action->rsc->lock_node->details)) {
rsc              1177 lib/pacemaker/pcmk_sched_actions.c         if (action->rsc != NULL) {
rsc              1212 lib/pacemaker/pcmk_sched_actions.c         pe_resource_t *rsc = (pe_resource_t *) iter->data;
rsc              1214 lib/pacemaker/pcmk_sched_actions.c         rsc->cmds->output_actions(rsc);
rsc              1230 lib/pacemaker/pcmk_sched_actions.c schedule_cancel(pe_resource_t *rsc, const char *call_id, const char *task,
rsc              1235 lib/pacemaker/pcmk_sched_actions.c     CRM_CHECK((rsc != NULL) && (task != NULL)
rsc              1240 lib/pacemaker/pcmk_sched_actions.c              pcmk__readable_interval(interval_ms), task, rsc->id,
rsc              1242 lib/pacemaker/pcmk_sched_actions.c     cancel = pcmk__new_cancel_action(rsc, task, interval_ms, node);
rsc              1246 lib/pacemaker/pcmk_sched_actions.c     pcmk__new_ordering(rsc, stop_key(rsc), NULL, rsc, NULL, cancel,
rsc              1247 lib/pacemaker/pcmk_sched_actions.c                        pe_order_optional, rsc->cluster);
rsc              1261 lib/pacemaker/pcmk_sched_actions.c action_in_config(pe_resource_t *rsc, const char *task, guint interval_ms)
rsc              1263 lib/pacemaker/pcmk_sched_actions.c     char *key = pcmk__op_key(rsc->id, task, interval_ms);
rsc              1264 lib/pacemaker/pcmk_sched_actions.c     bool config = (find_rsc_op_entry(rsc, key) != NULL);
rsc              1337 lib/pacemaker/pcmk_sched_actions.c force_restart(pe_resource_t *rsc, const char *task, guint interval_ms,
rsc              1340 lib/pacemaker/pcmk_sched_actions.c     char *key = pcmk__op_key(rsc->id, task, interval_ms);
rsc              1341 lib/pacemaker/pcmk_sched_actions.c     pe_action_t *required = custom_action(rsc, key, task, NULL, FALSE, TRUE,
rsc              1342 lib/pacemaker/pcmk_sched_actions.c                                           rsc->cluster);
rsc              1345 lib/pacemaker/pcmk_sched_actions.c     trigger_unfencing(rsc, node, "Device parameters changed", NULL,
rsc              1346 lib/pacemaker/pcmk_sched_actions.c                       rsc->cluster);
rsc              1359 lib/pacemaker/pcmk_sched_actions.c reschedule_recurring(pe_resource_t *rsc, const char *task, guint interval_ms,
rsc              1364 lib/pacemaker/pcmk_sched_actions.c     trigger_unfencing(rsc, node, "Device parameters changed (reschedule)",
rsc              1365 lib/pacemaker/pcmk_sched_actions.c                       NULL, rsc->cluster);
rsc              1366 lib/pacemaker/pcmk_sched_actions.c     op = custom_action(rsc, pcmk__op_key(rsc->id, task, interval_ms),
rsc              1367 lib/pacemaker/pcmk_sched_actions.c                        task, node, TRUE, TRUE, rsc->cluster);
rsc              1379 lib/pacemaker/pcmk_sched_actions.c schedule_reload(pe_resource_t *rsc, pe_node_t *node)
rsc              1384 lib/pacemaker/pcmk_sched_actions.c     if (rsc->variant > pe_native) {
rsc              1385 lib/pacemaker/pcmk_sched_actions.c         g_list_foreach(rsc->children, (GFunc) schedule_reload, node);
rsc              1391 lib/pacemaker/pcmk_sched_actions.c         || !pcmk_is_set(rsc->flags, pe_rsc_managed)
rsc              1392 lib/pacemaker/pcmk_sched_actions.c         || pcmk_is_set(rsc->flags, pe_rsc_failed)) {
rsc              1393 lib/pacemaker/pcmk_sched_actions.c         pe_rsc_trace(rsc, "Skip reload of %s:%s%s %s",
rsc              1394 lib/pacemaker/pcmk_sched_actions.c                      rsc->id,
rsc              1395 lib/pacemaker/pcmk_sched_actions.c                      pcmk_is_set(rsc->flags, pe_rsc_managed)? "" : " unmanaged",
rsc              1396 lib/pacemaker/pcmk_sched_actions.c                      pcmk_is_set(rsc->flags, pe_rsc_failed)? " failed" : "",
rsc              1404 lib/pacemaker/pcmk_sched_actions.c     if (pcmk_is_set(rsc->flags, pe_rsc_start_pending)) {
rsc              1405 lib/pacemaker/pcmk_sched_actions.c         pe_rsc_trace(rsc, "%s: preventing agent reload because start pending",
rsc              1406 lib/pacemaker/pcmk_sched_actions.c                      rsc->id);
rsc              1407 lib/pacemaker/pcmk_sched_actions.c         custom_action(rsc, stop_key(rsc), CRMD_ACTION_STOP, node, FALSE, TRUE,
rsc              1408 lib/pacemaker/pcmk_sched_actions.c                       rsc->cluster);
rsc              1413 lib/pacemaker/pcmk_sched_actions.c     pe__set_resource_flags(rsc, pe_rsc_reload);
rsc              1414 lib/pacemaker/pcmk_sched_actions.c     reload = custom_action(rsc, reload_key(rsc), CRMD_ACTION_RELOAD_AGENT, node,
rsc              1415 lib/pacemaker/pcmk_sched_actions.c                            FALSE, TRUE, rsc->cluster);
rsc              1419 lib/pacemaker/pcmk_sched_actions.c     pcmk__new_ordering(NULL, NULL, reload, rsc, stop_key(rsc), NULL,
rsc              1421 lib/pacemaker/pcmk_sched_actions.c                        rsc->cluster);
rsc              1422 lib/pacemaker/pcmk_sched_actions.c     pcmk__new_ordering(NULL, NULL, reload, rsc, demote_key(rsc), NULL,
rsc              1424 lib/pacemaker/pcmk_sched_actions.c                        rsc->cluster);
rsc              1442 lib/pacemaker/pcmk_sched_actions.c pcmk__check_action_config(pe_resource_t *rsc, pe_node_t *node, xmlNode *xml_op)
rsc              1448 lib/pacemaker/pcmk_sched_actions.c     CRM_CHECK((rsc != NULL) && (node != NULL) && (xml_op != NULL),
rsc              1458 lib/pacemaker/pcmk_sched_actions.c         if (action_in_config(rsc, task, interval_ms)) {
rsc              1459 lib/pacemaker/pcmk_sched_actions.c             pe_rsc_trace(rsc, "%s-interval %s for %s on %s is in configuration",
rsc              1460 lib/pacemaker/pcmk_sched_actions.c                          pcmk__readable_interval(interval_ms), task, rsc->id,
rsc              1462 lib/pacemaker/pcmk_sched_actions.c         } else if (pcmk_is_set(rsc->cluster->flags,
rsc              1464 lib/pacemaker/pcmk_sched_actions.c             schedule_cancel(rsc,
rsc              1469 lib/pacemaker/pcmk_sched_actions.c             pe_rsc_debug(rsc, "%s-interval %s for %s on %s is orphaned",
rsc              1470 lib/pacemaker/pcmk_sched_actions.c                          pcmk__readable_interval(interval_ms), task, rsc->id,
rsc              1477 lib/pacemaker/pcmk_sched_actions.c               pcmk__readable_interval(interval_ms), task, rsc->id,
rsc              1480 lib/pacemaker/pcmk_sched_actions.c     digest_data = rsc_action_digest_cmp(rsc, xml_op, node, rsc->cluster);
rsc              1482 lib/pacemaker/pcmk_sched_actions.c     if (only_sanitized_changed(xml_op, digest_data, rsc->cluster)) {
rsc              1483 lib/pacemaker/pcmk_sched_actions.c         if (!pcmk__is_daemon && (rsc->cluster->priv != NULL)) {
rsc              1484 lib/pacemaker/pcmk_sched_actions.c             pcmk__output_t *out = rsc->cluster->priv;
rsc              1489 lib/pacemaker/pcmk_sched_actions.c                       pcmk__readable_interval(interval_ms), task, rsc->id,
rsc              1499 lib/pacemaker/pcmk_sched_actions.c             force_restart(rsc, task, interval_ms, node);
rsc              1512 lib/pacemaker/pcmk_sched_actions.c                 reschedule_recurring(rsc, task, interval_ms, node);
rsc              1517 lib/pacemaker/pcmk_sched_actions.c                 trigger_unfencing(rsc, node,
rsc              1519 lib/pacemaker/pcmk_sched_actions.c                                   rsc->cluster);
rsc              1521 lib/pacemaker/pcmk_sched_actions.c                 schedule_reload(rsc, node);
rsc              1524 lib/pacemaker/pcmk_sched_actions.c                 pe_rsc_trace(rsc,
rsc              1526 lib/pacemaker/pcmk_sched_actions.c                              rsc->id);
rsc              1529 lib/pacemaker/pcmk_sched_actions.c                 force_restart(rsc, task, interval_ms, node);
rsc              1549 lib/pacemaker/pcmk_sched_actions.c rsc_history_as_list(pe_resource_t *rsc, xmlNode *rsc_entry,
rsc              1578 lib/pacemaker/pcmk_sched_actions.c process_rsc_history(xmlNode *rsc_entry, pe_resource_t *rsc, pe_node_t *node)
rsc              1585 lib/pacemaker/pcmk_sched_actions.c     if (pcmk_is_set(rsc->flags, pe_rsc_orphan)) {
rsc              1586 lib/pacemaker/pcmk_sched_actions.c         if (pe_rsc_is_anon_clone(uber_parent(rsc))) {
rsc              1587 lib/pacemaker/pcmk_sched_actions.c             pe_rsc_trace(rsc,
rsc              1590 lib/pacemaker/pcmk_sched_actions.c                          rsc->id);
rsc              1592 lib/pacemaker/pcmk_sched_actions.c             pe_rsc_trace(rsc,
rsc              1594 lib/pacemaker/pcmk_sched_actions.c                          "for orphaned resource %s", rsc->id);
rsc              1595 lib/pacemaker/pcmk_sched_actions.c             DeleteRsc(rsc, node, FALSE, rsc->cluster);
rsc              1600 lib/pacemaker/pcmk_sched_actions.c     if (pe_find_node_id(rsc->running_on, node->details->id) == NULL) {
rsc              1601 lib/pacemaker/pcmk_sched_actions.c         if (pcmk__rsc_agent_changed(rsc, node, rsc_entry, false)) {
rsc              1602 lib/pacemaker/pcmk_sched_actions.c             DeleteRsc(rsc, node, FALSE, rsc->cluster);
rsc              1604 lib/pacemaker/pcmk_sched_actions.c         pe_rsc_trace(rsc,
rsc              1607 lib/pacemaker/pcmk_sched_actions.c                      rsc->id, node->details->uname);
rsc              1611 lib/pacemaker/pcmk_sched_actions.c     pe_rsc_trace(rsc, "Checking for configuration changes for %s on %s",
rsc              1612 lib/pacemaker/pcmk_sched_actions.c                  rsc->id, node->details->uname);
rsc              1614 lib/pacemaker/pcmk_sched_actions.c     if (pcmk__rsc_agent_changed(rsc, node, rsc_entry, true)) {
rsc              1615 lib/pacemaker/pcmk_sched_actions.c         DeleteRsc(rsc, node, FALSE, rsc->cluster);
rsc              1618 lib/pacemaker/pcmk_sched_actions.c     sorted_op_list = rsc_history_as_list(rsc, rsc_entry, &start_index,
rsc              1638 lib/pacemaker/pcmk_sched_actions.c             && (pcmk_is_set(rsc->flags, pe_rsc_maintenance)
rsc              1641 lib/pacemaker/pcmk_sched_actions.c             schedule_cancel(rsc,
rsc              1652 lib/pacemaker/pcmk_sched_actions.c             if (pe__bundle_needs_remote_name(rsc, rsc->cluster)) {
rsc              1660 lib/pacemaker/pcmk_sched_actions.c                 pe__add_param_check(rsc_op, rsc, node, pe_check_active,
rsc              1661 lib/pacemaker/pcmk_sched_actions.c                                     rsc->cluster);
rsc              1663 lib/pacemaker/pcmk_sched_actions.c             } else if (pcmk__check_action_config(rsc, node, rsc_op)
rsc              1664 lib/pacemaker/pcmk_sched_actions.c                        && (pe_get_failcount(node, rsc, NULL, pe_fc_effective,
rsc              1665 lib/pacemaker/pcmk_sched_actions.c                                             NULL, rsc->cluster) != 0)) {
rsc              1666 lib/pacemaker/pcmk_sched_actions.c                 pe__clear_failcount(rsc, node, "action definition changed",
rsc              1667 lib/pacemaker/pcmk_sched_actions.c                                     rsc->cluster);
rsc              1699 lib/pacemaker/pcmk_sched_actions.c                 pe_resource_t *rsc = (pe_resource_t *) iter->data;
rsc              1701 lib/pacemaker/pcmk_sched_actions.c                 if (rsc->variant == pe_native) {
rsc              1702 lib/pacemaker/pcmk_sched_actions.c                     process_rsc_history(rsc_entry, rsc, node);
rsc                43 lib/pacemaker/pcmk_sched_allocate.c check_params(pe_resource_t *rsc, pe_node_t *node, xmlNode *rsc_op,
rsc                51 lib/pacemaker/pcmk_sched_allocate.c             if (pcmk__check_action_config(rsc, node, rsc_op)
rsc                52 lib/pacemaker/pcmk_sched_allocate.c                 && pe_get_failcount(node, rsc, NULL, pe_fc_effective, NULL,
rsc                59 lib/pacemaker/pcmk_sched_allocate.c             digest_data = rsc_action_digest_cmp(rsc, rsc_op, node, data_set);
rsc                64 lib/pacemaker/pcmk_sched_allocate.c                               rsc->id, ID(rsc_op), node->details->id);
rsc                75 lib/pacemaker/pcmk_sched_allocate.c         pe__clear_failcount(rsc, node, reason, data_set);
rsc                90 lib/pacemaker/pcmk_sched_allocate.c failcount_clear_action_exists(pe_node_t *node, pe_resource_t *rsc)
rsc                92 lib/pacemaker/pcmk_sched_allocate.c     GList *list = pe__resource_actions(rsc, node, CRM_OP_CLEAR_FAILCOUNT, TRUE);
rsc               109 lib/pacemaker/pcmk_sched_allocate.c check_failure_threshold(pe_resource_t *rsc, pe_node_t *node)
rsc               112 lib/pacemaker/pcmk_sched_allocate.c     if (rsc->children != NULL) {
rsc               113 lib/pacemaker/pcmk_sched_allocate.c         g_list_foreach(rsc->children, (GFunc) check_failure_threshold,
rsc               117 lib/pacemaker/pcmk_sched_allocate.c     } else if (failcount_clear_action_exists(node, rsc)) {
rsc               133 lib/pacemaker/pcmk_sched_allocate.c         if (pcmk__threshold_reached(rsc, node, &failed)) {
rsc               135 lib/pacemaker/pcmk_sched_allocate.c                               rsc->cluster);
rsc               153 lib/pacemaker/pcmk_sched_allocate.c apply_exclusive_discovery(pe_resource_t *rsc, pe_node_t *node)
rsc               155 lib/pacemaker/pcmk_sched_allocate.c     if (rsc->exclusive_discover || uber_parent(rsc)->exclusive_discover) {
rsc               159 lib/pacemaker/pcmk_sched_allocate.c         g_list_foreach(rsc->children, (GFunc) apply_exclusive_discovery, node);
rsc               161 lib/pacemaker/pcmk_sched_allocate.c         match = g_hash_table_lookup(rsc->allowed_nodes, node->details->id);
rsc               177 lib/pacemaker/pcmk_sched_allocate.c apply_stickiness(pe_resource_t *rsc, pe_working_set_t *data_set)
rsc               182 lib/pacemaker/pcmk_sched_allocate.c     if (rsc->children != NULL) {
rsc               183 lib/pacemaker/pcmk_sched_allocate.c         g_list_foreach(rsc->children, (GFunc) apply_stickiness, data_set);
rsc               190 lib/pacemaker/pcmk_sched_allocate.c     if (!pcmk_is_set(rsc->flags, pe_rsc_managed)
rsc               191 lib/pacemaker/pcmk_sched_allocate.c         || (rsc->stickiness < 1) || !pcmk__list_of_1(rsc->running_on)) {
rsc               195 lib/pacemaker/pcmk_sched_allocate.c     node = rsc->running_on->data;
rsc               202 lib/pacemaker/pcmk_sched_allocate.c     if (!pcmk_is_set(rsc->cluster->flags, pe_flag_symmetric_cluster)
rsc               203 lib/pacemaker/pcmk_sched_allocate.c         && (pe_hash_table_lookup(rsc->allowed_nodes,
rsc               205 lib/pacemaker/pcmk_sched_allocate.c         pe_rsc_debug(rsc,
rsc               208 lib/pacemaker/pcmk_sched_allocate.c                      rsc->id, node->details->uname);
rsc               212 lib/pacemaker/pcmk_sched_allocate.c     pe_rsc_debug(rsc, "Resource %s has %d stickiness on node %s",
rsc               213 lib/pacemaker/pcmk_sched_allocate.c                  rsc->id, rsc->stickiness, node->details->uname);
rsc               214 lib/pacemaker/pcmk_sched_allocate.c     resource_location(rsc, node, rsc->stickiness, "stickiness",
rsc               215 lib/pacemaker/pcmk_sched_allocate.c                       rsc->cluster);
rsc               231 lib/pacemaker/pcmk_sched_allocate.c         pe_resource_t *rsc = (pe_resource_t *) iter->data;
rsc               233 lib/pacemaker/pcmk_sched_allocate.c         rsc->cmds->shutdown_lock(rsc);
rsc               284 lib/pacemaker/pcmk_sched_allocate.c             pe_resource_t *rsc = (pe_resource_t *) rsc_iter->data;
rsc               286 lib/pacemaker/pcmk_sched_allocate.c             check_failure_threshold(rsc, node);
rsc               287 lib/pacemaker/pcmk_sched_allocate.c             apply_exclusive_discovery(rsc, node);
rsc               316 lib/pacemaker/pcmk_sched_allocate.c             pe_resource_t *rsc = (pe_resource_t *) iter->data;
rsc               318 lib/pacemaker/pcmk_sched_allocate.c             if (rsc->is_remote_node) {
rsc               319 lib/pacemaker/pcmk_sched_allocate.c                 pe_rsc_trace(rsc, "Allocating remote connection resource '%s'",
rsc               320 lib/pacemaker/pcmk_sched_allocate.c                              rsc->id);
rsc               321 lib/pacemaker/pcmk_sched_allocate.c                 rsc->cmds->allocate(rsc, rsc->partial_migration_target,
rsc               329 lib/pacemaker/pcmk_sched_allocate.c         pe_resource_t *rsc = (pe_resource_t *) iter->data;
rsc               331 lib/pacemaker/pcmk_sched_allocate.c         if (!rsc->is_remote_node) {
rsc               332 lib/pacemaker/pcmk_sched_allocate.c             pe_rsc_trace(rsc, "Allocating %s resource '%s'",
rsc               333 lib/pacemaker/pcmk_sched_allocate.c                          crm_element_name(rsc->xml), rsc->id);
rsc               334 lib/pacemaker/pcmk_sched_allocate.c             rsc->cmds->allocate(rsc, NULL, data_set);
rsc               349 lib/pacemaker/pcmk_sched_allocate.c clear_failcounts_if_orphaned(pe_resource_t *rsc, pe_working_set_t *data_set)
rsc               351 lib/pacemaker/pcmk_sched_allocate.c     if (!pcmk_is_set(rsc->flags, pe_rsc_orphan)) {
rsc               354 lib/pacemaker/pcmk_sched_allocate.c     crm_trace("Clear fail counts for orphaned resource %s", rsc->id);
rsc               367 lib/pacemaker/pcmk_sched_allocate.c         if (pe_get_failcount(node, rsc, NULL, pe_fc_effective, NULL,
rsc               372 lib/pacemaker/pcmk_sched_allocate.c         clear_op = pe__clear_failcount(rsc, node, "it is orphaned", data_set);
rsc               377 lib/pacemaker/pcmk_sched_allocate.c         pcmk__new_ordering(clear_op->rsc, NULL, clear_op, rsc, stop_key(rsc),
rsc               407 lib/pacemaker/pcmk_sched_allocate.c         pe_resource_t *rsc = (pe_resource_t *) iter->data;
rsc               409 lib/pacemaker/pcmk_sched_allocate.c         rsc->cmds->create_actions(rsc, data_set);
rsc               422 lib/pacemaker/pcmk_sched_allocate.c is_managed(const pe_resource_t *rsc)
rsc               424 lib/pacemaker/pcmk_sched_allocate.c     if (pcmk_is_set(rsc->flags, pe_rsc_managed)) {
rsc               427 lib/pacemaker/pcmk_sched_allocate.c     for (GList *iter = rsc->children; iter != NULL; iter = iter->next) {
rsc               656 lib/pacemaker/pcmk_sched_allocate.c         pe_resource_t *rsc = (pe_resource_t *) item->data;
rsc               659 lib/pacemaker/pcmk_sched_allocate.c         if (!pcmk_is_set(rsc->flags, pe_rsc_orphan)
rsc               660 lib/pacemaker/pcmk_sched_allocate.c             || (rsc->role != RSC_ROLE_STOPPED)) {
rsc               661 lib/pacemaker/pcmk_sched_allocate.c             out->message(out, crm_map_element_name(rsc->xml), 0, rsc, all, all);
rsc                36 lib/pacemaker/pcmk_sched_bundle.c void distribute_children(pe_resource_t *rsc, GList *children, GList *nodes,
rsc                40 lib/pacemaker/pcmk_sched_bundle.c get_container_list(pe_resource_t *rsc)
rsc                44 lib/pacemaker/pcmk_sched_bundle.c     if (rsc->variant == pe_container) {
rsc                47 lib/pacemaker/pcmk_sched_bundle.c         get_bundle_variant_data(data, rsc);
rsc                59 lib/pacemaker/pcmk_sched_bundle.c get_containers_or_children(pe_resource_t *rsc)
rsc                61 lib/pacemaker/pcmk_sched_bundle.c     return (rsc->variant == pe_container)?
rsc                62 lib/pacemaker/pcmk_sched_bundle.c            get_container_list(rsc) : rsc->children;
rsc                66 lib/pacemaker/pcmk_sched_bundle.c pcmk__bundle_allocate(pe_resource_t *rsc, pe_node_t *prefer,
rsc                73 lib/pacemaker/pcmk_sched_bundle.c     CRM_CHECK(rsc != NULL, return NULL);
rsc                75 lib/pacemaker/pcmk_sched_bundle.c     get_bundle_variant_data(bundle_data, rsc);
rsc                77 lib/pacemaker/pcmk_sched_bundle.c     pe__set_resource_flags(rsc, pe_rsc_allocating);
rsc                78 lib/pacemaker/pcmk_sched_bundle.c     containers = get_container_list(rsc);
rsc                81 lib/pacemaker/pcmk_sched_bundle.c                           rsc, __func__, rsc->allowed_nodes, data_set);
rsc                83 lib/pacemaker/pcmk_sched_bundle.c     nodes = g_hash_table_get_values(rsc->allowed_nodes);
rsc                86 lib/pacemaker/pcmk_sched_bundle.c     distribute_children(rsc, containers, nodes, bundle_data->nreplicas,
rsc                98 lib/pacemaker/pcmk_sched_bundle.c             pe_rsc_trace(rsc, "Allocating bundle %s IP %s",
rsc                99 lib/pacemaker/pcmk_sched_bundle.c                          rsc->id, replica->ip->id);
rsc               116 lib/pacemaker/pcmk_sched_bundle.c             pe_rsc_trace(rsc, "Allocating bundle %s connection %s",
rsc               117 lib/pacemaker/pcmk_sched_bundle.c                          rsc->id, replica->remote->id);
rsc               138 lib/pacemaker/pcmk_sched_bundle.c             pe_rsc_trace(rsc, "Allocating bundle %s replica child %s",
rsc               139 lib/pacemaker/pcmk_sched_bundle.c                          rsc->id, replica->child->id);
rsc               158 lib/pacemaker/pcmk_sched_bundle.c         pe_rsc_trace(rsc, "Allocating bundle %s child %s",
rsc               159 lib/pacemaker/pcmk_sched_bundle.c                      rsc->id, bundle_data->child->id);
rsc               163 lib/pacemaker/pcmk_sched_bundle.c     pe__clear_resource_flags(rsc, pe_rsc_allocating|pe_rsc_provisional);
rsc               169 lib/pacemaker/pcmk_sched_bundle.c pcmk__bundle_create_actions(pe_resource_t *rsc, pe_working_set_t *data_set)
rsc               175 lib/pacemaker/pcmk_sched_bundle.c     CRM_CHECK(rsc != NULL, return);
rsc               177 lib/pacemaker/pcmk_sched_bundle.c     containers = get_container_list(rsc);
rsc               178 lib/pacemaker/pcmk_sched_bundle.c     get_bundle_variant_data(bundle_data, rsc);
rsc               196 lib/pacemaker/pcmk_sched_bundle.c     clone_create_pseudo_actions(rsc, containers, NULL, NULL,  data_set);
rsc               203 lib/pacemaker/pcmk_sched_bundle.c             pcmk__new_rsc_pseudo_action(rsc, RSC_PROMOTE, true, true);
rsc               204 lib/pacemaker/pcmk_sched_bundle.c             action = pcmk__new_rsc_pseudo_action(rsc, RSC_PROMOTED, true, true);
rsc               208 lib/pacemaker/pcmk_sched_bundle.c             pcmk__new_rsc_pseudo_action(rsc, RSC_DEMOTE, true, true);
rsc               209 lib/pacemaker/pcmk_sched_bundle.c             action = pcmk__new_rsc_pseudo_action(rsc, RSC_DEMOTED, true, true);
rsc               218 lib/pacemaker/pcmk_sched_bundle.c pcmk__bundle_internal_constraints(pe_resource_t *rsc,
rsc               223 lib/pacemaker/pcmk_sched_bundle.c     CRM_CHECK(rsc != NULL, return);
rsc               225 lib/pacemaker/pcmk_sched_bundle.c     get_bundle_variant_data(bundle_data, rsc);
rsc               228 lib/pacemaker/pcmk_sched_bundle.c         pcmk__order_resource_actions(rsc, RSC_START, bundle_data->child,
rsc               231 lib/pacemaker/pcmk_sched_bundle.c         pcmk__order_resource_actions(rsc, RSC_STOP, bundle_data->child,
rsc               236 lib/pacemaker/pcmk_sched_bundle.c             pcmk__order_resource_actions(bundle_data->child, RSC_STARTED, rsc,
rsc               240 lib/pacemaker/pcmk_sched_bundle.c             pcmk__order_resource_actions(bundle_data->child, RSC_STOPPED, rsc,
rsc               245 lib/pacemaker/pcmk_sched_bundle.c             pcmk__order_resource_actions(bundle_data->child, RSC_START, rsc,
rsc               249 lib/pacemaker/pcmk_sched_bundle.c             pcmk__order_resource_actions(bundle_data->child, RSC_STOP, rsc,
rsc               266 lib/pacemaker/pcmk_sched_bundle.c         pcmk__order_starts(rsc, replica->container,
rsc               271 lib/pacemaker/pcmk_sched_bundle.c             pcmk__order_stops(rsc, replica->child,
rsc               274 lib/pacemaker/pcmk_sched_bundle.c         pcmk__order_stops(rsc, replica->container,
rsc               276 lib/pacemaker/pcmk_sched_bundle.c         pcmk__order_resource_actions(replica->container, RSC_START, rsc,
rsc               279 lib/pacemaker/pcmk_sched_bundle.c         pcmk__order_resource_actions(replica->container, RSC_STOP, rsc,
rsc               320 lib/pacemaker/pcmk_sched_bundle.c             promote_demote_constraints(rsc, data_set);
rsc               323 lib/pacemaker/pcmk_sched_bundle.c             pcmk__order_resource_actions(bundle_data->child, RSC_DEMOTED, rsc,
rsc               329 lib/pacemaker/pcmk_sched_bundle.c             pcmk__order_resource_actions(rsc, RSC_DEMOTE, bundle_data->child,
rsc               335 lib/pacemaker/pcmk_sched_bundle.c             pcmk__order_resource_actions(bundle_data->child, RSC_PROMOTED, rsc,
rsc               341 lib/pacemaker/pcmk_sched_bundle.c             pcmk__order_resource_actions(rsc, RSC_PROMOTE, bundle_data->child,
rsc               351 lib/pacemaker/pcmk_sched_bundle.c                             pe_resource_t *rsc, enum rsc_role_e filter,
rsc               357 lib/pacemaker/pcmk_sched_bundle.c     get_bundle_variant_data(bundle_data, rsc);
rsc               360 lib/pacemaker/pcmk_sched_bundle.c               rsc_lh->id, rsc->id, candidate->details->uname);
rsc               374 lib/pacemaker/pcmk_sched_bundle.c     crm_trace("Can't pair %s with %s", rsc_lh->id, rsc->id);
rsc               379 lib/pacemaker/pcmk_sched_bundle.c compatible_replica(pe_resource_t *rsc_lh, pe_resource_t *rsc,
rsc               389 lib/pacemaker/pcmk_sched_bundle.c         return compatible_replica_for_node(rsc_lh, active_node_lh, rsc, filter,
rsc               399 lib/pacemaker/pcmk_sched_bundle.c         pair = compatible_replica_for_node(rsc_lh, node, rsc, filter, current);
rsc               405 lib/pacemaker/pcmk_sched_bundle.c     pe_rsc_debug(rsc, "Can't pair %s with %s", rsc_lh->id, (rsc? rsc->id : "none"));
rsc               423 lib/pacemaker/pcmk_sched_bundle.c int copies_per_node(pe_resource_t * rsc) 
rsc               434 lib/pacemaker/pcmk_sched_bundle.c     switch(rsc->variant) {
rsc               442 lib/pacemaker/pcmk_sched_bundle.c                 const char *max_clones_node = g_hash_table_lookup(rsc->meta, XML_RSC_ATTR_INCARNATION_NODEMAX);
rsc               457 lib/pacemaker/pcmk_sched_bundle.c                 get_bundle_variant_data(data, rsc);
rsc               557 lib/pacemaker/pcmk_sched_bundle.c     get_bundle_variant_data(data, action->rsc);
rsc               574 lib/pacemaker/pcmk_sched_bundle.c     containers = get_container_list(action->rsc);
rsc               581 lib/pacemaker/pcmk_sched_bundle.c find_compatible_child_by_node(pe_resource_t * local_child, pe_node_t * local_node, pe_resource_t * rsc,
rsc               588 lib/pacemaker/pcmk_sched_bundle.c         crm_err("Can't colocate unrunnable child %s with %s", local_child->id, rsc->id);
rsc               593 lib/pacemaker/pcmk_sched_bundle.c               local_child->id, rsc->id, local_node->details->uname);
rsc               595 lib/pacemaker/pcmk_sched_bundle.c     children = get_containers_or_children(rsc);
rsc               606 lib/pacemaker/pcmk_sched_bundle.c     crm_trace("Can't pair %s with %s", local_child->id, rsc->id);
rsc               607 lib/pacemaker/pcmk_sched_bundle.c     if(children != rsc->children) {
rsc               614 lib/pacemaker/pcmk_sched_bundle.c replica_for_container(pe_resource_t *rsc, pe_resource_t *container,
rsc               617 lib/pacemaker/pcmk_sched_bundle.c     if (rsc->variant == pe_container) {
rsc               620 lib/pacemaker/pcmk_sched_bundle.c         get_bundle_variant_data(data, rsc);
rsc               653 lib/pacemaker/pcmk_sched_bundle.c     children = get_containers_or_children(then->rsc);
rsc               657 lib/pacemaker/pcmk_sched_bundle.c                                                            first->rsc,
rsc               673 lib/pacemaker/pcmk_sched_bundle.c                 pe_rsc_info(then->rsc, "Inhibiting %s from being active", then_child->id);
rsc               689 lib/pacemaker/pcmk_sched_bundle.c             first_replica = replica_for_container(first->rsc, first_child,
rsc               703 lib/pacemaker/pcmk_sched_bundle.c             then_replica = replica_for_container(then->rsc, then_child, node);
rsc               771 lib/pacemaker/pcmk_sched_bundle.c     if(children != then->rsc->children) {
rsc               781 lib/pacemaker/pcmk_sched_bundle.c     pe_resource_t *rsc = NULL;
rsc               784 lib/pacemaker/pcmk_sched_bundle.c     if(first->rsc == NULL || then->rsc == NULL) {
rsc               787 lib/pacemaker/pcmk_sched_bundle.c     } else if(first->rsc == then->rsc) {
rsc               790 lib/pacemaker/pcmk_sched_bundle.c     } else if(first->rsc->variant < pe_clone || then->rsc->variant < pe_clone) {
rsc               797 lib/pacemaker/pcmk_sched_bundle.c         rsc = first->rsc;
rsc               799 lib/pacemaker/pcmk_sched_bundle.c         rsc = then->rsc;
rsc               802 lib/pacemaker/pcmk_sched_bundle.c     interleave_s = g_hash_table_lookup(rsc->meta, XML_RSC_ATTR_INTERLEAVE);
rsc               805 lib/pacemaker/pcmk_sched_bundle.c               first->uuid, then->uuid, interleave ? "yes" : "no", rsc->id);
rsc               824 lib/pacemaker/pcmk_sched_bundle.c     } else if(then->rsc) {
rsc               833 lib/pacemaker/pcmk_sched_bundle.c         children = get_containers_or_children(then->rsc);
rsc               858 lib/pacemaker/pcmk_sched_bundle.c         if(children != then->rsc->children) {
rsc               866 lib/pacemaker/pcmk_sched_bundle.c pcmk__bundle_rsc_location(pe_resource_t *rsc, pe__location_t *constraint)
rsc               869 lib/pacemaker/pcmk_sched_bundle.c     get_bundle_variant_data(bundle_data, rsc);
rsc               871 lib/pacemaker/pcmk_sched_bundle.c     pcmk__apply_location(constraint, rsc);
rsc               896 lib/pacemaker/pcmk_sched_bundle.c pcmk__bundle_expand(pe_resource_t *rsc, pe_working_set_t * data_set)
rsc               900 lib/pacemaker/pcmk_sched_bundle.c     CRM_CHECK(rsc != NULL, return);
rsc               902 lib/pacemaker/pcmk_sched_bundle.c     get_bundle_variant_data(bundle_data, rsc);
rsc               954 lib/pacemaker/pcmk_sched_bundle.c                          rsc->id);
rsc               970 lib/pacemaker/pcmk_sched_bundle.c pcmk__bundle_create_probe(pe_resource_t *rsc, pe_node_t *node,
rsc               977 lib/pacemaker/pcmk_sched_bundle.c     CRM_CHECK(rsc != NULL, return FALSE);
rsc               979 lib/pacemaker/pcmk_sched_bundle.c     get_bundle_variant_data(bundle_data, rsc);
rsc              1064 lib/pacemaker/pcmk_sched_bundle.c pcmk__bundle_append_meta(pe_resource_t *rsc, xmlNode *xml)
rsc              1069 lib/pacemaker/pcmk_sched_bundle.c pcmk__output_bundle_actions(pe_resource_t *rsc)
rsc              1073 lib/pacemaker/pcmk_sched_bundle.c     CRM_CHECK(rsc != NULL, return);
rsc              1075 lib/pacemaker/pcmk_sched_bundle.c     get_bundle_variant_data(bundle_data, rsc);
rsc              1098 lib/pacemaker/pcmk_sched_bundle.c pcmk__bundle_add_utilization(pe_resource_t *rsc, pe_resource_t *orig_rsc,
rsc              1104 lib/pacemaker/pcmk_sched_bundle.c     if (!pcmk_is_set(rsc->flags, pe_rsc_provisional)) {
rsc              1108 lib/pacemaker/pcmk_sched_bundle.c     get_bundle_variant_data(bundle_data, rsc);
rsc              1126 lib/pacemaker/pcmk_sched_bundle.c pcmk__bundle_shutdown_lock(pe_resource_t *rsc)
rsc                21 lib/pacemaker/pcmk_sched_clone.c static void append_parent_colocation(pe_resource_t * rsc, pe_resource_t * child, gboolean all);
rsc                48 lib/pacemaker/pcmk_sched_clone.c parent_node_instance(const pe_resource_t * rsc, pe_node_t * node)
rsc                52 lib/pacemaker/pcmk_sched_clone.c     if (node != NULL && rsc->parent) {
rsc                53 lib/pacemaker/pcmk_sched_clone.c         ret = pe_hash_table_lookup(rsc->parent->allowed_nodes, node->details->id);
rsc                55 lib/pacemaker/pcmk_sched_clone.c         ret = pe_hash_table_lookup(rsc->allowed_nodes, node->details->id);
rsc                61 lib/pacemaker/pcmk_sched_clone.c did_fail(const pe_resource_t * rsc)
rsc                63 lib/pacemaker/pcmk_sched_clone.c     GList *gIter = rsc->children;
rsc                65 lib/pacemaker/pcmk_sched_clone.c     if (pcmk_is_set(rsc->flags, pe_rsc_failed)) {
rsc               420 lib/pacemaker/pcmk_sched_clone.c can_run_instance(pe_resource_t * rsc, pe_node_t * node, int limit)
rsc               424 lib/pacemaker/pcmk_sched_clone.c     if (node == NULL && rsc->allowed_nodes) {
rsc               426 lib/pacemaker/pcmk_sched_clone.c         g_hash_table_iter_init(&iter, rsc->allowed_nodes);
rsc               428 lib/pacemaker/pcmk_sched_clone.c             can_run_instance(rsc, local_node, limit);
rsc               440 lib/pacemaker/pcmk_sched_clone.c     } else if (pcmk_is_set(rsc->flags, pe_rsc_orphan)) {
rsc               444 lib/pacemaker/pcmk_sched_clone.c     local_node = parent_node_instance(rsc, node);
rsc               447 lib/pacemaker/pcmk_sched_clone.c         crm_warn("%s cannot run on %s: node not allowed", rsc->id, node->details->uname);
rsc               451 lib/pacemaker/pcmk_sched_clone.c         common_update_score(rsc, node->details->id, local_node->weight);
rsc               452 lib/pacemaker/pcmk_sched_clone.c         pe_rsc_trace(rsc, "%s cannot run on %s: Parent node weight doesn't allow it.",
rsc               453 lib/pacemaker/pcmk_sched_clone.c                      rsc->id, node->details->uname);
rsc               456 lib/pacemaker/pcmk_sched_clone.c         pe_rsc_trace(rsc, "%s can run on %s (already running %d)",
rsc               457 lib/pacemaker/pcmk_sched_clone.c                      rsc->id, node->details->uname, local_node->count);
rsc               461 lib/pacemaker/pcmk_sched_clone.c         pe_rsc_trace(rsc, "%s cannot run on %s: node full (%d >= %d)",
rsc               462 lib/pacemaker/pcmk_sched_clone.c                      rsc->id, node->details->uname, local_node->count, limit);
rsc               467 lib/pacemaker/pcmk_sched_clone.c         common_update_score(rsc, node->details->id, -INFINITY);
rsc               473 lib/pacemaker/pcmk_sched_clone.c allocate_instance(pe_resource_t *rsc, pe_node_t *prefer, gboolean all_coloc,
rsc               479 lib/pacemaker/pcmk_sched_clone.c     CRM_ASSERT(rsc);
rsc               480 lib/pacemaker/pcmk_sched_clone.c     pe_rsc_trace(rsc, "Checking allocation of %s (preferring %s, using %s parent colocations)",
rsc               481 lib/pacemaker/pcmk_sched_clone.c                  rsc->id, (prefer? prefer->details->uname: "none"),
rsc               484 lib/pacemaker/pcmk_sched_clone.c     if (!pcmk_is_set(rsc->flags, pe_rsc_provisional)) {
rsc               485 lib/pacemaker/pcmk_sched_clone.c         return rsc->fns->location(rsc, NULL, FALSE);
rsc               487 lib/pacemaker/pcmk_sched_clone.c     } else if (pcmk_is_set(rsc->flags, pe_rsc_allocating)) {
rsc               488 lib/pacemaker/pcmk_sched_clone.c         pe_rsc_debug(rsc, "Dependency loop detected involving %s", rsc->id);
rsc               495 lib/pacemaker/pcmk_sched_clone.c     append_parent_colocation(rsc->parent, rsc, all_coloc);
rsc               498 lib/pacemaker/pcmk_sched_clone.c         pe_node_t *local_prefer = g_hash_table_lookup(rsc->allowed_nodes, prefer->details->id);
rsc               501 lib/pacemaker/pcmk_sched_clone.c             pe_rsc_trace(rsc, "Not pre-allocating %s to %s - unavailable", rsc->id,
rsc               507 lib/pacemaker/pcmk_sched_clone.c     can_run_instance(rsc, NULL, limit);
rsc               509 lib/pacemaker/pcmk_sched_clone.c     backup = pcmk__copy_node_table(rsc->allowed_nodes);
rsc               510 lib/pacemaker/pcmk_sched_clone.c     pe_rsc_trace(rsc, "Allocating instance %s", rsc->id);
rsc               511 lib/pacemaker/pcmk_sched_clone.c     chosen = rsc->cmds->allocate(rsc, prefer, data_set);
rsc               514 lib/pacemaker/pcmk_sched_clone.c                  rsc->id, prefer->details->uname, chosen->details->uname);
rsc               515 lib/pacemaker/pcmk_sched_clone.c         g_hash_table_destroy(rsc->allowed_nodes);
rsc               516 lib/pacemaker/pcmk_sched_clone.c         rsc->allowed_nodes = backup;
rsc               517 lib/pacemaker/pcmk_sched_clone.c         pcmk__unassign_resource(rsc);
rsc               522 lib/pacemaker/pcmk_sched_clone.c         pe_node_t *local_node = parent_node_instance(rsc, chosen);
rsc               527 lib/pacemaker/pcmk_sched_clone.c         } else if (pcmk_is_set(rsc->flags, pe_rsc_managed)) {
rsc               530 lib/pacemaker/pcmk_sched_clone.c                              chosen->details->id, rsc->parent->id,
rsc               531 lib/pacemaker/pcmk_sched_clone.c                              g_hash_table_size(rsc->parent->allowed_nodes));
rsc               542 lib/pacemaker/pcmk_sched_clone.c append_parent_colocation(pe_resource_t * rsc, pe_resource_t * child, gboolean all)
rsc               547 lib/pacemaker/pcmk_sched_clone.c     gIter = rsc->rsc_cons;
rsc               556 lib/pacemaker/pcmk_sched_clone.c     gIter = rsc->rsc_cons_lhs;
rsc               571 lib/pacemaker/pcmk_sched_clone.c distribute_children(pe_resource_t *rsc, GList *children, GList *nodes,
rsc               575 lib/pacemaker/pcmk_sched_clone.c distribute_children(pe_resource_t *rsc, GList *children, GList *nodes,
rsc               602 lib/pacemaker/pcmk_sched_clone.c     pe_rsc_debug(rsc, "Allocating up to %d %s instances to a possible %d nodes (at most %d per host, %d optimal)",
rsc               603 lib/pacemaker/pcmk_sched_clone.c                  max, rsc->id, available_nodes, per_host_max, loop_max);
rsc               621 lib/pacemaker/pcmk_sched_clone.c         pe_rsc_trace(rsc,
rsc               627 lib/pacemaker/pcmk_sched_clone.c             pe_rsc_trace(rsc, "Not pre-allocating because %s can not run %s",
rsc               633 lib/pacemaker/pcmk_sched_clone.c             pe_rsc_trace(rsc,
rsc               641 lib/pacemaker/pcmk_sched_clone.c             pe_rsc_trace(rsc, "Pre-allocated %s to %s", child->id,
rsc               647 lib/pacemaker/pcmk_sched_clone.c     pe_rsc_trace(rsc, "Done pre-allocating (%d of %d)", allocated, max);
rsc               664 lib/pacemaker/pcmk_sched_clone.c             pe_rsc_debug(rsc, "Child %s not allocated - limit reached %d %d", child->id, allocated, max);
rsc               674 lib/pacemaker/pcmk_sched_clone.c     pe_rsc_debug(rsc, "Allocated %d %s instances of a possible %d",
rsc               675 lib/pacemaker/pcmk_sched_clone.c                  allocated, rsc->id, max);
rsc               680 lib/pacemaker/pcmk_sched_clone.c pcmk__clone_allocate(pe_resource_t *rsc, pe_node_t *prefer,
rsc               686 lib/pacemaker/pcmk_sched_clone.c     get_clone_variant_data(clone_data, rsc);
rsc               688 lib/pacemaker/pcmk_sched_clone.c     if (!pcmk_is_set(rsc->flags, pe_rsc_provisional)) {
rsc               691 lib/pacemaker/pcmk_sched_clone.c     } else if (pcmk_is_set(rsc->flags, pe_rsc_allocating)) {
rsc               692 lib/pacemaker/pcmk_sched_clone.c         pe_rsc_debug(rsc, "Dependency loop detected involving %s", rsc->id);
rsc               696 lib/pacemaker/pcmk_sched_clone.c     if (pcmk_is_set(rsc->flags, pe_rsc_promotable)) {
rsc               697 lib/pacemaker/pcmk_sched_clone.c         pcmk__add_promotion_scores(rsc);
rsc               700 lib/pacemaker/pcmk_sched_clone.c     pe__set_resource_flags(rsc, pe_rsc_allocating);
rsc               705 lib/pacemaker/pcmk_sched_clone.c     for (GList *gIter = rsc->rsc_cons; gIter != NULL; gIter = gIter->next) {
rsc               708 lib/pacemaker/pcmk_sched_clone.c         pe_rsc_trace(rsc, "%s: Allocating %s first",
rsc               709 lib/pacemaker/pcmk_sched_clone.c                      rsc->id, constraint->primary->id);
rsc               714 lib/pacemaker/pcmk_sched_clone.c     for (GList *gIter = rsc->rsc_cons_lhs; gIter != NULL; gIter = gIter->next) {
rsc               720 lib/pacemaker/pcmk_sched_clone.c         rsc->allowed_nodes = constraint->dependent->cmds->merge_weights(
rsc               721 lib/pacemaker/pcmk_sched_clone.c             constraint->dependent, rsc->id, rsc->allowed_nodes,
rsc               727 lib/pacemaker/pcmk_sched_clone.c                           rsc, __func__, rsc->allowed_nodes, data_set);
rsc               729 lib/pacemaker/pcmk_sched_clone.c     nodes = g_hash_table_get_values(rsc->allowed_nodes);
rsc               731 lib/pacemaker/pcmk_sched_clone.c     rsc->children = g_list_sort_with_data(rsc->children, sort_clone_instance, data_set);
rsc               732 lib/pacemaker/pcmk_sched_clone.c     distribute_children(rsc, rsc->children, nodes, clone_data->clone_max, clone_data->clone_node_max, data_set);
rsc               735 lib/pacemaker/pcmk_sched_clone.c     if (pcmk_is_set(rsc->flags, pe_rsc_promotable)) {
rsc               736 lib/pacemaker/pcmk_sched_clone.c         pcmk__set_instance_roles(rsc, data_set);
rsc               739 lib/pacemaker/pcmk_sched_clone.c     pe__clear_resource_flags(rsc, pe_rsc_provisional|pe_rsc_allocating);
rsc               740 lib/pacemaker/pcmk_sched_clone.c     pe_rsc_trace(rsc, "Done allocating %s", rsc->id);
rsc               745 lib/pacemaker/pcmk_sched_clone.c clone_update_pseudo_status(pe_resource_t * rsc, gboolean * stopping, gboolean * starting,
rsc               750 lib/pacemaker/pcmk_sched_clone.c     if (rsc->children) {
rsc               752 lib/pacemaker/pcmk_sched_clone.c         gIter = rsc->children;
rsc               766 lib/pacemaker/pcmk_sched_clone.c     if (rsc->running_on) {
rsc               770 lib/pacemaker/pcmk_sched_clone.c     gIter = rsc->actions;
rsc               778 lib/pacemaker/pcmk_sched_clone.c             pe_rsc_trace(rsc, "Skipping optional: %s", action->uuid);
rsc               783 lib/pacemaker/pcmk_sched_clone.c             pe_rsc_trace(rsc, "Skipping unrunnable: %s", action->uuid);
rsc               787 lib/pacemaker/pcmk_sched_clone.c             pe_rsc_trace(rsc, "Stopping due to: %s", action->uuid);
rsc               792 lib/pacemaker/pcmk_sched_clone.c                 pe_rsc_trace(rsc, "Skipping pseudo-op: %s run=%d, pseudo=%d",
rsc               797 lib/pacemaker/pcmk_sched_clone.c                 pe_rsc_trace(rsc, "Starting due to: %s", action->uuid);
rsc               798 lib/pacemaker/pcmk_sched_clone.c                 pe_rsc_trace(rsc, "%s run=%d, pseudo=%d",
rsc               809 lib/pacemaker/pcmk_sched_clone.c find_rsc_action(pe_resource_t *rsc, const char *task)
rsc               812 lib/pacemaker/pcmk_sched_clone.c     GList *actions = pe__resource_actions(rsc, NULL, task, FALSE);
rsc               831 lib/pacemaker/pcmk_sched_clone.c child_ordering_constraints(pe_resource_t * rsc, pe_working_set_t * data_set)
rsc               840 lib/pacemaker/pcmk_sched_clone.c     get_clone_variant_data(clone_data, rsc);
rsc               846 lib/pacemaker/pcmk_sched_clone.c     rsc->children = g_list_sort(rsc->children, sort_rsc_id);
rsc               848 lib/pacemaker/pcmk_sched_clone.c     for (gIter = rsc->children; gIter != NULL; gIter = gIter->next) {
rsc               872 lib/pacemaker/pcmk_sched_clone.c clone_create_actions(pe_resource_t *rsc, pe_working_set_t *data_set)
rsc               876 lib/pacemaker/pcmk_sched_clone.c     get_clone_variant_data(clone_data, rsc);
rsc               877 lib/pacemaker/pcmk_sched_clone.c     clone_create_pseudo_actions(rsc, rsc->children, &clone_data->start_notify, &clone_data->stop_notify,data_set);
rsc               878 lib/pacemaker/pcmk_sched_clone.c     child_ordering_constraints(rsc, data_set);
rsc               879 lib/pacemaker/pcmk_sched_clone.c     if (pcmk_is_set(rsc->flags, pe_rsc_promotable)) {
rsc               880 lib/pacemaker/pcmk_sched_clone.c         create_promotable_actions(rsc, data_set);
rsc               886 lib/pacemaker/pcmk_sched_clone.c     pe_resource_t * rsc, GList *children, notify_data_t **start_notify, notify_data_t **stop_notify,  pe_working_set_t * data_set)
rsc               899 lib/pacemaker/pcmk_sched_clone.c     pe_rsc_trace(rsc, "Creating actions for %s", rsc->id);
rsc               917 lib/pacemaker/pcmk_sched_clone.c     start = pcmk__new_rsc_pseudo_action(rsc, RSC_START, !child_starting, true);
rsc               918 lib/pacemaker/pcmk_sched_clone.c     started = pcmk__new_rsc_pseudo_action(rsc, RSC_STARTED, !child_starting,
rsc               927 lib/pacemaker/pcmk_sched_clone.c         *start_notify = pcmk__clone_notif_pseudo_ops(rsc, RSC_START, start,
rsc               932 lib/pacemaker/pcmk_sched_clone.c     stop = pcmk__new_rsc_pseudo_action(rsc, RSC_STOP, !child_stopping, true);
rsc               933 lib/pacemaker/pcmk_sched_clone.c     stopped = pcmk__new_rsc_pseudo_action(rsc, RSC_STOPPED, !child_stopping,
rsc               941 lib/pacemaker/pcmk_sched_clone.c         *stop_notify = pcmk__clone_notif_pseudo_ops(rsc, RSC_STOP, stop,
rsc               951 lib/pacemaker/pcmk_sched_clone.c clone_internal_constraints(pe_resource_t *rsc, pe_working_set_t *data_set)
rsc               957 lib/pacemaker/pcmk_sched_clone.c     get_clone_variant_data(clone_data, rsc);
rsc               959 lib/pacemaker/pcmk_sched_clone.c     pe_rsc_trace(rsc, "Internal constraints for %s", rsc->id);
rsc               960 lib/pacemaker/pcmk_sched_clone.c     pcmk__order_resource_actions(rsc, RSC_STOPPED, rsc, RSC_START,
rsc               962 lib/pacemaker/pcmk_sched_clone.c     pcmk__order_resource_actions(rsc, RSC_START, rsc, RSC_STARTED,
rsc               964 lib/pacemaker/pcmk_sched_clone.c     pcmk__order_resource_actions(rsc, RSC_STOP, rsc, RSC_STOPPED,
rsc               967 lib/pacemaker/pcmk_sched_clone.c     if (pcmk_is_set(rsc->flags, pe_rsc_promotable)) {
rsc               968 lib/pacemaker/pcmk_sched_clone.c         pcmk__order_resource_actions(rsc, RSC_DEMOTED, rsc, RSC_STOP,
rsc               970 lib/pacemaker/pcmk_sched_clone.c         pcmk__order_resource_actions(rsc, RSC_STARTED, rsc, RSC_PROMOTE,
rsc               976 lib/pacemaker/pcmk_sched_clone.c         rsc->children = g_list_sort(rsc->children, sort_rsc_id);
rsc               978 lib/pacemaker/pcmk_sched_clone.c     for (gIter = rsc->children; gIter != NULL; gIter = gIter->next) {
rsc               983 lib/pacemaker/pcmk_sched_clone.c         pcmk__order_starts(rsc, child_rsc,
rsc               986 lib/pacemaker/pcmk_sched_clone.c         pcmk__order_resource_actions(child_rsc, RSC_START, rsc, RSC_STARTED,
rsc               993 lib/pacemaker/pcmk_sched_clone.c         pcmk__order_stops(rsc, child_rsc, pe_order_implies_first_printed,
rsc               995 lib/pacemaker/pcmk_sched_clone.c         pcmk__order_resource_actions(child_rsc, RSC_STOP, rsc, RSC_STOPPED,
rsc              1003 lib/pacemaker/pcmk_sched_clone.c     if (pcmk_is_set(rsc->flags, pe_rsc_promotable)) {
rsc              1004 lib/pacemaker/pcmk_sched_clone.c         promotable_constraints(rsc, data_set);
rsc              1039 lib/pacemaker/pcmk_sched_clone.c find_compatible_child(pe_resource_t *local_child, pe_resource_t *rsc,
rsc              1050 lib/pacemaker/pcmk_sched_clone.c         return find_compatible_child_by_node(local_child, local_node, rsc, filter, current);
rsc              1060 lib/pacemaker/pcmk_sched_clone.c         pair = find_compatible_child_by_node(local_child, node, rsc, filter, current);
rsc              1066 lib/pacemaker/pcmk_sched_clone.c     pe_rsc_debug(rsc, "Can't pair %s with %s", local_child->id, rsc->id);
rsc              1197 lib/pacemaker/pcmk_sched_clone.c     pe_resource_t *child = (pe_resource_t *) action->rsc->children->data;
rsc              1233 lib/pacemaker/pcmk_sched_clone.c                                      "Action summary", action->rsc->id, \
rsc              1252 lib/pacemaker/pcmk_sched_clone.c         pe_rsc_trace(action->rsc, "Checking for %s in %s on %s (%s)", task_s, child->id,
rsc              1271 lib/pacemaker/pcmk_sched_clone.c         pe_rsc_trace(action->rsc, "%s is not runnable because no children are", action->uuid);
rsc              1284 lib/pacemaker/pcmk_sched_clone.c     return summary_action_flags(action, action->rsc->children, node);
rsc              1288 lib/pacemaker/pcmk_sched_clone.c clone_rsc_location(pe_resource_t *rsc, pe__location_t *constraint)
rsc              1290 lib/pacemaker/pcmk_sched_clone.c     GList *gIter = rsc->children;
rsc              1292 lib/pacemaker/pcmk_sched_clone.c     pe_rsc_trace(rsc, "Processing location constraint %s for %s", constraint->id, rsc->id);
rsc              1294 lib/pacemaker/pcmk_sched_clone.c     pcmk__apply_location(constraint, rsc);
rsc              1304 lib/pacemaker/pcmk_sched_clone.c clone_expand(pe_resource_t * rsc, pe_working_set_t * data_set)
rsc              1309 lib/pacemaker/pcmk_sched_clone.c     get_clone_variant_data(clone_data, rsc);
rsc              1311 lib/pacemaker/pcmk_sched_clone.c     g_list_foreach(rsc->actions, (GFunc) rsc->cmds->action_flags, NULL);
rsc              1313 lib/pacemaker/pcmk_sched_clone.c     pcmk__create_notifications(rsc, clone_data->start_notify);
rsc              1314 lib/pacemaker/pcmk_sched_clone.c     pcmk__create_notifications(rsc, clone_data->stop_notify);
rsc              1315 lib/pacemaker/pcmk_sched_clone.c     pcmk__create_notifications(rsc, clone_data->promote_notify);
rsc              1316 lib/pacemaker/pcmk_sched_clone.c     pcmk__create_notifications(rsc, clone_data->demote_notify);
rsc              1320 lib/pacemaker/pcmk_sched_clone.c     gIter = rsc->children;
rsc              1327 lib/pacemaker/pcmk_sched_clone.c     native_expand(rsc, data_set);
rsc              1342 lib/pacemaker/pcmk_sched_clone.c rsc_known_on(const pe_resource_t *rsc, const pe_node_t *node)
rsc              1344 lib/pacemaker/pcmk_sched_clone.c     if (rsc->children) {
rsc              1345 lib/pacemaker/pcmk_sched_clone.c         for (GList *child_iter = rsc->children; child_iter != NULL;
rsc              1355 lib/pacemaker/pcmk_sched_clone.c     } else if (rsc->known_on) {
rsc              1359 lib/pacemaker/pcmk_sched_clone.c         g_hash_table_iter_init(&iter, rsc->known_on);
rsc              1385 lib/pacemaker/pcmk_sched_clone.c probe_unique_clone(pe_resource_t *rsc, pe_node_t *node, pe_action_t *complete,
rsc              1390 lib/pacemaker/pcmk_sched_clone.c     for (GList *child_iter = rsc->children; child_iter != NULL;
rsc              1403 lib/pacemaker/pcmk_sched_clone.c probe_anonymous_clone(pe_resource_t *rsc, pe_node_t *node,
rsc              1408 lib/pacemaker/pcmk_sched_clone.c     pe_resource_t *child = find_instance_on(rsc, node);
rsc              1412 lib/pacemaker/pcmk_sched_clone.c         for (GList *child_iter = rsc->children; child_iter && !child;
rsc              1429 lib/pacemaker/pcmk_sched_clone.c         child = rsc->children->data;
rsc              1436 lib/pacemaker/pcmk_sched_clone.c clone_create_probe(pe_resource_t * rsc, pe_node_t * node, pe_action_t * complete,
rsc              1441 lib/pacemaker/pcmk_sched_clone.c     CRM_ASSERT(rsc);
rsc              1443 lib/pacemaker/pcmk_sched_clone.c     rsc->children = g_list_sort(rsc->children, sort_rsc_id);
rsc              1444 lib/pacemaker/pcmk_sched_clone.c     if (rsc->children == NULL) {
rsc              1445 lib/pacemaker/pcmk_sched_clone.c         pe_warn("Clone %s has no children", rsc->id);
rsc              1449 lib/pacemaker/pcmk_sched_clone.c     if (rsc->exclusive_discover) {
rsc              1450 lib/pacemaker/pcmk_sched_clone.c         pe_node_t *allowed = g_hash_table_lookup(rsc->allowed_nodes, node->details->id);
rsc              1459 lib/pacemaker/pcmk_sched_clone.c             g_hash_table_remove(rsc->allowed_nodes, node->details->id);
rsc              1466 lib/pacemaker/pcmk_sched_clone.c     if (pcmk_is_set(rsc->flags, pe_rsc_unique)) {
rsc              1467 lib/pacemaker/pcmk_sched_clone.c         any_created = probe_unique_clone(rsc, node, complete, force, data_set);
rsc              1469 lib/pacemaker/pcmk_sched_clone.c         any_created = probe_anonymous_clone(rsc, node, complete, force,
rsc              1476 lib/pacemaker/pcmk_sched_clone.c clone_append_meta(pe_resource_t * rsc, xmlNode * xml)
rsc              1481 lib/pacemaker/pcmk_sched_clone.c     get_clone_variant_data(clone_data, rsc);
rsc              1484 lib/pacemaker/pcmk_sched_clone.c     crm_xml_add(xml, name, pe__rsc_bool_str(rsc, pe_rsc_unique));
rsc              1488 lib/pacemaker/pcmk_sched_clone.c     crm_xml_add(xml, name, pe__rsc_bool_str(rsc, pe_rsc_notify));
rsc              1499 lib/pacemaker/pcmk_sched_clone.c     if (pcmk_is_set(rsc->flags, pe_rsc_promotable)) {
rsc              1523 lib/pacemaker/pcmk_sched_clone.c pcmk__clone_add_utilization(pe_resource_t *rsc, pe_resource_t *orig_rsc,
rsc              1529 lib/pacemaker/pcmk_sched_clone.c     if (!pcmk_is_set(rsc->flags, pe_rsc_provisional)) {
rsc              1534 lib/pacemaker/pcmk_sched_clone.c     for (GList *iter = rsc->children; iter != NULL; iter = iter->next) {
rsc              1556 lib/pacemaker/pcmk_sched_clone.c     if (!existing && (rsc->children != NULL)) {
rsc              1558 lib/pacemaker/pcmk_sched_clone.c         child = (pe_resource_t *) rsc->children->data;
rsc              1566 lib/pacemaker/pcmk_sched_clone.c pcmk__clone_shutdown_lock(pe_resource_t *rsc)
rsc               271 lib/pacemaker/pcmk_sched_colocation.c unpack_influence(const char *coloc_id, const pe_resource_t *rsc,
rsc               285 lib/pacemaker/pcmk_sched_colocation.c     return pcmk_is_set(rsc->flags, pe_rsc_critical);
rsc               750 lib/pacemaker/pcmk_sched_colocation.c mark_start_blocked(pe_resource_t *rsc, pe_resource_t *reason,
rsc               755 lib/pacemaker/pcmk_sched_colocation.c     for (GList *gIter = rsc->actions; gIter != NULL; gIter = gIter->next) {
rsc               781 lib/pacemaker/pcmk_sched_colocation.c     pe_resource_t *rsc = NULL;
rsc               786 lib/pacemaker/pcmk_sched_colocation.c         rsc = uber_parent(action->rsc);
rsc               787 lib/pacemaker/pcmk_sched_colocation.c         if (rsc->parent) {
rsc               793 lib/pacemaker/pcmk_sched_colocation.c             rsc = rsc->parent;
rsc               797 lib/pacemaker/pcmk_sched_colocation.c     if ((rsc == NULL) || (rsc->rsc_cons_lhs == NULL)) {
rsc               802 lib/pacemaker/pcmk_sched_colocation.c     for (gIter = rsc->children; gIter != NULL; gIter = gIter->next) {
rsc               811 lib/pacemaker/pcmk_sched_colocation.c     for (gIter = rsc->rsc_cons_lhs; gIter != NULL; gIter = gIter->next) {
rsc               815 lib/pacemaker/pcmk_sched_colocation.c             mark_start_blocked(colocate_with->dependent, action->rsc, data_set);
rsc               183 lib/pacemaker/pcmk_sched_constraints.c                             pe_resource_t **rsc, pe_tag_t **tag)
rsc               185 lib/pacemaker/pcmk_sched_constraints.c     if (rsc != NULL) {
rsc               186 lib/pacemaker/pcmk_sched_constraints.c         *rsc = pcmk__find_constraint_resource(data_set->resources, id);
rsc               187 lib/pacemaker/pcmk_sched_constraints.c         if (*rsc != NULL) {
rsc               235 lib/pacemaker/pcmk_sched_constraints.c             pe_resource_t *rsc = NULL;
rsc               238 lib/pacemaker/pcmk_sched_constraints.c             if (!pcmk__valid_resource_or_tag(data_set, ID(xml_rsc), &rsc,
rsc               246 lib/pacemaker/pcmk_sched_constraints.c             } else if (rsc) {
rsc               338 lib/pacemaker/pcmk_sched_constraints.c     pe_resource_t *rsc = NULL;
rsc               357 lib/pacemaker/pcmk_sched_constraints.c     if (!pcmk__valid_resource_or_tag(data_set, id, &rsc, &tag)) {
rsc               382 lib/pacemaker/pcmk_sched_constraints.c     } else if ((rsc != NULL) && convert_rsc) {
rsc               416 lib/pacemaker/pcmk_sched_constraints.c         pe_resource_t *rsc = (pe_resource_t *) iter->data;
rsc               418 lib/pacemaker/pcmk_sched_constraints.c         rsc->cmds->internal_constraints(rsc, data_set);
rsc                29 lib/pacemaker/pcmk_sched_fencing.c rsc_is_known_on(pe_resource_t *rsc, const pe_node_t *node)
rsc                31 lib/pacemaker/pcmk_sched_fencing.c    if (pe_hash_table_lookup(rsc->known_on, node->details->id)) {
rsc                34 lib/pacemaker/pcmk_sched_fencing.c    } else if ((rsc->variant == pe_native)
rsc                35 lib/pacemaker/pcmk_sched_fencing.c               && pe_rsc_is_anon_clone(rsc->parent)
rsc                36 lib/pacemaker/pcmk_sched_fencing.c               && pe_hash_table_lookup(rsc->parent->known_on, node->details->id)) {
rsc                55 lib/pacemaker/pcmk_sched_fencing.c order_start_vs_fencing(pe_resource_t *rsc, pe_action_t *stonith_op,
rsc                64 lib/pacemaker/pcmk_sched_fencing.c     for (gIter = rsc->actions; gIter != NULL; gIter = gIter->next) {
rsc                78 lib/pacemaker/pcmk_sched_fencing.c                     && pe_hash_table_lookup(rsc->allowed_nodes, target->details->id)
rsc                79 lib/pacemaker/pcmk_sched_fencing.c                     && !rsc_is_known_on(rsc, target)) {
rsc                90 lib/pacemaker/pcmk_sched_fencing.c                     pe_rsc_debug(rsc, "Ordering %s after %s recovery", action->uuid,
rsc               109 lib/pacemaker/pcmk_sched_fencing.c order_stop_vs_fencing(pe_resource_t *rsc, pe_action_t *stonith_op,
rsc               116 lib/pacemaker/pcmk_sched_fencing.c     pe_resource_t *top = uber_parent(rsc);
rsc               124 lib/pacemaker/pcmk_sched_fencing.c     action_list = pe__resource_actions(rsc, target, RSC_STOP, FALSE);
rsc               132 lib/pacemaker/pcmk_sched_fencing.c     if (pcmk_is_set(rsc->flags, pe_rsc_needs_fencing)
rsc               163 lib/pacemaker/pcmk_sched_fencing.c             if (!pe_rsc_is_bundled(rsc)) {
rsc               169 lib/pacemaker/pcmk_sched_fencing.c         if (pcmk_is_set(rsc->flags, pe_rsc_failed)) {
rsc               171 lib/pacemaker/pcmk_sched_fencing.c                        rsc->id, (order_implicit? "after" : "because"),
rsc               179 lib/pacemaker/pcmk_sched_fencing.c         if (pcmk_is_set(rsc->flags, pe_rsc_notify)) {
rsc               180 lib/pacemaker/pcmk_sched_fencing.c             pcmk__order_notifs_after_fencing(action, rsc, stonith_op);
rsc               203 lib/pacemaker/pcmk_sched_fencing.c                   rsc->id, node->details->uname);
rsc               204 lib/pacemaker/pcmk_sched_fencing.c          pcmk__new_ordering(rsc, stop_key(rsc), NULL, NULL,
rsc               213 lib/pacemaker/pcmk_sched_fencing.c     action_list = pe__resource_actions(rsc, target, RSC_DEMOTE, FALSE);
rsc               219 lib/pacemaker/pcmk_sched_fencing.c             || pcmk_is_set(rsc->flags, pe_rsc_failed)) {
rsc               221 lib/pacemaker/pcmk_sched_fencing.c             if (pcmk_is_set(rsc->flags, pe_rsc_failed)) {
rsc               222 lib/pacemaker/pcmk_sched_fencing.c                 pe_rsc_info(rsc,
rsc               224 lib/pacemaker/pcmk_sched_fencing.c                             rsc->id, target->details->uname);
rsc               226 lib/pacemaker/pcmk_sched_fencing.c                 pe_rsc_info(rsc, "%s is implicit after %s is fenced",
rsc               235 lib/pacemaker/pcmk_sched_fencing.c             if (pe_rsc_is_bundled(rsc)) {
rsc               256 lib/pacemaker/pcmk_sched_fencing.c rsc_stonith_ordering(pe_resource_t *rsc, pe_action_t *stonith_op,
rsc               259 lib/pacemaker/pcmk_sched_fencing.c     if (rsc->children) {
rsc               262 lib/pacemaker/pcmk_sched_fencing.c         for (gIter = rsc->children; gIter != NULL; gIter = gIter->next) {
rsc               268 lib/pacemaker/pcmk_sched_fencing.c     } else if (!pcmk_is_set(rsc->flags, pe_rsc_managed)) {
rsc               269 lib/pacemaker/pcmk_sched_fencing.c         pe_rsc_trace(rsc,
rsc               271 lib/pacemaker/pcmk_sched_fencing.c                      rsc->id);
rsc               274 lib/pacemaker/pcmk_sched_fencing.c         order_start_vs_fencing(rsc, stonith_op, data_set);
rsc               275 lib/pacemaker/pcmk_sched_fencing.c         order_stop_vs_fencing(rsc, stonith_op, data_set);
rsc               310 lib/pacemaker/pcmk_sched_fencing.c pcmk__order_vs_unfence(pe_resource_t *rsc, pe_node_t *node, pe_action_t *action,
rsc               320 lib/pacemaker/pcmk_sched_fencing.c     if (pcmk__is_unfence_device(rsc, data_set)
rsc               321 lib/pacemaker/pcmk_sched_fencing.c         || pcmk_is_set(rsc->flags, pe_rsc_needs_unfencing)) {
rsc               334 lib/pacemaker/pcmk_sched_fencing.c                                              rsc->id, action->task);
rsc               462 lib/pacemaker/pcmk_sched_fencing.c pcmk__is_unfence_device(const pe_resource_t *rsc,
rsc               465 lib/pacemaker/pcmk_sched_fencing.c     return pcmk_is_set(rsc->flags, pe_rsc_fence_device)
rsc                30 lib/pacemaker/pcmk_sched_group.c expand_group_colocations(pe_resource_t *rsc)
rsc                36 lib/pacemaker/pcmk_sched_group.c     get_group_variant_data(group_data, rsc);
rsc                40 lib/pacemaker/pcmk_sched_group.c     member->rsc_cons = g_list_concat(member->rsc_cons, rsc->rsc_cons);
rsc                58 lib/pacemaker/pcmk_sched_group.c     for (GList *item = rsc->children->next; item != NULL; item = item->next) {
rsc                61 lib/pacemaker/pcmk_sched_group.c             for (GList *cons_iter = rsc->rsc_cons; cons_iter != NULL;
rsc                75 lib/pacemaker/pcmk_sched_group.c     rsc->rsc_cons = NULL;
rsc                80 lib/pacemaker/pcmk_sched_group.c                                          rsc->rsc_cons_lhs);
rsc                81 lib/pacemaker/pcmk_sched_group.c     rsc->rsc_cons_lhs = NULL;
rsc                85 lib/pacemaker/pcmk_sched_group.c pcmk__group_allocate(pe_resource_t *rsc, pe_node_t *prefer,
rsc                93 lib/pacemaker/pcmk_sched_group.c     get_group_variant_data(group_data, rsc);
rsc                95 lib/pacemaker/pcmk_sched_group.c     if (!pcmk_is_set(rsc->flags, pe_rsc_provisional)) {
rsc                96 lib/pacemaker/pcmk_sched_group.c         return rsc->allocated_to;
rsc                98 lib/pacemaker/pcmk_sched_group.c     if (pcmk_is_set(rsc->flags, pe_rsc_allocating)) {
rsc                99 lib/pacemaker/pcmk_sched_group.c         pe_rsc_debug(rsc, "Dependency loop detected involving %s", rsc->id);
rsc               105 lib/pacemaker/pcmk_sched_group.c         pe__clear_resource_flags(rsc, pe_rsc_provisional);
rsc               109 lib/pacemaker/pcmk_sched_group.c     pe__set_resource_flags(rsc, pe_rsc_allocating);
rsc               110 lib/pacemaker/pcmk_sched_group.c     rsc->role = group_data->first_child->role;
rsc               112 lib/pacemaker/pcmk_sched_group.c     expand_group_colocations(rsc);
rsc               115 lib/pacemaker/pcmk_sched_group.c                           rsc, __func__, rsc->allowed_nodes, data_set);
rsc               117 lib/pacemaker/pcmk_sched_group.c     gIter = rsc->children;
rsc               121 lib/pacemaker/pcmk_sched_group.c         pe_rsc_trace(rsc, "Allocating group %s member %s",
rsc               122 lib/pacemaker/pcmk_sched_group.c                      rsc->id, child_rsc->id);
rsc               129 lib/pacemaker/pcmk_sched_group.c     pe__set_next_role(rsc, group_data->first_child->next_role,
rsc               131 lib/pacemaker/pcmk_sched_group.c     pe__clear_resource_flags(rsc, pe_rsc_allocating|pe_rsc_provisional);
rsc               142 lib/pacemaker/pcmk_sched_group.c group_create_actions(pe_resource_t * rsc, pe_working_set_t * data_set)
rsc               146 lib/pacemaker/pcmk_sched_group.c     GList *gIter = rsc->children;
rsc               148 lib/pacemaker/pcmk_sched_group.c     pe_rsc_trace(rsc, "Creating actions for %s", rsc->id);
rsc               154 lib/pacemaker/pcmk_sched_group.c         group_update_pseudo_status(rsc, child_rsc);
rsc               157 lib/pacemaker/pcmk_sched_group.c     op = start_action(rsc, NULL, TRUE /* !group_data->child_starting */ );
rsc               160 lib/pacemaker/pcmk_sched_group.c     op = custom_action(rsc, started_key(rsc),
rsc               164 lib/pacemaker/pcmk_sched_group.c     op = stop_action(rsc, NULL, TRUE /* !group_data->child_stopping */ );
rsc               167 lib/pacemaker/pcmk_sched_group.c     op = custom_action(rsc, stopped_key(rsc),
rsc               171 lib/pacemaker/pcmk_sched_group.c     value = g_hash_table_lookup(rsc->meta, XML_RSC_ATTR_PROMOTABLE);
rsc               173 lib/pacemaker/pcmk_sched_group.c         op = custom_action(rsc, demote_key(rsc), RSC_DEMOTE, NULL, TRUE, TRUE, data_set);
rsc               176 lib/pacemaker/pcmk_sched_group.c         op = custom_action(rsc, demoted_key(rsc), RSC_DEMOTED, NULL, TRUE, TRUE, data_set);
rsc               179 lib/pacemaker/pcmk_sched_group.c         op = custom_action(rsc, promote_key(rsc), RSC_PROMOTE, NULL, TRUE, TRUE, data_set);
rsc               182 lib/pacemaker/pcmk_sched_group.c         op = custom_action(rsc, promoted_key(rsc), RSC_PROMOTED, NULL, TRUE, TRUE, data_set);
rsc               214 lib/pacemaker/pcmk_sched_group.c             pe_rsc_trace(action->rsc, "Based on %s the group is stopping", action->uuid);
rsc               219 lib/pacemaker/pcmk_sched_group.c             pe_rsc_trace(action->rsc, "Based on %s the group is starting", action->uuid);
rsc               225 lib/pacemaker/pcmk_sched_group.c group_internal_constraints(pe_resource_t * rsc, pe_working_set_t * data_set)
rsc               227 lib/pacemaker/pcmk_sched_group.c     GList *gIter = rsc->children;
rsc               230 lib/pacemaker/pcmk_sched_group.c     pe_resource_t *top = uber_parent(rsc);
rsc               233 lib/pacemaker/pcmk_sched_group.c     get_group_variant_data(group_data, rsc);
rsc               235 lib/pacemaker/pcmk_sched_group.c     pcmk__order_resource_actions(rsc, RSC_STOPPED, rsc, RSC_START,
rsc               237 lib/pacemaker/pcmk_sched_group.c     pcmk__order_resource_actions(rsc, RSC_START, rsc, RSC_STARTED,
rsc               239 lib/pacemaker/pcmk_sched_group.c     pcmk__order_resource_actions(rsc, RSC_STOP, rsc, RSC_STOPPED,
rsc               266 lib/pacemaker/pcmk_sched_group.c             pcmk__order_resource_actions(rsc, RSC_DEMOTE, child_rsc, RSC_DEMOTE,
rsc               270 lib/pacemaker/pcmk_sched_group.c             pcmk__order_resource_actions(child_rsc, RSC_DEMOTE, rsc,
rsc               273 lib/pacemaker/pcmk_sched_group.c             pcmk__order_resource_actions(child_rsc, RSC_PROMOTE, rsc,
rsc               276 lib/pacemaker/pcmk_sched_group.c             pcmk__order_resource_actions(rsc, RSC_PROMOTE, child_rsc,
rsc               283 lib/pacemaker/pcmk_sched_group.c         pcmk__order_starts(rsc, child_rsc, pe_order_implies_first_printed,
rsc               285 lib/pacemaker/pcmk_sched_group.c         pcmk__order_stops(rsc, child_rsc,
rsc               288 lib/pacemaker/pcmk_sched_group.c         pcmk__order_resource_actions(child_rsc, RSC_STOP, rsc, RSC_STOPPED,
rsc               290 lib/pacemaker/pcmk_sched_group.c         pcmk__order_resource_actions(child_rsc, RSC_START, rsc, RSC_STARTED,
rsc               294 lib/pacemaker/pcmk_sched_group.c             pcmk__order_starts(rsc, child_rsc,
rsc               297 lib/pacemaker/pcmk_sched_group.c                 pcmk__order_resource_actions(rsc, RSC_PROMOTE, child_rsc,
rsc               317 lib/pacemaker/pcmk_sched_group.c             pcmk__order_starts(rsc, child_rsc, pe_order_none, data_set);
rsc               319 lib/pacemaker/pcmk_sched_group.c                 pcmk__order_resource_actions(rsc, RSC_PROMOTE, child_rsc,
rsc               345 lib/pacemaker/pcmk_sched_group.c         pcmk__order_stops(rsc, last_rsc, stop_stop_flags, data_set);
rsc               346 lib/pacemaker/pcmk_sched_group.c         pcmk__order_resource_actions(last_rsc, RSC_STOP, rsc, RSC_STOPPED,
rsc               350 lib/pacemaker/pcmk_sched_group.c             pcmk__order_resource_actions(rsc, RSC_DEMOTE, last_rsc, RSC_DEMOTE,
rsc               352 lib/pacemaker/pcmk_sched_group.c             pcmk__order_resource_actions(last_rsc, RSC_DEMOTE, rsc, RSC_DEMOTED,
rsc               455 lib/pacemaker/pcmk_sched_group.c     for (gIter = action->rsc->children; gIter != NULL; gIter = gIter->next) {
rsc               466 lib/pacemaker/pcmk_sched_group.c                 pe_rsc_trace(action->rsc, "%s is mandatory because of %s", action->uuid,
rsc               476 lib/pacemaker/pcmk_sched_group.c                 pe_rsc_trace(action->rsc, "%s is not runnable because of %s", action->uuid,
rsc               484 lib/pacemaker/pcmk_sched_group.c             pe_rsc_trace(action->rsc, "%s is not runnable because of %s (not found in %s)",
rsc               499 lib/pacemaker/pcmk_sched_group.c     GList *gIter = then->rsc->children;
rsc               502 lib/pacemaker/pcmk_sched_group.c     CRM_ASSERT(then->rsc != NULL);
rsc               521 lib/pacemaker/pcmk_sched_group.c group_rsc_location(pe_resource_t *rsc, pe__location_t *constraint)
rsc               523 lib/pacemaker/pcmk_sched_group.c     GList *gIter = rsc->children;
rsc               529 lib/pacemaker/pcmk_sched_group.c     get_group_variant_data(group_data, rsc);
rsc               531 lib/pacemaker/pcmk_sched_group.c     pe_rsc_debug(rsc, "Processing rsc_location %s for %s", constraint->id, rsc->id);
rsc               533 lib/pacemaker/pcmk_sched_group.c     pcmk__apply_location(constraint, rsc);
rsc               550 lib/pacemaker/pcmk_sched_group.c group_expand(pe_resource_t * rsc, pe_working_set_t * data_set)
rsc               552 lib/pacemaker/pcmk_sched_group.c     CRM_CHECK(rsc != NULL, return);
rsc               554 lib/pacemaker/pcmk_sched_group.c     pe_rsc_trace(rsc, "Processing actions from %s", rsc->id);
rsc               555 lib/pacemaker/pcmk_sched_group.c     native_expand(rsc, data_set);
rsc               557 lib/pacemaker/pcmk_sched_group.c     for (GList *gIter = rsc->children; gIter != NULL; gIter = gIter->next) {
rsc               565 lib/pacemaker/pcmk_sched_group.c pcmk__group_merge_weights(pe_resource_t *rsc, const char *primary_id,
rsc               569 lib/pacemaker/pcmk_sched_group.c     GList *gIter = rsc->rsc_cons_lhs;
rsc               572 lib/pacemaker/pcmk_sched_group.c     get_group_variant_data(group_data, rsc);
rsc               574 lib/pacemaker/pcmk_sched_group.c     if (pcmk_is_set(rsc->flags, pe_rsc_merging)) {
rsc               575 lib/pacemaker/pcmk_sched_group.c         pe_rsc_info(rsc, "Breaking dependency loop with %s at %s",
rsc               576 lib/pacemaker/pcmk_sched_group.c                     rsc->id, primary_id);
rsc               580 lib/pacemaker/pcmk_sched_group.c     pe__set_resource_flags(rsc, pe_rsc_merging);
rsc               589 lib/pacemaker/pcmk_sched_group.c         nodes = pcmk__native_merge_weights(constraint->dependent, rsc->id,
rsc               595 lib/pacemaker/pcmk_sched_group.c     pe__clear_resource_flags(rsc, pe_rsc_merging);
rsc               600 lib/pacemaker/pcmk_sched_group.c group_append_meta(pe_resource_t * rsc, xmlNode * xml)
rsc               606 lib/pacemaker/pcmk_sched_group.c pcmk__group_colocated_resources(pe_resource_t *rsc, pe_resource_t *orig_rsc,
rsc               612 lib/pacemaker/pcmk_sched_group.c     get_group_variant_data(group_data, rsc);
rsc               615 lib/pacemaker/pcmk_sched_group.c         orig_rsc = rsc;
rsc               618 lib/pacemaker/pcmk_sched_group.c     if (group_data->colocated || pe_rsc_is_clone(rsc->parent)) {
rsc               622 lib/pacemaker/pcmk_sched_group.c         for (GList *gIter = rsc->children; gIter != NULL; gIter = gIter->next) {
rsc               640 lib/pacemaker/pcmk_sched_group.c     colocated_rscs = pcmk__colocated_resources(rsc, orig_rsc, colocated_rscs);
rsc               647 lib/pacemaker/pcmk_sched_group.c pcmk__group_add_utilization(pe_resource_t *rsc, pe_resource_t *orig_rsc,
rsc               653 lib/pacemaker/pcmk_sched_group.c     if (!pcmk_is_set(rsc->flags, pe_rsc_provisional)) {
rsc               658 lib/pacemaker/pcmk_sched_group.c                  orig_rsc->id, rsc->id);
rsc               659 lib/pacemaker/pcmk_sched_group.c     get_group_variant_data(group_data, rsc);
rsc               660 lib/pacemaker/pcmk_sched_group.c     if (group_data->colocated || pe_rsc_is_clone(rsc->parent)) {
rsc               662 lib/pacemaker/pcmk_sched_group.c         for (GList *iter = rsc->children; iter != NULL; iter = iter->next) {
rsc               687 lib/pacemaker/pcmk_sched_group.c pcmk__group_shutdown_lock(pe_resource_t *rsc)
rsc               689 lib/pacemaker/pcmk_sched_group.c     for (GList *iter = rsc->children; iter != NULL; iter = iter->next) {
rsc                23 lib/pacemaker/pcmk_sched_location.c                pe_node_t *node, pe_resource_t *rsc)
rsc                34 lib/pacemaker/pcmk_sched_location.c         const char *attr_score = pe_node_attribute_calculated(node, score, rsc);
rsc                51 lib/pacemaker/pcmk_sched_location.c generate_location_rule(pe_resource_t *rsc, xmlNode *rule_xml,
rsc                98 lib/pacemaker/pcmk_sched_location.c     location_rule = pcmk__new_location(rule_id, rsc, 0, discovery, NULL,
rsc               134 lib/pacemaker/pcmk_sched_location.c             node->weight = get_node_score(rule_id, score, raw_score, node, rsc);
rsc               143 lib/pacemaker/pcmk_sched_location.c             .params = pe_rsc_params(rsc, node, data_set),
rsc               144 lib/pacemaker/pcmk_sched_location.c             .meta = rsc->meta,
rsc               153 lib/pacemaker/pcmk_sched_location.c         score_f = get_node_score(rule_id, score, raw_score, node, rsc);
rsc               539 lib/pacemaker/pcmk_sched_location.c pcmk__new_location(const char *id, pe_resource_t *rsc,
rsc               545 lib/pacemaker/pcmk_sched_location.c     if ((rsc == NULL) || (id == NULL)) {
rsc               546 lib/pacemaker/pcmk_sched_location.c         pe_err("Invalid constraint %s for rsc=%p", crm_str(id), rsc);
rsc               556 lib/pacemaker/pcmk_sched_location.c         new_con->rsc_lh = rsc;
rsc               569 lib/pacemaker/pcmk_sched_location.c             rsc->exclusive_discover = TRUE;
rsc               585 lib/pacemaker/pcmk_sched_location.c         rsc->rsc_location = g_list_prepend(rsc->rsc_location, new_con);
rsc               616 lib/pacemaker/pcmk_sched_location.c pcmk__apply_location(pe__location_t *constraint, pe_resource_t *rsc)
rsc               620 lib/pacemaker/pcmk_sched_location.c     CRM_CHECK((constraint != NULL) && (rsc != NULL), return);
rsc               624 lib/pacemaker/pcmk_sched_location.c     if (need_role && (constraint->role_filter != rsc->next_role)) {
rsc               625 lib/pacemaker/pcmk_sched_location.c         pe_rsc_trace(rsc,
rsc               627 lib/pacemaker/pcmk_sched_location.c                      constraint->id, rsc->id, role2text(rsc->next_role),
rsc               633 lib/pacemaker/pcmk_sched_location.c         pe_rsc_trace(rsc, "Not applying %s to %s because no nodes match",
rsc               634 lib/pacemaker/pcmk_sched_location.c                      constraint->id, rsc->id);
rsc               638 lib/pacemaker/pcmk_sched_location.c     pe_rsc_trace(rsc, "Applying %s%s%s to %s", constraint->id,
rsc               640 lib/pacemaker/pcmk_sched_location.c                  (need_role? role2text(constraint->role_filter) : ""), rsc->id);
rsc               648 lib/pacemaker/pcmk_sched_location.c         weighted_node = (pe_node_t *) pe_hash_table_lookup(rsc->allowed_nodes,
rsc               651 lib/pacemaker/pcmk_sched_location.c             pe_rsc_trace(rsc, "* = %d on %s",
rsc               654 lib/pacemaker/pcmk_sched_location.c             g_hash_table_insert(rsc->allowed_nodes,
rsc               658 lib/pacemaker/pcmk_sched_location.c             pe_rsc_trace(rsc, "* + %d on %s",
rsc               666 lib/pacemaker/pcmk_sched_location.c                 rsc->exclusive_discover = TRUE;
rsc                32 lib/pacemaker/pcmk_sched_native.c static void Recurring(pe_resource_t *rsc, pe_action_t *start, pe_node_t *node,
rsc                34 lib/pacemaker/pcmk_sched_native.c static void RecurringOp(pe_resource_t *rsc, pe_action_t *start, pe_node_t *node,
rsc                36 lib/pacemaker/pcmk_sched_native.c static void Recurring_Stopped(pe_resource_t *rsc, pe_action_t *start, pe_node_t *node,
rsc                38 lib/pacemaker/pcmk_sched_native.c static void RecurringOp_Stopped(pe_resource_t *rsc, pe_action_t *start, pe_node_t *node,
rsc                41 lib/pacemaker/pcmk_sched_native.c gboolean DeleteRsc(pe_resource_t * rsc, pe_node_t * node, gboolean optional, pe_working_set_t * data_set);
rsc                42 lib/pacemaker/pcmk_sched_native.c gboolean StopRsc(pe_resource_t * rsc, pe_node_t * next, gboolean optional, pe_working_set_t * data_set);
rsc                43 lib/pacemaker/pcmk_sched_native.c gboolean StartRsc(pe_resource_t * rsc, pe_node_t * next, gboolean optional, pe_working_set_t * data_set);
rsc                44 lib/pacemaker/pcmk_sched_native.c gboolean DemoteRsc(pe_resource_t * rsc, pe_node_t * next, gboolean optional, pe_working_set_t * data_set);
rsc                45 lib/pacemaker/pcmk_sched_native.c gboolean PromoteRsc(pe_resource_t * rsc, pe_node_t * next, gboolean optional,
rsc                47 lib/pacemaker/pcmk_sched_native.c gboolean RoleError(pe_resource_t * rsc, pe_node_t * next, gboolean optional, pe_working_set_t * data_set);
rsc                48 lib/pacemaker/pcmk_sched_native.c gboolean NullOp(pe_resource_t * rsc, pe_node_t * next, gboolean optional, pe_working_set_t * data_set);
rsc                66 lib/pacemaker/pcmk_sched_native.c typedef gboolean (*rsc_transition_fn)(pe_resource_t *rsc, pe_node_t *next,
rsc                88 lib/pacemaker/pcmk_sched_native.c native_choose_node(pe_resource_t * rsc, pe_node_t * prefer, pe_working_set_t * data_set)
rsc                97 lib/pacemaker/pcmk_sched_native.c     pcmk__ban_insufficient_capacity(rsc, &prefer, data_set);
rsc                99 lib/pacemaker/pcmk_sched_native.c     if (!pcmk_is_set(rsc->flags, pe_rsc_provisional)) {
rsc               100 lib/pacemaker/pcmk_sched_native.c         return rsc->allocated_to != NULL;
rsc               104 lib/pacemaker/pcmk_sched_native.c     if (rsc->allowed_nodes) {
rsc               105 lib/pacemaker/pcmk_sched_native.c         length = g_hash_table_size(rsc->allowed_nodes);
rsc               108 lib/pacemaker/pcmk_sched_native.c         nodes = g_hash_table_get_values(rsc->allowed_nodes);
rsc               109 lib/pacemaker/pcmk_sched_native.c         nodes = pcmk__sort_nodes(nodes, pe__current_node(rsc), data_set);
rsc               116 lib/pacemaker/pcmk_sched_native.c         chosen = g_hash_table_lookup(rsc->allowed_nodes, prefer->details->id);
rsc               119 lib/pacemaker/pcmk_sched_native.c             pe_rsc_trace(rsc, "Preferred node %s for %s was unknown",
rsc               120 lib/pacemaker/pcmk_sched_native.c                          prefer->details->uname, rsc->id);
rsc               129 lib/pacemaker/pcmk_sched_native.c             pe_rsc_trace(rsc, "Preferred node %s for %s was unsuitable",
rsc               130 lib/pacemaker/pcmk_sched_native.c                          chosen->details->uname, rsc->id);
rsc               134 lib/pacemaker/pcmk_sched_native.c             pe_rsc_trace(rsc, "Preferred node %s for %s was unavailable",
rsc               135 lib/pacemaker/pcmk_sched_native.c                          chosen->details->uname, rsc->id);
rsc               139 lib/pacemaker/pcmk_sched_native.c             pe_rsc_trace(rsc,
rsc               141 lib/pacemaker/pcmk_sched_native.c                          chosen->details->uname, rsc->id, length);
rsc               151 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "Chose node %s for %s from %d candidates",
rsc               152 lib/pacemaker/pcmk_sched_native.c                      chosen ? chosen->details->uname : "<none>", rsc->id, length);
rsc               154 lib/pacemaker/pcmk_sched_native.c         if (!pe_rsc_is_unique_clone(rsc->parent)
rsc               165 lib/pacemaker/pcmk_sched_native.c             pe_node_t *running = pe__current_node(rsc);
rsc               168 lib/pacemaker/pcmk_sched_native.c                 pe_rsc_trace(rsc, "Current node for %s (%s) can't run resources",
rsc               169 lib/pacemaker/pcmk_sched_native.c                              rsc->id, running->details->uname);
rsc               195 lib/pacemaker/pcmk_sched_native.c                    chosen->details->uname, rsc->id, multiple, score);
rsc               198 lib/pacemaker/pcmk_sched_native.c     result = pcmk__assign_primitive(rsc, chosen, false);
rsc               212 lib/pacemaker/pcmk_sched_native.c best_node_score_matching_attr(const pe_resource_t *rsc, const char *attr,
rsc               221 lib/pacemaker/pcmk_sched_native.c     g_hash_table_iter_init(&iter, rsc->allowed_nodes);
rsc               235 lib/pacemaker/pcmk_sched_native.c                      rsc->id, attr, value);
rsc               239 lib/pacemaker/pcmk_sched_native.c                      best_node, rsc->id, best_score, attr, value);
rsc               260 lib/pacemaker/pcmk_sched_native.c add_node_scores_matching_attr(GHashTable *nodes, const pe_resource_t *rsc,
rsc               279 lib/pacemaker/pcmk_sched_native.c         score = best_node_score_matching_attr(rsc, attr,
rsc               341 lib/pacemaker/pcmk_sched_native.c is_nonempty_group(pe_resource_t *rsc)
rsc               343 lib/pacemaker/pcmk_sched_native.c     return rsc && (rsc->variant == pe_group) && (rsc->children != NULL);
rsc               362 lib/pacemaker/pcmk_sched_native.c pcmk__native_merge_weights(pe_resource_t *rsc, const char *primary_id,
rsc               369 lib/pacemaker/pcmk_sched_native.c     if (pcmk_is_set(rsc->flags, pe_rsc_merging)) {
rsc               370 lib/pacemaker/pcmk_sched_native.c         pe_rsc_info(rsc, "%s: Breaking dependency loop at %s",
rsc               371 lib/pacemaker/pcmk_sched_native.c                     primary_id, rsc->id);
rsc               374 lib/pacemaker/pcmk_sched_native.c     pe__set_resource_flags(rsc, pe_rsc_merging);
rsc               377 lib/pacemaker/pcmk_sched_native.c         if (is_nonempty_group(rsc)) {
rsc               378 lib/pacemaker/pcmk_sched_native.c             GList *last = g_list_last(rsc->children);
rsc               381 lib/pacemaker/pcmk_sched_native.c             pe_rsc_trace(rsc, "%s: Merging scores from group %s "
rsc               383 lib/pacemaker/pcmk_sched_native.c                          primary_id, rsc->id, last_rsc->id, factor);
rsc               387 lib/pacemaker/pcmk_sched_native.c             work = pcmk__copy_node_table(rsc->allowed_nodes);
rsc               389 lib/pacemaker/pcmk_sched_native.c         clear_node_weights_flags(flags, rsc, pe_weights_init);
rsc               391 lib/pacemaker/pcmk_sched_native.c     } else if (is_nonempty_group(rsc)) {
rsc               402 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "%s: Merging scores from first member of group %s "
rsc               403 lib/pacemaker/pcmk_sched_native.c                      "(at %.6f)", primary_id, rsc->id, factor);
rsc               405 lib/pacemaker/pcmk_sched_native.c         work = pcmk__native_merge_weights(rsc->children->data, primary_id, work,
rsc               409 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "%s: Merging scores from %s (at %.6f)",
rsc               410 lib/pacemaker/pcmk_sched_native.c                      primary_id, rsc->id, factor);
rsc               412 lib/pacemaker/pcmk_sched_native.c         add_node_scores_matching_attr(work, rsc, attr, factor,
rsc               421 lib/pacemaker/pcmk_sched_native.c             gIter = rsc->rsc_cons;
rsc               422 lib/pacemaker/pcmk_sched_native.c             pe_rsc_trace(rsc,
rsc               424 lib/pacemaker/pcmk_sched_native.c                          g_list_length(gIter), rsc->id);
rsc               426 lib/pacemaker/pcmk_sched_native.c         } else if (is_nonempty_group(rsc)) {
rsc               427 lib/pacemaker/pcmk_sched_native.c             pe_resource_t *last_rsc = g_list_last(rsc->children)->data;
rsc               430 lib/pacemaker/pcmk_sched_native.c             pe_rsc_trace(rsc, "Checking additional %d optional 'with group %s' "
rsc               432 lib/pacemaker/pcmk_sched_native.c                          g_list_length(gIter), rsc->id, last_rsc->id);
rsc               435 lib/pacemaker/pcmk_sched_native.c             gIter = rsc->rsc_cons_lhs;
rsc               436 lib/pacemaker/pcmk_sched_native.c             pe_rsc_trace(rsc,
rsc               438 lib/pacemaker/pcmk_sched_native.c                          g_list_length(gIter), rsc->id);
rsc               453 lib/pacemaker/pcmk_sched_native.c             pe_rsc_trace(rsc, "Optionally merging score of '%s' constraint (%s with %s)",
rsc               460 lib/pacemaker/pcmk_sched_native.c             pe__show_node_weights(true, NULL, primary_id, work, rsc->cluster);
rsc               464 lib/pacemaker/pcmk_sched_native.c         pe_rsc_info(rsc, "%s: Rolling back optional scores from %s",
rsc               465 lib/pacemaker/pcmk_sched_native.c                     primary_id, rsc->id);
rsc               467 lib/pacemaker/pcmk_sched_native.c         pe__clear_resource_flags(rsc, pe_rsc_merging);
rsc               488 lib/pacemaker/pcmk_sched_native.c     pe__clear_resource_flags(rsc, pe_rsc_merging);
rsc               493 lib/pacemaker/pcmk_sched_native.c pcmk__native_allocate(pe_resource_t *rsc, pe_node_t *prefer,
rsc               498 lib/pacemaker/pcmk_sched_native.c     if (rsc->parent && !pcmk_is_set(rsc->parent->flags, pe_rsc_allocating)) {
rsc               500 lib/pacemaker/pcmk_sched_native.c         pe_rsc_debug(rsc, "Escalating allocation of %s to its parent: %s", rsc->id,
rsc               501 lib/pacemaker/pcmk_sched_native.c                      rsc->parent->id);
rsc               502 lib/pacemaker/pcmk_sched_native.c         rsc->parent->cmds->allocate(rsc->parent, prefer, data_set);
rsc               505 lib/pacemaker/pcmk_sched_native.c     if (!pcmk_is_set(rsc->flags, pe_rsc_provisional)) {
rsc               506 lib/pacemaker/pcmk_sched_native.c         return rsc->allocated_to;
rsc               509 lib/pacemaker/pcmk_sched_native.c     if (pcmk_is_set(rsc->flags, pe_rsc_allocating)) {
rsc               510 lib/pacemaker/pcmk_sched_native.c         pe_rsc_debug(rsc, "Dependency loop detected involving %s", rsc->id);
rsc               514 lib/pacemaker/pcmk_sched_native.c     pe__set_resource_flags(rsc, pe_rsc_allocating);
rsc               515 lib/pacemaker/pcmk_sched_native.c     pe__show_node_weights(true, rsc, "Pre-alloc", rsc->allowed_nodes, data_set);
rsc               517 lib/pacemaker/pcmk_sched_native.c     for (gIter = rsc->rsc_cons; gIter != NULL; gIter = gIter->next) {
rsc               525 lib/pacemaker/pcmk_sched_native.c             archive = pcmk__copy_node_table(rsc->allowed_nodes);
rsc               528 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc,
rsc               530 lib/pacemaker/pcmk_sched_native.c                      rsc->id, primary->id, constraint->id,
rsc               533 lib/pacemaker/pcmk_sched_native.c         rsc->cmds->rsc_colocation_lh(rsc, primary, constraint, data_set);
rsc               534 lib/pacemaker/pcmk_sched_native.c         if (archive && !pcmk__any_node_available(rsc->allowed_nodes)) {
rsc               535 lib/pacemaker/pcmk_sched_native.c             pe_rsc_info(rsc, "%s: Rolling back scores from %s",
rsc               536 lib/pacemaker/pcmk_sched_native.c                         rsc->id, primary->id);
rsc               537 lib/pacemaker/pcmk_sched_native.c             g_hash_table_destroy(rsc->allowed_nodes);
rsc               538 lib/pacemaker/pcmk_sched_native.c             rsc->allowed_nodes = archive;
rsc               546 lib/pacemaker/pcmk_sched_native.c     pe__show_node_weights(true, rsc, "Post-coloc", rsc->allowed_nodes, data_set);
rsc               548 lib/pacemaker/pcmk_sched_native.c     for (gIter = rsc->rsc_cons_lhs; gIter != NULL; gIter = gIter->next) {
rsc               554 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "Merging score of '%s' constraint (%s with %s)",
rsc               557 lib/pacemaker/pcmk_sched_native.c         rsc->allowed_nodes = constraint->dependent->cmds->merge_weights(
rsc               558 lib/pacemaker/pcmk_sched_native.c             constraint->dependent, rsc->id, rsc->allowed_nodes,
rsc               563 lib/pacemaker/pcmk_sched_native.c     if (rsc->next_role == RSC_ROLE_STOPPED) {
rsc               564 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "Making sure %s doesn't get allocated", rsc->id);
rsc               566 lib/pacemaker/pcmk_sched_native.c         resource_location(rsc, NULL, -INFINITY, XML_RSC_ATTR_TARGET_ROLE, data_set);
rsc               568 lib/pacemaker/pcmk_sched_native.c     } else if(rsc->next_role > rsc->role
rsc               572 lib/pacemaker/pcmk_sched_native.c                    rsc->id, role2text(rsc->role), role2text(rsc->next_role));
rsc               573 lib/pacemaker/pcmk_sched_native.c         pe__set_next_role(rsc, rsc->role, "no-quorum-policy=freeze");
rsc               577 lib/pacemaker/pcmk_sched_native.c                           rsc, __func__, rsc->allowed_nodes, data_set);
rsc               580 lib/pacemaker/pcmk_sched_native.c         pe__clear_resource_flags(rsc, pe_rsc_managed);
rsc               583 lib/pacemaker/pcmk_sched_native.c     if (!pcmk_is_set(rsc->flags, pe_rsc_managed)) {
rsc               587 lib/pacemaker/pcmk_sched_native.c         pe__set_next_role(rsc, rsc->role, "unmanaged");
rsc               588 lib/pacemaker/pcmk_sched_native.c         assign_to = pe__current_node(rsc);
rsc               591 lib/pacemaker/pcmk_sched_native.c         } else if (rsc->role == RSC_ROLE_PROMOTED) {
rsc               593 lib/pacemaker/pcmk_sched_native.c         } else if (pcmk_is_set(rsc->flags, pe_rsc_failed)) {
rsc               598 lib/pacemaker/pcmk_sched_native.c         pe_rsc_info(rsc, "Unmanaged resource %s allocated to %s: %s", rsc->id,
rsc               600 lib/pacemaker/pcmk_sched_native.c         pcmk__assign_primitive(rsc, assign_to, true);
rsc               603 lib/pacemaker/pcmk_sched_native.c         pe_rsc_debug(rsc, "Forcing %s to stop", rsc->id);
rsc               604 lib/pacemaker/pcmk_sched_native.c         pcmk__assign_primitive(rsc, NULL, true);
rsc               606 lib/pacemaker/pcmk_sched_native.c     } else if (pcmk_is_set(rsc->flags, pe_rsc_provisional)
rsc               607 lib/pacemaker/pcmk_sched_native.c                && native_choose_node(rsc, prefer, data_set)) {
rsc               608 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "Allocated resource %s to %s", rsc->id,
rsc               609 lib/pacemaker/pcmk_sched_native.c                      rsc->allocated_to->details->uname);
rsc               611 lib/pacemaker/pcmk_sched_native.c     } else if (rsc->allocated_to == NULL) {
rsc               612 lib/pacemaker/pcmk_sched_native.c         if (!pcmk_is_set(rsc->flags, pe_rsc_orphan)) {
rsc               613 lib/pacemaker/pcmk_sched_native.c             pe_rsc_info(rsc, "Resource %s cannot run anywhere", rsc->id);
rsc               614 lib/pacemaker/pcmk_sched_native.c         } else if (rsc->running_on != NULL) {
rsc               615 lib/pacemaker/pcmk_sched_native.c             pe_rsc_info(rsc, "Stopping orphan resource %s", rsc->id);
rsc               619 lib/pacemaker/pcmk_sched_native.c         pe_rsc_debug(rsc, "Pre-Allocated resource %s to %s", rsc->id,
rsc               620 lib/pacemaker/pcmk_sched_native.c                      rsc->allocated_to->details->uname);
rsc               623 lib/pacemaker/pcmk_sched_native.c     pe__clear_resource_flags(rsc, pe_rsc_allocating);
rsc               625 lib/pacemaker/pcmk_sched_native.c     if (rsc->is_remote_node) {
rsc               626 lib/pacemaker/pcmk_sched_native.c         pe_node_t *remote_node = pe_find_node(data_set->nodes, rsc->id);
rsc               629 lib/pacemaker/pcmk_sched_native.c         if (rsc->allocated_to && rsc->next_role != RSC_ROLE_STOPPED) {
rsc               641 lib/pacemaker/pcmk_sched_native.c                       remote_node->details->id, role2text(rsc->next_role),
rsc               642 lib/pacemaker/pcmk_sched_native.c                       (rsc->allocated_to? "" : "un"));
rsc               647 lib/pacemaker/pcmk_sched_native.c     return rsc->allocated_to;
rsc               651 lib/pacemaker/pcmk_sched_native.c is_op_dup(pe_resource_t *rsc, const char *name, guint interval_ms)
rsc               659 lib/pacemaker/pcmk_sched_native.c     CRM_ASSERT(rsc);
rsc               660 lib/pacemaker/pcmk_sched_native.c     for (operation = pcmk__xe_first_child(rsc->ops_xml); operation != NULL;
rsc               697 lib/pacemaker/pcmk_sched_native.c RecurringOp(pe_resource_t * rsc, pe_action_t * start, pe_node_t * node,
rsc               711 lib/pacemaker/pcmk_sched_native.c     CRM_ASSERT(rsc);
rsc               726 lib/pacemaker/pcmk_sched_native.c     if (is_op_dup(rsc, name, interval_ms)) {
rsc               738 lib/pacemaker/pcmk_sched_native.c     key = pcmk__op_key(rsc->id, name, interval_ms);
rsc               739 lib/pacemaker/pcmk_sched_native.c     if (find_rsc_op_entry(rsc, key) == NULL) {
rsc               741 lib/pacemaker/pcmk_sched_native.c                   ID(operation), rsc->id);
rsc               746 lib/pacemaker/pcmk_sched_native.c     pe_rsc_trace(rsc, "Creating recurring action %s for %s in role %s on %s",
rsc               747 lib/pacemaker/pcmk_sched_native.c                  ID(operation), rsc->id, role2text(rsc->next_role), node_uname);
rsc               750 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "Marking %s %s due to %s", key,
rsc               753 lib/pacemaker/pcmk_sched_native.c         is_optional = (rsc->cmds->action_flags(start, NULL) & pe_action_optional);
rsc               755 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "Marking %s optional", key);
rsc               760 lib/pacemaker/pcmk_sched_native.c     possible_matches = find_actions_exact(rsc->actions, key, node);
rsc               763 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "Marking %s mandatory: not active", key);
rsc               779 lib/pacemaker/pcmk_sched_native.c     if (((rsc->next_role == RSC_ROLE_PROMOTED) && (role == NULL))
rsc               780 lib/pacemaker/pcmk_sched_native.c         || (role != NULL && text2role(role) != rsc->next_role)) {
rsc               791 lib/pacemaker/pcmk_sched_native.c             cancel_op = pcmk__new_cancel_action(rsc, name, interval_ms, node);
rsc               793 lib/pacemaker/pcmk_sched_native.c             switch (rsc->role) {
rsc               796 lib/pacemaker/pcmk_sched_native.c                     if (rsc->next_role == RSC_ROLE_PROMOTED) {
rsc               797 lib/pacemaker/pcmk_sched_native.c                         after_key = promote_key(rsc);
rsc               799 lib/pacemaker/pcmk_sched_native.c                     } else if (rsc->next_role == RSC_ROLE_STOPPED) {
rsc               800 lib/pacemaker/pcmk_sched_native.c                         after_key = stop_key(rsc);
rsc               805 lib/pacemaker/pcmk_sched_native.c                     after_key = demote_key(rsc);
rsc               812 lib/pacemaker/pcmk_sched_native.c                 pcmk__new_ordering(rsc, NULL, cancel_op, rsc, after_key, NULL,
rsc               819 lib/pacemaker/pcmk_sched_native.c                    role2text(rsc->next_role));
rsc               825 lib/pacemaker/pcmk_sched_native.c     mon = custom_action(rsc, key, name, node, is_optional, TRUE, data_set);
rsc               828 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "%s\t   %s (optional)", node_uname, mon->uuid);
rsc               832 lib/pacemaker/pcmk_sched_native.c         pe_rsc_debug(rsc, "%s\t   %s (cancelled : start un-runnable)",
rsc               837 lib/pacemaker/pcmk_sched_native.c         pe_rsc_debug(rsc, "%s\t   %s (cancelled : no node available)",
rsc               842 lib/pacemaker/pcmk_sched_native.c         pe_rsc_info(rsc, " Start recurring %s (%us) for %s on %s",
rsc               843 lib/pacemaker/pcmk_sched_native.c                     mon->task, interval_ms / 1000, rsc->id, node_uname);
rsc               846 lib/pacemaker/pcmk_sched_native.c     if (rsc->next_role == RSC_ROLE_PROMOTED) {
rsc               853 lib/pacemaker/pcmk_sched_native.c     if ((node == NULL) || pcmk_is_set(rsc->flags, pe_rsc_managed)) {
rsc               854 lib/pacemaker/pcmk_sched_native.c         pcmk__new_ordering(rsc, start_key(rsc), NULL, NULL, strdup(key), mon,
rsc               858 lib/pacemaker/pcmk_sched_native.c         pcmk__new_ordering(rsc, reload_key(rsc), NULL, NULL, strdup(key), mon,
rsc               862 lib/pacemaker/pcmk_sched_native.c         if (rsc->next_role == RSC_ROLE_PROMOTED) {
rsc               863 lib/pacemaker/pcmk_sched_native.c             pcmk__new_ordering(rsc, promote_key(rsc), NULL, rsc, NULL, mon,
rsc               867 lib/pacemaker/pcmk_sched_native.c         } else if (rsc->role == RSC_ROLE_PROMOTED) {
rsc               868 lib/pacemaker/pcmk_sched_native.c             pcmk__new_ordering(rsc, demote_key(rsc), NULL, rsc, NULL, mon,
rsc               876 lib/pacemaker/pcmk_sched_native.c Recurring(pe_resource_t * rsc, pe_action_t * start, pe_node_t * node, pe_working_set_t * data_set)
rsc               878 lib/pacemaker/pcmk_sched_native.c     if (!pcmk_is_set(rsc->flags, pe_rsc_maintenance) &&
rsc               882 lib/pacemaker/pcmk_sched_native.c         for (operation = pcmk__xe_first_child(rsc->ops_xml);
rsc               887 lib/pacemaker/pcmk_sched_native.c                 RecurringOp(rsc, start, node, operation, data_set);
rsc               894 lib/pacemaker/pcmk_sched_native.c RecurringOp_Stopped(pe_resource_t * rsc, pe_action_t * start, pe_node_t * node,
rsc               920 lib/pacemaker/pcmk_sched_native.c     if (is_op_dup(rsc, name, interval_ms)) {
rsc               932 lib/pacemaker/pcmk_sched_native.c     key = pcmk__op_key(rsc->id, name, interval_ms);
rsc               933 lib/pacemaker/pcmk_sched_native.c     if (find_rsc_op_entry(rsc, key) == NULL) {
rsc               935 lib/pacemaker/pcmk_sched_native.c                   ID(operation), rsc->id);
rsc               941 lib/pacemaker/pcmk_sched_native.c     if (!pcmk_is_set(rsc->flags, pe_rsc_unique)) {
rsc               948 lib/pacemaker/pcmk_sched_native.c     pe_rsc_trace(rsc,
rsc               950 lib/pacemaker/pcmk_sched_native.c                  ID(operation), rsc->id, role2text(rsc->next_role));
rsc               954 lib/pacemaker/pcmk_sched_native.c         possible_matches = find_actions_exact(rsc->actions, key, node);
rsc               960 lib/pacemaker/pcmk_sched_native.c             cancel_op = pcmk__new_cancel_action(rsc, name, interval_ms, node);
rsc               962 lib/pacemaker/pcmk_sched_native.c             if ((rsc->next_role == RSC_ROLE_STARTED)
rsc               963 lib/pacemaker/pcmk_sched_native.c                 || (rsc->next_role == RSC_ROLE_UNPROMOTED)) {
rsc               966 lib/pacemaker/pcmk_sched_native.c                 pcmk__new_ordering(rsc, NULL, cancel_op, rsc, start_key(rsc),
rsc               970 lib/pacemaker/pcmk_sched_native.c             pe_rsc_info(rsc, "Cancel action %s (%s vs. %s) on %s",
rsc               971 lib/pacemaker/pcmk_sched_native.c                         key, role, role2text(rsc->next_role), node_uname);
rsc               990 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "Creating recurring action %s for %s on %s",
rsc               991 lib/pacemaker/pcmk_sched_native.c                      ID(operation), rsc->id, crm_str(stop_node_uname));
rsc               994 lib/pacemaker/pcmk_sched_native.c         possible_matches = find_actions_exact(rsc->actions, key, stop_node);
rsc               996 lib/pacemaker/pcmk_sched_native.c             pe_rsc_trace(rsc, "Marking %s mandatory on %s: not active", key,
rsc              1000 lib/pacemaker/pcmk_sched_native.c             pe_rsc_trace(rsc, "Marking %s optional on %s: already active", key,
rsc              1006 lib/pacemaker/pcmk_sched_native.c         stopped_mon = custom_action(rsc, strdup(key), name, stop_node, is_optional, TRUE, data_set);
rsc              1012 lib/pacemaker/pcmk_sched_native.c         if (pcmk_is_set(rsc->flags, pe_rsc_managed)) {
rsc              1013 lib/pacemaker/pcmk_sched_native.c             GList *probes = pe__resource_actions(rsc, stop_node, RSC_STATUS,
rsc              1027 lib/pacemaker/pcmk_sched_native.c         stop_ops = pe__resource_actions(rsc, stop_node, RSC_STOP, TRUE);
rsc              1042 lib/pacemaker/pcmk_sched_native.c             if (pcmk_is_set(rsc->flags, pe_rsc_managed)) {
rsc              1043 lib/pacemaker/pcmk_sched_native.c                 pcmk__new_ordering(rsc, stop_key(rsc), stop, NULL, strdup(key),
rsc              1056 lib/pacemaker/pcmk_sched_native.c             && !pcmk_is_set(rsc->flags, pe_rsc_managed)) {
rsc              1057 lib/pacemaker/pcmk_sched_native.c             pe_rsc_trace(rsc, "Marking %s optional on %s due to unmanaged",
rsc              1063 lib/pacemaker/pcmk_sched_native.c             pe_rsc_trace(rsc, "%s\t   %s (optional)", crm_str(stop_node_uname), stopped_mon->uuid);
rsc              1067 lib/pacemaker/pcmk_sched_native.c             pe_rsc_debug(rsc, "%s\t   %s (cancelled : no node available)",
rsc              1075 lib/pacemaker/pcmk_sched_native.c                        interval_ms / 1000, rsc->id, crm_str(stop_node_uname));
rsc              1083 lib/pacemaker/pcmk_sched_native.c Recurring_Stopped(pe_resource_t * rsc, pe_action_t * start, pe_node_t * node, pe_working_set_t * data_set)
rsc              1085 lib/pacemaker/pcmk_sched_native.c     if (!pcmk_is_set(rsc->flags, pe_rsc_maintenance) &&
rsc              1089 lib/pacemaker/pcmk_sched_native.c         for (operation = pcmk__xe_first_child(rsc->ops_xml);
rsc              1094 lib/pacemaker/pcmk_sched_native.c                 RecurringOp_Stopped(rsc, start, node, operation, data_set);
rsc              1101 lib/pacemaker/pcmk_sched_native.c handle_migration_actions(pe_resource_t * rsc, pe_node_t *current, pe_node_t *chosen, pe_working_set_t * data_set)
rsc              1107 lib/pacemaker/pcmk_sched_native.c     gboolean partial = rsc->partial_migration_target ? TRUE : FALSE;
rsc              1109 lib/pacemaker/pcmk_sched_native.c     pe_rsc_trace(rsc, "Processing migration actions %s moving from %s to %s . partial migration = %s",
rsc              1110 lib/pacemaker/pcmk_sched_native.c     rsc->id, current->details->id, chosen->details->id, partial ? "TRUE" : "FALSE");
rsc              1111 lib/pacemaker/pcmk_sched_native.c     start = start_action(rsc, chosen, TRUE);
rsc              1112 lib/pacemaker/pcmk_sched_native.c     stop = stop_action(rsc, current, TRUE);
rsc              1115 lib/pacemaker/pcmk_sched_native.c         migrate_to = custom_action(rsc, pcmk__op_key(rsc->id, RSC_MIGRATE, 0),
rsc              1119 lib/pacemaker/pcmk_sched_native.c     migrate_from = custom_action(rsc, pcmk__op_key(rsc->id, RSC_MIGRATED, 0),
rsc              1135 lib/pacemaker/pcmk_sched_native.c             pcmk__new_ordering(rsc, pcmk__op_key(rsc->id, RSC_STATUS, 0), NULL,
rsc              1136 lib/pacemaker/pcmk_sched_native.c                                rsc, pcmk__op_key(rsc->id, RSC_MIGRATED, 0),
rsc              1144 lib/pacemaker/pcmk_sched_native.c             pcmk__new_ordering(rsc, pcmk__op_key(rsc->id, RSC_STATUS, 0), NULL,
rsc              1145 lib/pacemaker/pcmk_sched_native.c                                rsc, pcmk__op_key(rsc->id, RSC_MIGRATE, 0),
rsc              1147 lib/pacemaker/pcmk_sched_native.c             pcmk__new_ordering(rsc, pcmk__op_key(rsc->id, RSC_MIGRATE, 0), NULL,
rsc              1148 lib/pacemaker/pcmk_sched_native.c                                rsc, pcmk__op_key(rsc->id, RSC_MIGRATED, 0),
rsc              1154 lib/pacemaker/pcmk_sched_native.c         pcmk__new_ordering(rsc, pcmk__op_key(rsc->id, RSC_MIGRATED, 0), NULL,
rsc              1155 lib/pacemaker/pcmk_sched_native.c                            rsc, pcmk__op_key(rsc->id, RSC_STOP, 0), NULL,
rsc              1158 lib/pacemaker/pcmk_sched_native.c         pcmk__new_ordering(rsc, pcmk__op_key(rsc->id, RSC_MIGRATED, 0), NULL,
rsc              1159 lib/pacemaker/pcmk_sched_native.c                            rsc, pcmk__op_key(rsc->id, RSC_START, 0), NULL,
rsc              1171 lib/pacemaker/pcmk_sched_native.c         if (rsc->is_remote_node == FALSE) {
rsc              1201 lib/pacemaker/pcmk_sched_native.c schedule_restart_actions(pe_resource_t *rsc, pe_node_t *current,
rsc              1204 lib/pacemaker/pcmk_sched_native.c     enum rsc_role_e role = rsc->role;
rsc              1207 lib/pacemaker/pcmk_sched_native.c     pe__set_resource_flags(rsc, pe_rsc_restarting);
rsc              1212 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "Creating %s action to take %s down from %s to %s",
rsc              1213 lib/pacemaker/pcmk_sched_native.c                      (need_stop? "required" : "optional"), rsc->id,
rsc              1215 lib/pacemaker/pcmk_sched_native.c         if (!rsc_action_matrix[role][next_role](rsc, current, !need_stop,
rsc              1216 lib/pacemaker/pcmk_sched_native.c                                                 rsc->cluster)) {
rsc              1223 lib/pacemaker/pcmk_sched_native.c     while ((rsc->role <= rsc->next_role) && (role != rsc->role)
rsc              1224 lib/pacemaker/pcmk_sched_native.c            && !pcmk_is_set(rsc->flags, pe_rsc_block)) {
rsc              1227 lib/pacemaker/pcmk_sched_native.c         next_role = rsc_state_matrix[role][rsc->role];
rsc              1231 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "Creating %s action to take %s up from %s to %s",
rsc              1232 lib/pacemaker/pcmk_sched_native.c                      (required? "required" : "optional"), rsc->id,
rsc              1234 lib/pacemaker/pcmk_sched_native.c         if (!rsc_action_matrix[role][next_role](rsc, chosen, !required,
rsc              1235 lib/pacemaker/pcmk_sched_native.c                                                 rsc->cluster)) {
rsc              1241 lib/pacemaker/pcmk_sched_native.c     pe__clear_resource_flags(rsc, pe_rsc_restarting);
rsc              1245 lib/pacemaker/pcmk_sched_native.c native_create_actions(pe_resource_t * rsc, pe_working_set_t * data_set)
rsc              1262 lib/pacemaker/pcmk_sched_native.c     CRM_ASSERT(rsc != NULL);
rsc              1263 lib/pacemaker/pcmk_sched_native.c     allow_migrate = pcmk_is_set(rsc->flags, pe_rsc_allow_migrate)? TRUE : FALSE;
rsc              1265 lib/pacemaker/pcmk_sched_native.c     chosen = rsc->allocated_to;
rsc              1266 lib/pacemaker/pcmk_sched_native.c     next_role = rsc->next_role;
rsc              1268 lib/pacemaker/pcmk_sched_native.c         pe__set_next_role(rsc,
rsc              1272 lib/pacemaker/pcmk_sched_native.c     pe_rsc_trace(rsc, "Creating all actions for %s transition from %s to %s (%s) on %s",
rsc              1273 lib/pacemaker/pcmk_sched_native.c                  rsc->id, role2text(rsc->role), role2text(rsc->next_role),
rsc              1277 lib/pacemaker/pcmk_sched_native.c     current = pe__find_active_on(rsc, &num_all_active, &num_clean_active);
rsc              1279 lib/pacemaker/pcmk_sched_native.c     for (gIter = rsc->dangling_migrations; gIter != NULL; gIter = gIter->next) {
rsc              1284 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "Creating stop action %sfor %s on %s due to dangling migration",
rsc              1286 lib/pacemaker/pcmk_sched_native.c                      rsc->id, dangling_source->details->uname);
rsc              1287 lib/pacemaker/pcmk_sched_native.c         stop = stop_action(rsc, dangling_source, FALSE);
rsc              1290 lib/pacemaker/pcmk_sched_native.c             DeleteRsc(rsc, dangling_source, FALSE, data_set);
rsc              1295 lib/pacemaker/pcmk_sched_native.c         && rsc->partial_migration_source && rsc->partial_migration_target
rsc              1296 lib/pacemaker/pcmk_sched_native.c         && (current->details == rsc->partial_migration_source->details)
rsc              1297 lib/pacemaker/pcmk_sched_native.c         && (chosen->details == rsc->partial_migration_target->details)) {
rsc              1303 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "Will attempt to continue with partial migration "
rsc              1305 lib/pacemaker/pcmk_sched_native.c                      rsc->partial_migration_target->details->id,
rsc              1306 lib/pacemaker/pcmk_sched_native.c                      rsc->partial_migration_source->details->id);
rsc              1308 lib/pacemaker/pcmk_sched_native.c     } else if (!pcmk_is_set(rsc->flags, pe_rsc_needs_fencing)) {
rsc              1322 lib/pacemaker/pcmk_sched_native.c         if (rsc->partial_migration_target && rsc->partial_migration_source) {
rsc              1326 lib/pacemaker/pcmk_sched_native.c                        rsc->id, rsc->partial_migration_source->details->uname,
rsc              1327 lib/pacemaker/pcmk_sched_native.c                        rsc->partial_migration_target->details->uname);
rsc              1331 lib/pacemaker/pcmk_sched_native.c             const char *class = crm_element_value(rsc->xml, XML_AGENT_ATTR_CLASS);
rsc              1335 lib/pacemaker/pcmk_sched_native.c                         crm_str(class), rsc->id, num_all_active,
rsc              1336 lib/pacemaker/pcmk_sched_native.c                         recovery2text(rsc->recovery_type));
rsc              1340 lib/pacemaker/pcmk_sched_native.c         switch (rsc->recovery_type) {
rsc              1346 lib/pacemaker/pcmk_sched_native.c                 pe__set_resource_flags(rsc, pe_rsc_stop_unexpected);
rsc              1355 lib/pacemaker/pcmk_sched_native.c         rsc->partial_migration_source = rsc->partial_migration_target = NULL;
rsc              1360 lib/pacemaker/pcmk_sched_native.c         pe__clear_resource_flags(rsc, pe_rsc_stop_unexpected);
rsc              1363 lib/pacemaker/pcmk_sched_native.c     if (pcmk_is_set(rsc->flags, pe_rsc_start_pending)) {
rsc              1364 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "Creating start action for %s to represent already pending start",
rsc              1365 lib/pacemaker/pcmk_sched_native.c                      rsc->id);
rsc              1366 lib/pacemaker/pcmk_sched_native.c         start = start_action(rsc, chosen, TRUE);
rsc              1371 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "Moving %s from %s to %s",
rsc              1372 lib/pacemaker/pcmk_sched_native.c                      rsc->id, crm_str(current->details->uname),
rsc              1377 lib/pacemaker/pcmk_sched_native.c     } else if (pcmk_is_set(rsc->flags, pe_rsc_failed)) {
rsc              1378 lib/pacemaker/pcmk_sched_native.c         if (pcmk_is_set(rsc->flags, pe_rsc_stop)) {
rsc              1380 lib/pacemaker/pcmk_sched_native.c             pe_rsc_trace(rsc, "Recovering %s", rsc->id);
rsc              1382 lib/pacemaker/pcmk_sched_native.c             pe_rsc_trace(rsc, "Recovering %s by demotion", rsc->id);
rsc              1383 lib/pacemaker/pcmk_sched_native.c             if (rsc->next_role == RSC_ROLE_PROMOTED) {
rsc              1388 lib/pacemaker/pcmk_sched_native.c     } else if (pcmk_is_set(rsc->flags, pe_rsc_block)) {
rsc              1389 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "Blocking further actions on %s", rsc->id);
rsc              1392 lib/pacemaker/pcmk_sched_native.c     } else if (rsc->role > RSC_ROLE_STARTED && current != NULL && chosen != NULL) {
rsc              1393 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "Creating start action for promoted resource %s",
rsc              1394 lib/pacemaker/pcmk_sched_native.c                      rsc->id);
rsc              1395 lib/pacemaker/pcmk_sched_native.c         start = start_action(rsc, chosen, TRUE);
rsc              1398 lib/pacemaker/pcmk_sched_native.c             pe_rsc_trace(rsc, "%s restart is required for recovery", rsc->id);
rsc              1406 lib/pacemaker/pcmk_sched_native.c     schedule_restart_actions(rsc, current, chosen, need_stop, need_promote);
rsc              1409 lib/pacemaker/pcmk_sched_native.c     role = rsc->role;
rsc              1410 lib/pacemaker/pcmk_sched_native.c     while (role != rsc->next_role) {
rsc              1411 lib/pacemaker/pcmk_sched_native.c         next_role = rsc_state_matrix[role][rsc->next_role];
rsc              1412 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "Creating action to take %s from %s to %s (ending at %s)",
rsc              1413 lib/pacemaker/pcmk_sched_native.c                      rsc->id, role2text(role), role2text(next_role),
rsc              1414 lib/pacemaker/pcmk_sched_native.c                      role2text(rsc->next_role));
rsc              1415 lib/pacemaker/pcmk_sched_native.c         if (rsc_action_matrix[role][next_role] (rsc, chosen, FALSE, data_set) == FALSE) {
rsc              1421 lib/pacemaker/pcmk_sched_native.c     if (pcmk_is_set(rsc->flags, pe_rsc_block)) {
rsc              1422 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "Not creating recurring monitors for blocked resource %s",
rsc              1423 lib/pacemaker/pcmk_sched_native.c                      rsc->id);
rsc              1425 lib/pacemaker/pcmk_sched_native.c     } else if ((rsc->next_role != RSC_ROLE_STOPPED)
rsc              1426 lib/pacemaker/pcmk_sched_native.c                || !pcmk_is_set(rsc->flags, pe_rsc_managed)) {
rsc              1427 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "Creating recurring monitors for %s resource %s",
rsc              1428 lib/pacemaker/pcmk_sched_native.c                      ((rsc->next_role == RSC_ROLE_STOPPED)? "unmanaged" : "active"),
rsc              1429 lib/pacemaker/pcmk_sched_native.c                      rsc->id);
rsc              1430 lib/pacemaker/pcmk_sched_native.c         start = start_action(rsc, chosen, TRUE);
rsc              1431 lib/pacemaker/pcmk_sched_native.c         Recurring(rsc, start, chosen, data_set);
rsc              1432 lib/pacemaker/pcmk_sched_native.c         Recurring_Stopped(rsc, start, chosen, data_set);
rsc              1435 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "Creating recurring monitors for inactive resource %s",
rsc              1436 lib/pacemaker/pcmk_sched_native.c                      rsc->id);
rsc              1437 lib/pacemaker/pcmk_sched_native.c         Recurring_Stopped(rsc, NULL, NULL, data_set);
rsc              1443 lib/pacemaker/pcmk_sched_native.c     if (rsc->partial_migration_target && (chosen == NULL || rsc->partial_migration_target->details != chosen->details)) {
rsc              1444 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "Not allowing partial migration of %s to continue",
rsc              1445 lib/pacemaker/pcmk_sched_native.c                      rsc->id);
rsc              1448 lib/pacemaker/pcmk_sched_native.c     } else if (!is_moving || !pcmk_is_set(rsc->flags, pe_rsc_managed)
rsc              1449 lib/pacemaker/pcmk_sched_native.c                || pcmk_any_flags_set(rsc->flags,
rsc              1452 lib/pacemaker/pcmk_sched_native.c                || rsc->next_role < RSC_ROLE_STARTED) {
rsc              1458 lib/pacemaker/pcmk_sched_native.c         handle_migration_actions(rsc, current, chosen, data_set);
rsc              1463 lib/pacemaker/pcmk_sched_native.c rsc_avoids_remote_nodes(pe_resource_t *rsc)
rsc              1467 lib/pacemaker/pcmk_sched_native.c     g_hash_table_iter_init(&iter, rsc->allowed_nodes);
rsc              1490 lib/pacemaker/pcmk_sched_native.c allowed_nodes_as_list(pe_resource_t *rsc, pe_working_set_t *data_set)
rsc              1494 lib/pacemaker/pcmk_sched_native.c     if (rsc->allowed_nodes) {
rsc              1495 lib/pacemaker/pcmk_sched_native.c         allowed_nodes = g_hash_table_get_values(rsc->allowed_nodes);
rsc              1506 lib/pacemaker/pcmk_sched_native.c native_internal_constraints(pe_resource_t * rsc, pe_working_set_t * data_set)
rsc              1515 lib/pacemaker/pcmk_sched_native.c     if (!pcmk_is_set(rsc->flags, pe_rsc_managed)) {
rsc              1516 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc,
rsc              1518 lib/pacemaker/pcmk_sched_native.c                      rsc->id);
rsc              1522 lib/pacemaker/pcmk_sched_native.c     top = uber_parent(rsc);
rsc              1525 lib/pacemaker/pcmk_sched_native.c     check_unfencing = !pcmk_is_set(rsc->flags, pe_rsc_fence_device)
rsc              1527 lib/pacemaker/pcmk_sched_native.c                       && pcmk_is_set(rsc->flags, pe_rsc_needs_unfencing);
rsc              1530 lib/pacemaker/pcmk_sched_native.c     check_utilization = (g_hash_table_size(rsc->utilization) > 0)
rsc              1535 lib/pacemaker/pcmk_sched_native.c     pcmk__new_ordering(rsc, pcmk__op_key(rsc->id, RSC_STOP, 0), NULL,
rsc              1536 lib/pacemaker/pcmk_sched_native.c                        rsc, pcmk__op_key(rsc->id, RSC_START, 0), NULL,
rsc              1542 lib/pacemaker/pcmk_sched_native.c         || (rsc->role > RSC_ROLE_UNPROMOTED)) {
rsc              1544 lib/pacemaker/pcmk_sched_native.c         pcmk__new_ordering(rsc, pcmk__op_key(rsc->id, RSC_DEMOTE, 0), NULL,
rsc              1545 lib/pacemaker/pcmk_sched_native.c                            rsc, pcmk__op_key(rsc->id, RSC_STOP, 0), NULL,
rsc              1548 lib/pacemaker/pcmk_sched_native.c         pcmk__new_ordering(rsc, pcmk__op_key(rsc->id, RSC_START, 0), NULL,
rsc              1549 lib/pacemaker/pcmk_sched_native.c                            rsc, pcmk__op_key(rsc->id, RSC_PROMOTE, 0), NULL,
rsc              1554 lib/pacemaker/pcmk_sched_native.c     pcmk__new_ordering(rsc, pcmk__op_key(rsc->id, CRM_OP_LRM_DELETE, 0),
rsc              1555 lib/pacemaker/pcmk_sched_native.c                        NULL, rsc, pcmk__op_key(rsc->id, RSC_STATUS, 0),
rsc              1560 lib/pacemaker/pcmk_sched_native.c     if (check_unfencing || check_utilization || rsc->container) {
rsc              1561 lib/pacemaker/pcmk_sched_native.c         allowed_nodes = allowed_nodes_as_list(rsc, data_set);
rsc              1572 lib/pacemaker/pcmk_sched_native.c                       rsc->id, unfence->uuid);
rsc              1589 lib/pacemaker/pcmk_sched_native.c             pcmk__new_ordering(rsc, stop_key(rsc), NULL,
rsc              1594 lib/pacemaker/pcmk_sched_native.c                                rsc, start_key(rsc), NULL,
rsc              1601 lib/pacemaker/pcmk_sched_native.c         pcmk__create_utilization_constraints(rsc, allowed_nodes);
rsc              1604 lib/pacemaker/pcmk_sched_native.c     if (rsc->container) {
rsc              1607 lib/pacemaker/pcmk_sched_native.c         if (rsc->is_remote_node) {
rsc              1614 lib/pacemaker/pcmk_sched_native.c             if (!pcmk_is_set(rsc->flags, pe_rsc_allow_remote_remotes)) {
rsc              1615 lib/pacemaker/pcmk_sched_native.c                 rsc_avoids_remote_nodes(rsc->container);
rsc              1624 lib/pacemaker/pcmk_sched_native.c             pcmk__order_resource_actions(rsc->container, RSC_STATUS, rsc,
rsc              1634 lib/pacemaker/pcmk_sched_native.c         } else if (rsc->container->is_remote_node) {
rsc              1635 lib/pacemaker/pcmk_sched_native.c             remote_rsc = rsc->container;
rsc              1638 lib/pacemaker/pcmk_sched_native.c                                                           rsc->container);
rsc              1661 lib/pacemaker/pcmk_sched_native.c                       rsc->id, rsc->container->id);
rsc              1663 lib/pacemaker/pcmk_sched_native.c             pcmk__new_ordering(rsc->container,
rsc              1664 lib/pacemaker/pcmk_sched_native.c                                pcmk__op_key(rsc->container->id, RSC_START, 0),
rsc              1665 lib/pacemaker/pcmk_sched_native.c                                NULL, rsc, pcmk__op_key(rsc->id, RSC_START, 0),
rsc              1670 lib/pacemaker/pcmk_sched_native.c             pcmk__new_ordering(rsc, pcmk__op_key(rsc->id, RSC_STOP, 0), NULL,
rsc              1671 lib/pacemaker/pcmk_sched_native.c                                rsc->container,
rsc              1672 lib/pacemaker/pcmk_sched_native.c                                pcmk__op_key(rsc->container->id, RSC_STOP, 0),
rsc              1675 lib/pacemaker/pcmk_sched_native.c             if (pcmk_is_set(rsc->flags, pe_rsc_allow_remote_remotes)) {
rsc              1680 lib/pacemaker/pcmk_sched_native.c             pcmk__new_colocation("resource-with-container", NULL, score, rsc,
rsc              1681 lib/pacemaker/pcmk_sched_native.c                                  rsc->container, NULL, NULL, true, data_set);
rsc              1685 lib/pacemaker/pcmk_sched_native.c     if (rsc->is_remote_node || pcmk_is_set(rsc->flags, pe_rsc_fence_device)) {
rsc              1688 lib/pacemaker/pcmk_sched_native.c         rsc_avoids_remote_nodes(rsc);
rsc              1751 lib/pacemaker/pcmk_sched_native.c     return action && action->rsc && (action->rsc->variant == pe_native);
rsc              1765 lib/pacemaker/pcmk_sched_native.c             if ((action)->rsc != (reason)->rsc) {                           \
rsc              1807 lib/pacemaker/pcmk_sched_native.c         && pcmk_is_set(then->rsc->flags, pe_rsc_managed)
rsc              1808 lib/pacemaker/pcmk_sched_native.c         && (first->rsc == then->rsc)) {
rsc              1816 lib/pacemaker/pcmk_sched_native.c     pe_rsc_trace(first->rsc, "Handling %s -> %s for %s",
rsc              1853 lib/pacemaker/pcmk_sched_native.c         pe_resource_t *then_rsc = then->rsc;
rsc              1901 lib/pacemaker/pcmk_sched_native.c             (then->rsc != NULL) && (then->rsc->role == RSC_ROLE_PROMOTED)) {
rsc              1959 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(then->rsc,
rsc              1966 lib/pacemaker/pcmk_sched_native.c         if(then->rsc && then->rsc->parent) {
rsc              1974 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(first->rsc,
rsc              1986 lib/pacemaker/pcmk_sched_native.c native_rsc_location(pe_resource_t *rsc, pe__location_t *constraint)
rsc              1988 lib/pacemaker/pcmk_sched_native.c     pcmk__apply_location(constraint, rsc);
rsc              1992 lib/pacemaker/pcmk_sched_native.c native_expand(pe_resource_t * rsc, pe_working_set_t * data_set)
rsc              1996 lib/pacemaker/pcmk_sched_native.c     CRM_ASSERT(rsc);
rsc              1997 lib/pacemaker/pcmk_sched_native.c     pe_rsc_trace(rsc, "Processing actions from %s", rsc->id);
rsc              1999 lib/pacemaker/pcmk_sched_native.c     for (gIter = rsc->actions; gIter != NULL; gIter = gIter->next) {
rsc              2002 lib/pacemaker/pcmk_sched_native.c         crm_trace("processing action %d for rsc=%s", action->id, rsc->id);
rsc              2006 lib/pacemaker/pcmk_sched_native.c     for (gIter = rsc->children; gIter != NULL; gIter = gIter->next) {
rsc              2027 lib/pacemaker/pcmk_sched_native.c is_expected_node(const pe_resource_t *rsc, const pe_node_t *node)
rsc              2029 lib/pacemaker/pcmk_sched_native.c     return pcmk_all_flags_set(rsc->flags,
rsc              2031 lib/pacemaker/pcmk_sched_native.c            && (rsc->next_role > RSC_ROLE_STOPPED)
rsc              2032 lib/pacemaker/pcmk_sched_native.c            && (rsc->allocated_to != NULL) && (node != NULL)
rsc              2033 lib/pacemaker/pcmk_sched_native.c            && (rsc->allocated_to->details == node->details);
rsc              2037 lib/pacemaker/pcmk_sched_native.c StopRsc(pe_resource_t * rsc, pe_node_t * next, gboolean optional, pe_working_set_t * data_set)
rsc              2041 lib/pacemaker/pcmk_sched_native.c     CRM_ASSERT(rsc);
rsc              2043 lib/pacemaker/pcmk_sched_native.c     for (gIter = rsc->running_on; gIter != NULL; gIter = gIter->next) {
rsc              2047 lib/pacemaker/pcmk_sched_native.c         if (is_expected_node(rsc, current)) {
rsc              2052 lib/pacemaker/pcmk_sched_native.c             pe_rsc_trace(rsc,
rsc              2055 lib/pacemaker/pcmk_sched_native.c                          rsc->id, current->details->uname);
rsc              2059 lib/pacemaker/pcmk_sched_native.c         if (rsc->partial_migration_target) {
rsc              2060 lib/pacemaker/pcmk_sched_native.c             if (rsc->partial_migration_target->details == current->details) {
rsc              2061 lib/pacemaker/pcmk_sched_native.c                 pe_rsc_trace(rsc,
rsc              2064 lib/pacemaker/pcmk_sched_native.c                              rsc->id, current->details->uname,
rsc              2068 lib/pacemaker/pcmk_sched_native.c                 pe_rsc_trace(rsc,
rsc              2071 lib/pacemaker/pcmk_sched_native.c                              rsc->id, current->details->uname);
rsc              2076 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "Scheduling stop of %s on %s",
rsc              2077 lib/pacemaker/pcmk_sched_native.c                      rsc->id, current->details->uname);
rsc              2078 lib/pacemaker/pcmk_sched_native.c         stop = stop_action(rsc, current, optional);
rsc              2080 lib/pacemaker/pcmk_sched_native.c         if(rsc->allocated_to == NULL) {
rsc              2082 lib/pacemaker/pcmk_sched_native.c         } else if (pcmk_all_flags_set(rsc->flags, pe_rsc_restarting
rsc              2091 lib/pacemaker/pcmk_sched_native.c         if (!pcmk_is_set(rsc->flags, pe_rsc_managed)) {
rsc              2096 lib/pacemaker/pcmk_sched_native.c             DeleteRsc(rsc, current, optional, data_set);
rsc              2099 lib/pacemaker/pcmk_sched_native.c         if (pcmk_is_set(rsc->flags, pe_rsc_needs_unfencing)) {
rsc              2104 lib/pacemaker/pcmk_sched_native.c                 pe_proc_err("Stopping %s until %s can be unfenced", rsc->id, current->details->uname);
rsc              2113 lib/pacemaker/pcmk_sched_native.c StartRsc(pe_resource_t * rsc, pe_node_t * next, gboolean optional, pe_working_set_t * data_set)
rsc              2117 lib/pacemaker/pcmk_sched_native.c     CRM_ASSERT(rsc);
rsc              2119 lib/pacemaker/pcmk_sched_native.c     pe_rsc_trace(rsc, "Scheduling %s start of %s on %s (weight=%d)",
rsc              2120 lib/pacemaker/pcmk_sched_native.c                  (optional? "optional" : "required"), rsc->id,
rsc              2123 lib/pacemaker/pcmk_sched_native.c     start = start_action(rsc, next, TRUE);
rsc              2125 lib/pacemaker/pcmk_sched_native.c     pcmk__order_vs_unfence(rsc, next, start, pe_order_implies_then, data_set);
rsc              2131 lib/pacemaker/pcmk_sched_native.c     if (is_expected_node(rsc, next)) {
rsc              2135 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc,
rsc              2138 lib/pacemaker/pcmk_sched_native.c                      rsc->id, next->details->uname);
rsc              2146 lib/pacemaker/pcmk_sched_native.c PromoteRsc(pe_resource_t * rsc, pe_node_t * next, gboolean optional, pe_working_set_t * data_set)
rsc              2152 lib/pacemaker/pcmk_sched_native.c     CRM_ASSERT(rsc);
rsc              2155 lib/pacemaker/pcmk_sched_native.c     pe_rsc_trace(rsc, "%s on %s", rsc->id, next->details->uname);
rsc              2157 lib/pacemaker/pcmk_sched_native.c     action_list = pe__resource_actions(rsc, next, RSC_START, TRUE);
rsc              2169 lib/pacemaker/pcmk_sched_native.c         pe_action_t *promote = promote_action(rsc, next, optional);
rsc              2171 lib/pacemaker/pcmk_sched_native.c         if (is_expected_node(rsc, next)) {
rsc              2175 lib/pacemaker/pcmk_sched_native.c             pe_rsc_trace(rsc,
rsc              2178 lib/pacemaker/pcmk_sched_native.c                          rsc->id, next->details->uname);
rsc              2185 lib/pacemaker/pcmk_sched_native.c     pe_rsc_debug(rsc, "%s\tPromote %s (canceled)", next->details->uname, rsc->id);
rsc              2187 lib/pacemaker/pcmk_sched_native.c     action_list = pe__resource_actions(rsc, next, RSC_PROMOTE, TRUE);
rsc              2200 lib/pacemaker/pcmk_sched_native.c DemoteRsc(pe_resource_t * rsc, pe_node_t * next, gboolean optional, pe_working_set_t * data_set)
rsc              2204 lib/pacemaker/pcmk_sched_native.c     CRM_ASSERT(rsc);
rsc              2206 lib/pacemaker/pcmk_sched_native.c     if (is_expected_node(rsc, next)) {
rsc              2207 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc,
rsc              2210 lib/pacemaker/pcmk_sched_native.c                      rsc->id, next->details->uname);
rsc              2214 lib/pacemaker/pcmk_sched_native.c     pe_rsc_trace(rsc, "%s", rsc->id);
rsc              2217 lib/pacemaker/pcmk_sched_native.c     for (gIter = rsc->running_on; gIter != NULL; gIter = gIter->next) {
rsc              2220 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "%s on %s", rsc->id, next ? next->details->uname : "N/A");
rsc              2221 lib/pacemaker/pcmk_sched_native.c         demote_action(rsc, current, optional);
rsc              2227 lib/pacemaker/pcmk_sched_native.c RoleError(pe_resource_t * rsc, pe_node_t * next, gboolean optional, pe_working_set_t * data_set)
rsc              2229 lib/pacemaker/pcmk_sched_native.c     CRM_ASSERT(rsc);
rsc              2230 lib/pacemaker/pcmk_sched_native.c     crm_err("%s on %s", rsc->id, next ? next->details->uname : "N/A");
rsc              2236 lib/pacemaker/pcmk_sched_native.c NullOp(pe_resource_t * rsc, pe_node_t * next, gboolean optional, pe_working_set_t * data_set)
rsc              2238 lib/pacemaker/pcmk_sched_native.c     CRM_ASSERT(rsc);
rsc              2239 lib/pacemaker/pcmk_sched_native.c     pe_rsc_trace(rsc, "%s", rsc->id);
rsc              2244 lib/pacemaker/pcmk_sched_native.c DeleteRsc(pe_resource_t * rsc, pe_node_t * node, gboolean optional, pe_working_set_t * data_set)
rsc              2246 lib/pacemaker/pcmk_sched_native.c     if (pcmk_is_set(rsc->flags, pe_rsc_failed)) {
rsc              2247 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "Resource %s not deleted from %s: failed", rsc->id, node->details->uname);
rsc              2251 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "Resource %s not deleted: NULL node", rsc->id);
rsc              2255 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "Resource %s not deleted from %s: unrunnable", rsc->id,
rsc              2260 lib/pacemaker/pcmk_sched_native.c     crm_notice("Removing %s from %s", rsc->id, node->details->uname);
rsc              2262 lib/pacemaker/pcmk_sched_native.c     delete_action(rsc, node, optional);
rsc              2264 lib/pacemaker/pcmk_sched_native.c     pcmk__order_resource_actions(rsc, RSC_STOP, rsc, RSC_DELETE,
rsc              2268 lib/pacemaker/pcmk_sched_native.c     pcmk__order_resource_actions(rsc, RSC_DELETE, rsc, RSC_START,
rsc              2276 lib/pacemaker/pcmk_sched_native.c native_create_probe(pe_resource_t * rsc, pe_node_t * node, pe_action_t * complete,
rsc              2284 lib/pacemaker/pcmk_sched_native.c     pe_resource_t *top = uber_parent(rsc);
rsc              2296 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "Skipping active resource detection for %s", rsc->id);
rsc              2301 lib/pacemaker/pcmk_sched_native.c         const char *class = crm_element_value(rsc->xml, XML_AGENT_ATTR_CLASS);
rsc              2304 lib/pacemaker/pcmk_sched_native.c             pe_rsc_trace(rsc,
rsc              2306 lib/pacemaker/pcmk_sched_native.c                          rsc->id, node->details->id);
rsc              2309 lib/pacemaker/pcmk_sched_native.c                    && pe__resource_contains_guest_node(data_set, rsc)) {
rsc              2310 lib/pacemaker/pcmk_sched_native.c             pe_rsc_trace(rsc,
rsc              2312 lib/pacemaker/pcmk_sched_native.c                          rsc->id, node->details->id);
rsc              2314 lib/pacemaker/pcmk_sched_native.c         } else if (rsc->is_remote_node) {
rsc              2315 lib/pacemaker/pcmk_sched_native.c             pe_rsc_trace(rsc,
rsc              2317 lib/pacemaker/pcmk_sched_native.c                          rsc->id, node->details->id);
rsc              2322 lib/pacemaker/pcmk_sched_native.c     if (rsc->children) {
rsc              2326 lib/pacemaker/pcmk_sched_native.c         for (gIter = rsc->children; gIter != NULL; gIter = gIter->next) {
rsc              2335 lib/pacemaker/pcmk_sched_native.c     } else if ((rsc->container) && (!rsc->is_remote_node)) {
rsc              2336 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "Skipping %s: it is within container %s", rsc->id, rsc->container->id);
rsc              2340 lib/pacemaker/pcmk_sched_native.c     if (pcmk_is_set(rsc->flags, pe_rsc_orphan)) {
rsc              2341 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "Skipping orphan: %s", rsc->id);
rsc              2346 lib/pacemaker/pcmk_sched_native.c     if (!force && g_hash_table_lookup(rsc->known_on, node->details->id)) {
rsc              2347 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "Skipping known: %s on %s", rsc->id, node->details->uname);
rsc              2351 lib/pacemaker/pcmk_sched_native.c     allowed = g_hash_table_lookup(rsc->allowed_nodes, node->details->id);
rsc              2353 lib/pacemaker/pcmk_sched_native.c     if (rsc->exclusive_discover || top->exclusive_discover) {
rsc              2356 lib/pacemaker/pcmk_sched_native.c             pe_rsc_trace(rsc, "Skipping probe for %s on node %s, A", rsc->id, node->details->id);
rsc              2361 lib/pacemaker/pcmk_sched_native.c             pe_rsc_trace(rsc, "Skipping probe for %s on node %s, B", rsc->id, node->details->id);
rsc              2372 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "Skipping probe for %s on node %s, C", rsc->id, node->details->id);
rsc              2378 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "Skipping probe for %s on node %s, discovery mode", rsc->id, node->details->id);
rsc              2415 lib/pacemaker/pcmk_sched_native.c             pe_rsc_trace(rsc, "Skipping probe for %s on node %s, %s is stopped",
rsc              2416 lib/pacemaker/pcmk_sched_native.c                          rsc->id, node->details->id, remote->id);
rsc              2436 lib/pacemaker/pcmk_sched_native.c         pe_rsc_trace(rsc, "Skipping probe for %s on node %s, %s is stopping, restarting or moving",
rsc              2437 lib/pacemaker/pcmk_sched_native.c                      rsc->id, node->details->id, remote->id);
rsc              2445 lib/pacemaker/pcmk_sched_native.c     key = pcmk__op_key(rsc->id, RSC_STATUS, 0);
rsc              2446 lib/pacemaker/pcmk_sched_native.c     probe = custom_action(rsc, key, RSC_STATUS, node, FALSE, TRUE, data_set);
rsc              2449 lib/pacemaker/pcmk_sched_native.c     pcmk__order_vs_unfence(rsc, node, probe, pe_order_optional, data_set);
rsc              2455 lib/pacemaker/pcmk_sched_native.c     running = pe_find_node_id(rsc->running_on, node->details->id);
rsc              2459 lib/pacemaker/pcmk_sched_native.c     } else if (rsc->role == RSC_ROLE_PROMOTED) {
rsc              2463 lib/pacemaker/pcmk_sched_native.c     crm_debug("Probing %s on %s (%s) %d %p", rsc->id, node->details->uname, role2text(rsc->role),
rsc              2464 lib/pacemaker/pcmk_sched_native.c               pcmk_is_set(probe->flags, pe_action_runnable), rsc->running_on);
rsc              2466 lib/pacemaker/pcmk_sched_native.c     if (pcmk__is_unfence_device(rsc, data_set) || !pe_rsc_is_clone(top)) {
rsc              2467 lib/pacemaker/pcmk_sched_native.c         top = rsc;
rsc              2469 lib/pacemaker/pcmk_sched_native.c         crm_trace("Probing %s on %s (%s) as %s", rsc->id, node->details->uname, role2text(rsc->role), top->id);
rsc              2473 lib/pacemaker/pcmk_sched_native.c         && (rsc->running_on == NULL)) {
rsc              2480 lib/pacemaker/pcmk_sched_native.c     pcmk__new_ordering(rsc, NULL, probe, top,
rsc              2485 lib/pacemaker/pcmk_sched_native.c     pcmk__new_ordering(rsc, NULL, probe, top, reload_key(rsc), NULL,
rsc              2492 lib/pacemaker/pcmk_sched_native.c native_append_meta(pe_resource_t * rsc, xmlNode * xml)
rsc              2494 lib/pacemaker/pcmk_sched_native.c     char *value = g_hash_table_lookup(rsc->meta, XML_RSC_ATTR_INCARNATION);
rsc              2505 lib/pacemaker/pcmk_sched_native.c     value = g_hash_table_lookup(rsc->meta, XML_RSC_ATTR_REMOTE_NODE);
rsc              2514 lib/pacemaker/pcmk_sched_native.c     for (parent = rsc; parent != NULL; parent = parent->parent) {
rsc              2523 lib/pacemaker/pcmk_sched_native.c pcmk__primitive_add_utilization(pe_resource_t *rsc, pe_resource_t *orig_rsc,
rsc              2526 lib/pacemaker/pcmk_sched_native.c     if (!pcmk_is_set(rsc->flags, pe_rsc_provisional)) {
rsc              2531 lib/pacemaker/pcmk_sched_native.c                  orig_rsc->id, rsc->id);
rsc              2532 lib/pacemaker/pcmk_sched_native.c     pcmk__release_node_capacity(utilization, rsc);
rsc              2562 lib/pacemaker/pcmk_sched_native.c pcmk__primitive_shutdown_lock(pe_resource_t *rsc)
rsc              2564 lib/pacemaker/pcmk_sched_native.c     const char *class = crm_element_value(rsc->xml, XML_AGENT_ATTR_CLASS);
rsc              2568 lib/pacemaker/pcmk_sched_native.c         || pe__resource_is_remote_conn(rsc, rsc->cluster)) {
rsc              2572 lib/pacemaker/pcmk_sched_native.c     if (rsc->lock_node != NULL) {
rsc              2575 lib/pacemaker/pcmk_sched_native.c         if (rsc->running_on != NULL) {
rsc              2580 lib/pacemaker/pcmk_sched_native.c             pe_rsc_info(rsc,
rsc              2582 lib/pacemaker/pcmk_sched_native.c                         rsc->id);
rsc              2583 lib/pacemaker/pcmk_sched_native.c             pe__clear_resource_history(rsc, rsc->lock_node, rsc->cluster);
rsc              2584 lib/pacemaker/pcmk_sched_native.c             rsc->lock_node = NULL;
rsc              2585 lib/pacemaker/pcmk_sched_native.c             rsc->lock_time = 0;
rsc              2589 lib/pacemaker/pcmk_sched_native.c     } else if (pcmk__list_of_1(rsc->running_on)) {
rsc              2590 lib/pacemaker/pcmk_sched_native.c         pe_node_t *node = rsc->running_on->data;
rsc              2594 lib/pacemaker/pcmk_sched_native.c                 pe_rsc_debug(rsc, "Not locking %s to unclean %s for shutdown",
rsc              2595 lib/pacemaker/pcmk_sched_native.c                              rsc->id, node->details->uname);
rsc              2597 lib/pacemaker/pcmk_sched_native.c                 rsc->lock_node = node;
rsc              2598 lib/pacemaker/pcmk_sched_native.c                 rsc->lock_time = shutdown_time(node, rsc->cluster);
rsc              2603 lib/pacemaker/pcmk_sched_native.c     if (rsc->lock_node == NULL) {
rsc              2608 lib/pacemaker/pcmk_sched_native.c     if (rsc->cluster->shutdown_lock > 0) {
rsc              2609 lib/pacemaker/pcmk_sched_native.c         time_t lock_expiration = rsc->lock_time + rsc->cluster->shutdown_lock;
rsc              2611 lib/pacemaker/pcmk_sched_native.c         pe_rsc_info(rsc, "Locking %s to %s due to shutdown (expires @%lld)",
rsc              2612 lib/pacemaker/pcmk_sched_native.c                     rsc->id, rsc->lock_node->details->uname,
rsc              2614 lib/pacemaker/pcmk_sched_native.c         pe__update_recheck_time(++lock_expiration, rsc->cluster);
rsc              2616 lib/pacemaker/pcmk_sched_native.c         pe_rsc_info(rsc, "Locking %s to %s due to shutdown",
rsc              2617 lib/pacemaker/pcmk_sched_native.c                     rsc->id, rsc->lock_node->details->uname);
rsc              2621 lib/pacemaker/pcmk_sched_native.c     for (GList *item = rsc->cluster->nodes; item != NULL; item = item->next) {
rsc              2624 lib/pacemaker/pcmk_sched_native.c         if (strcmp(node->details->uname, rsc->lock_node->details->uname)) {
rsc              2625 lib/pacemaker/pcmk_sched_native.c             resource_location(rsc, node, -CRM_SCORE_INFINITY,
rsc              2626 lib/pacemaker/pcmk_sched_native.c                               XML_CONFIG_ATTR_SHUTDOWN_LOCK, rsc->cluster);
rsc               295 lib/pacemaker/pcmk_sched_nodes.c             pe_resource_t *rsc = (pe_resource_t *) r->data;
rsc               303 lib/pacemaker/pcmk_sched_nodes.c                 constrain = !crm_is_true(g_hash_table_lookup(rsc->meta,
rsc               307 lib/pacemaker/pcmk_sched_nodes.c                 pcmk__new_location(strategy_str, rsc, health, NULL, node,
rsc               310 lib/pacemaker/pcmk_sched_nodes.c                 pe_rsc_trace(rsc, "%s is immune from health ban on %s",
rsc               311 lib/pacemaker/pcmk_sched_nodes.c                              rsc->id, node->details->uname);
rsc                16 lib/pacemaker/pcmk_sched_notif.c     pe_resource_t *rsc;
rsc                52 lib/pacemaker/pcmk_sched_notif.c     if ((entry_a->rsc == NULL) && (entry_b->rsc == NULL)) {
rsc                55 lib/pacemaker/pcmk_sched_notif.c     if (entry_a->rsc == NULL) {
rsc                58 lib/pacemaker/pcmk_sched_notif.c     if (entry_b->rsc == NULL) {
rsc                63 lib/pacemaker/pcmk_sched_notif.c     tmp = strcmp(entry_a->rsc->id, entry_b->rsc->id);
rsc                98 lib/pacemaker/pcmk_sched_notif.c     dup->rsc = entry->rsc;
rsc               199 lib/pacemaker/pcmk_sched_notif.c         CRM_LOG_ASSERT((entry != NULL) && (entry->rsc != NULL)
rsc               200 lib/pacemaker/pcmk_sched_notif.c                        && (entry->rsc->id != NULL));
rsc               201 lib/pacemaker/pcmk_sched_notif.c         if ((entry == NULL) || (entry->rsc == NULL)
rsc               202 lib/pacemaker/pcmk_sched_notif.c             || (entry->rsc->id == NULL)) {
rsc               213 lib/pacemaker/pcmk_sched_notif.c         if (pcmk__str_eq(entry->rsc->id, last_rsc_id, pcmk__str_none)) {
rsc               216 lib/pacemaker/pcmk_sched_notif.c         last_rsc_id = entry->rsc->id;
rsc               219 lib/pacemaker/pcmk_sched_notif.c             pcmk__add_word(rsc_names, &rsc_names_len, entry->rsc->id);
rsc               286 lib/pacemaker/pcmk_sched_notif.c new_notify_pseudo_action(pe_resource_t *rsc, const pe_action_t *action,
rsc               291 lib/pacemaker/pcmk_sched_notif.c     notify = custom_action(rsc,
rsc               292 lib/pacemaker/pcmk_sched_notif.c                            pcmk__notify_key(rsc->id, notif_type, action->task),
rsc               295 lib/pacemaker/pcmk_sched_notif.c                            TRUE, rsc->cluster);
rsc               315 lib/pacemaker/pcmk_sched_notif.c new_notify_action(pe_resource_t *rsc, pe_node_t *node, pe_action_t *op,
rsc               324 lib/pacemaker/pcmk_sched_notif.c     CRM_CHECK((rsc != NULL) && (node != NULL), return NULL);
rsc               337 lib/pacemaker/pcmk_sched_notif.c         pe_rsc_trace(rsc, "Skipping notify action for %s on %s: %s",
rsc               338 lib/pacemaker/pcmk_sched_notif.c                      rsc->id, node->details->uname, skip_reason);
rsc               345 lib/pacemaker/pcmk_sched_notif.c     pe_rsc_trace(rsc, "Creating notify action for %s on %s (%s-%s)",
rsc               346 lib/pacemaker/pcmk_sched_notif.c                  rsc->id, node->details->uname, value, task);
rsc               349 lib/pacemaker/pcmk_sched_notif.c     key = pcmk__notify_key(rsc->id, value, task);
rsc               350 lib/pacemaker/pcmk_sched_notif.c     notify_action = custom_action(rsc, key, op->task, node,
rsc               352 lib/pacemaker/pcmk_sched_notif.c                                   TRUE, rsc->cluster);
rsc               373 lib/pacemaker/pcmk_sched_notif.c new_post_notify_action(pe_resource_t *rsc, pe_node_t *node,
rsc               379 lib/pacemaker/pcmk_sched_notif.c     notify = new_notify_action(rsc, node, n_data->post, n_data->post_done,
rsc               389 lib/pacemaker/pcmk_sched_notif.c     for (GList *iter = rsc->actions; iter != NULL; iter = iter->next) {
rsc               435 lib/pacemaker/pcmk_sched_notif.c pcmk__clone_notif_pseudo_ops(pe_resource_t *rsc, const char *task,
rsc               440 lib/pacemaker/pcmk_sched_notif.c     if (!pcmk_is_set(rsc->flags, pe_rsc_notify)) {
rsc               452 lib/pacemaker/pcmk_sched_notif.c         n_data->pre = new_notify_pseudo_action(rsc, action, RSC_NOTIFY, "pre");
rsc               458 lib/pacemaker/pcmk_sched_notif.c         n_data->pre_done = new_notify_pseudo_action(rsc, action, RSC_NOTIFIED,
rsc               473 lib/pacemaker/pcmk_sched_notif.c         n_data->post = new_notify_pseudo_action(rsc, complete, RSC_NOTIFY,
rsc               485 lib/pacemaker/pcmk_sched_notif.c         n_data->post_done = new_notify_pseudo_action(rsc, complete,
rsc               521 lib/pacemaker/pcmk_sched_notif.c new_notify_entry(pe_resource_t *rsc, pe_node_t *node)
rsc               526 lib/pacemaker/pcmk_sched_notif.c     entry->rsc = rsc;
rsc               540 lib/pacemaker/pcmk_sched_notif.c collect_resource_data(pe_resource_t *rsc, bool activity, notify_data_t *n_data)
rsc               547 lib/pacemaker/pcmk_sched_notif.c         n_data->allowed_nodes = rsc->allowed_nodes;
rsc               551 lib/pacemaker/pcmk_sched_notif.c     if (rsc->children != NULL) {
rsc               552 lib/pacemaker/pcmk_sched_notif.c         for (iter = rsc->children; iter != NULL; iter = iter->next) {
rsc               562 lib/pacemaker/pcmk_sched_notif.c     if (rsc->running_on != NULL) {
rsc               563 lib/pacemaker/pcmk_sched_notif.c         node = rsc->running_on->data; // First is sufficient
rsc               565 lib/pacemaker/pcmk_sched_notif.c     entry = new_notify_entry(rsc, node);
rsc               568 lib/pacemaker/pcmk_sched_notif.c     switch (rsc->role) {
rsc               592 lib/pacemaker/pcmk_sched_notif.c                     rsc->id, ((node == NULL)? "no node" : node->details->uname),
rsc               593 lib/pacemaker/pcmk_sched_notif.c                     role2text(rsc->role));
rsc               603 lib/pacemaker/pcmk_sched_notif.c     for (iter = rsc->actions; iter != NULL; iter = iter->next) {
rsc               615 lib/pacemaker/pcmk_sched_notif.c             entry = new_notify_entry(rsc, op->node);
rsc               655 lib/pacemaker/pcmk_sched_notif.c add_notif_keys(pe_resource_t *rsc, notify_data_t *n_data)
rsc               739 lib/pacemaker/pcmk_sched_notif.c     source = g_hash_table_lookup(rsc->meta, XML_RSC_ATTR_TARGET);
rsc               741 lib/pacemaker/pcmk_sched_notif.c         get_node_names(rsc->cluster->nodes, &node_list, &metal_list);
rsc               744 lib/pacemaker/pcmk_sched_notif.c         get_node_names(rsc->cluster->nodes, &node_list, NULL);
rsc               789 lib/pacemaker/pcmk_sched_notif.c create_notify_actions(pe_resource_t *rsc, notify_data_t *n_data)
rsc               797 lib/pacemaker/pcmk_sched_notif.c     if (rsc->children != NULL) {
rsc               798 lib/pacemaker/pcmk_sched_notif.c         g_list_foreach(rsc->children, (GFunc) create_notify_actions, n_data);
rsc               803 lib/pacemaker/pcmk_sched_notif.c     for (iter = rsc->actions; iter != NULL; iter = iter->next) {
rsc               824 lib/pacemaker/pcmk_sched_notif.c                 pe_rsc_trace(rsc, "No notify action needed for %s %s",
rsc               825 lib/pacemaker/pcmk_sched_notif.c                              rsc->id, n_data->action);
rsc               832 lib/pacemaker/pcmk_sched_notif.c                 pe_rsc_trace(rsc, "No notify action needed for %s %s",
rsc               833 lib/pacemaker/pcmk_sched_notif.c                              rsc->id, n_data->action);
rsc               840 lib/pacemaker/pcmk_sched_notif.c                 pe_rsc_trace(rsc, "No notify action needed for %s %s",
rsc               841 lib/pacemaker/pcmk_sched_notif.c                              rsc->id, n_data->action);
rsc               851 lib/pacemaker/pcmk_sched_notif.c     pe_rsc_trace(rsc, "Creating notify actions for %s %s",
rsc               852 lib/pacemaker/pcmk_sched_notif.c                  rsc->id, n_data->action);
rsc               855 lib/pacemaker/pcmk_sched_notif.c     if ((rsc->role != RSC_ROLE_STOPPED)
rsc               858 lib/pacemaker/pcmk_sched_notif.c         stop = find_first_action(rsc->actions, NULL, RSC_STOP, NULL);
rsc               860 lib/pacemaker/pcmk_sched_notif.c         for (iter = rsc->running_on; iter != NULL; iter = iter->next) {
rsc               872 lib/pacemaker/pcmk_sched_notif.c             new_notify_action(rsc, current_node, n_data->pre,
rsc               877 lib/pacemaker/pcmk_sched_notif.c                 new_post_notify_action(rsc, current_node, n_data);
rsc               883 lib/pacemaker/pcmk_sched_notif.c     if ((rsc->next_role != RSC_ROLE_STOPPED)
rsc               886 lib/pacemaker/pcmk_sched_notif.c         start = find_first_action(rsc->actions, NULL, RSC_START, NULL);
rsc               900 lib/pacemaker/pcmk_sched_notif.c         if (rsc->allocated_to == NULL) {
rsc               902 lib/pacemaker/pcmk_sched_notif.c                         role2text(rsc->next_role), rsc->id);
rsc               908 lib/pacemaker/pcmk_sched_notif.c             new_notify_action(rsc, rsc->allocated_to, n_data->pre,
rsc               911 lib/pacemaker/pcmk_sched_notif.c         new_post_notify_action(rsc, rsc->allocated_to, n_data);
rsc               923 lib/pacemaker/pcmk_sched_notif.c pcmk__create_notifications(pe_resource_t *rsc, notify_data_t *n_data)
rsc               925 lib/pacemaker/pcmk_sched_notif.c     if ((rsc == NULL) || (n_data == NULL)) {
rsc               928 lib/pacemaker/pcmk_sched_notif.c     collect_resource_data(rsc, true, n_data);
rsc               929 lib/pacemaker/pcmk_sched_notif.c     add_notif_keys(rsc, n_data);
rsc               930 lib/pacemaker/pcmk_sched_notif.c     create_notify_actions(rsc, n_data);
rsc               972 lib/pacemaker/pcmk_sched_notif.c pcmk__order_notifs_after_fencing(pe_action_t *stop, pe_resource_t *rsc,
rsc               978 lib/pacemaker/pcmk_sched_notif.c     n_data = pcmk__clone_notif_pseudo_ops(rsc, RSC_STOP, NULL, stonith_op);
rsc               979 lib/pacemaker/pcmk_sched_notif.c     collect_resource_data(rsc, false, n_data);
rsc               980 lib/pacemaker/pcmk_sched_notif.c     add_notify_env(n_data, "notify_stop_resource", rsc->id);
rsc               982 lib/pacemaker/pcmk_sched_notif.c     create_notify_actions(uber_parent(rsc), n_data);
rsc               229 lib/pacemaker/pcmk_sched_ordering.c     pe_resource_t *rsc = NULL;
rsc               239 lib/pacemaker/pcmk_sched_ordering.c     rsc = pcmk__find_constraint_resource(data_set->resources, rsc_id);
rsc               240 lib/pacemaker/pcmk_sched_ordering.c     if (rsc == NULL) {
rsc               247 lib/pacemaker/pcmk_sched_ordering.c         if (!pe_rsc_is_clone(rsc)) {
rsc               253 lib/pacemaker/pcmk_sched_ordering.c         rsc = find_clone_instance(rsc, instance_id, data_set);
rsc               254 lib/pacemaker/pcmk_sched_ordering.c         if (rsc == NULL) {
rsc               261 lib/pacemaker/pcmk_sched_ordering.c     return rsc;
rsc               274 lib/pacemaker/pcmk_sched_ordering.c get_minimum_first_instances(pe_resource_t *rsc, xmlNode *xml)
rsc               279 lib/pacemaker/pcmk_sched_ordering.c     if (!pe_rsc_is_clone(rsc)) {
rsc               283 lib/pacemaker/pcmk_sched_ordering.c     clone_min = g_hash_table_lookup(rsc->meta,
rsc               371 lib/pacemaker/pcmk_sched_ordering.c #define handle_restart_type(rsc, kind, flag, flags) do {        \
rsc               373 lib/pacemaker/pcmk_sched_ordering.c             && ((rsc)->restart_type == pe_restart_restart)) {   \
rsc               686 lib/pacemaker/pcmk_sched_ordering.c         lh_rsc = lh_action->rsc;
rsc               689 lib/pacemaker/pcmk_sched_ordering.c         rh_rsc = rh_action->rsc;
rsc               713 lib/pacemaker/pcmk_sched_ordering.c         order->lh_rsc = lh_action->rsc;
rsc               717 lib/pacemaker/pcmk_sched_ordering.c         order->rh_rsc = rh_action->rsc;
rsc              1226 lib/pacemaker/pcmk_sched_ordering.c         && (input->action->rsc != NULL)
rsc              1227 lib/pacemaker/pcmk_sched_ordering.c         && pcmk__rsc_corresponds_to_guest(action->rsc, input->action->node)) {
rsc              1230 lib/pacemaker/pcmk_sched_ordering.c                  input->action->rsc->id, action->rsc->id);
rsc              1241 lib/pacemaker/pcmk_sched_ordering.c     if ((input->type == pe_order_load) && action->rsc
rsc              1284 lib/pacemaker/pcmk_sched_ordering.c         if ((action->rsc == NULL) || (action->node == NULL)
rsc              1292 lib/pacemaker/pcmk_sched_ordering.c         if (pcmk_is_set(action->rsc->flags, pe_rsc_maintenance)) {
rsc              1293 lib/pacemaker/pcmk_sched_ordering.c             pe_rsc_trace(action->rsc,
rsc              1300 lib/pacemaker/pcmk_sched_ordering.c             pe_rsc_trace(action->rsc,
rsc              1311 lib/pacemaker/pcmk_sched_ordering.c         if (!pcmk_any_flags_set(action->rsc->flags,
rsc              1313 lib/pacemaker/pcmk_sched_ordering.c             pe_rsc_trace(action->rsc,
rsc              1320 lib/pacemaker/pcmk_sched_ordering.c         pe_rsc_trace(action->rsc, "Ordering %s before %s shutdown",
rsc              1323 lib/pacemaker/pcmk_sched_ordering.c         pcmk__new_ordering(action->rsc, NULL, action, NULL,
rsc              1340 lib/pacemaker/pcmk_sched_ordering.c find_actions_by_task(pe_resource_t *rsc, const char *original_key)
rsc              1343 lib/pacemaker/pcmk_sched_ordering.c     GList *list = find_actions(rsc->actions, original_key, NULL);
rsc              1352 lib/pacemaker/pcmk_sched_ordering.c             key = pcmk__op_key(rsc->id, task, interval_ms);
rsc              1353 lib/pacemaker/pcmk_sched_ordering.c             list = find_actions(rsc->actions, key, NULL);
rsc              1364 lib/pacemaker/pcmk_sched_ordering.c rsc_order_then(pe_action_t *lh_action, pe_resource_t *rsc,
rsc              1371 lib/pacemaker/pcmk_sched_ordering.c     CRM_CHECK(rsc != NULL, return);
rsc              1376 lib/pacemaker/pcmk_sched_ordering.c     crm_trace("Applying ordering constraint %d (then: %s)", order->id, rsc->id);
rsc              1381 lib/pacemaker/pcmk_sched_ordering.c     } else if (rsc != NULL) {
rsc              1382 lib/pacemaker/pcmk_sched_ordering.c         rh_actions = find_actions_by_task(rsc, order->rh_action_task);
rsc              1386 lib/pacemaker/pcmk_sched_ordering.c         pe_rsc_trace(rsc,
rsc              1388 lib/pacemaker/pcmk_sched_ordering.c                      order->id, order->rh_action_task, rsc->id);
rsc              1392 lib/pacemaker/pcmk_sched_ordering.c     if ((lh_action != NULL) && (lh_action->rsc == rsc)
rsc              1395 lib/pacemaker/pcmk_sched_ordering.c         pe_rsc_trace(rsc, "Detected dangling operation %s -> %s",
rsc              1480 lib/pacemaker/pcmk_sched_ordering.c         rh_rsc = order->rh_action->rsc;
rsc              1513 lib/pacemaker/pcmk_sched_ordering.c         pe_resource_t *rsc = order->lh_rsc;
rsc              1515 lib/pacemaker/pcmk_sched_ordering.c         if (rsc != NULL) {
rsc              1516 lib/pacemaker/pcmk_sched_ordering.c             rsc_order_first(rsc, order, data_set);
rsc              1520 lib/pacemaker/pcmk_sched_ordering.c         rsc = order->rh_rsc;
rsc              1521 lib/pacemaker/pcmk_sched_ordering.c         if (rsc != NULL) {
rsc              1522 lib/pacemaker/pcmk_sched_ordering.c             rsc_order_then(order->lh_action, rsc, order);
rsc               203 lib/pacemaker/pcmk_sched_probes.c     if ((after == NULL) || (probe == NULL) || (probe->rsc == NULL)
rsc               204 lib/pacemaker/pcmk_sched_probes.c         || (probe->rsc->variant != pe_native)
rsc               224 lib/pacemaker/pcmk_sched_probes.c     if ((after->rsc != NULL) && (after->rsc->variant == pe_native)
rsc               225 lib/pacemaker/pcmk_sched_probes.c         && (probe->rsc != after->rsc)) {
rsc               230 lib/pacemaker/pcmk_sched_probes.c                 then_actions = pe__resource_actions(after->rsc, NULL, RSC_STOP,
rsc               234 lib/pacemaker/pcmk_sched_probes.c                 then_actions = pe__resource_actions(after->rsc, NULL,
rsc               252 lib/pacemaker/pcmk_sched_probes.c     if ((after->rsc != NULL)
rsc               253 lib/pacemaker/pcmk_sched_probes.c         && (after->rsc->variant > pe_group)) {
rsc               254 lib/pacemaker/pcmk_sched_probes.c         const char *interleave_s = g_hash_table_lookup(after->rsc->meta,
rsc               259 lib/pacemaker/pcmk_sched_probes.c             compatible_rsc = find_compatible_child(probe->rsc,
rsc               260 lib/pacemaker/pcmk_sched_probes.c                                                    after->rsc,
rsc               289 lib/pacemaker/pcmk_sched_probes.c             if ((after->rsc == NULL)
rsc               290 lib/pacemaker/pcmk_sched_probes.c                 || (after->rsc->variant < pe_group)
rsc               291 lib/pacemaker/pcmk_sched_probes.c                 || (probe->rsc->parent == after->rsc)
rsc               292 lib/pacemaker/pcmk_sched_probes.c                 || (after_wrapper->action->rsc == NULL)
rsc               293 lib/pacemaker/pcmk_sched_probes.c                 || (after_wrapper->action->rsc->variant > pe_group)
rsc               294 lib/pacemaker/pcmk_sched_probes.c                 || (after->rsc != after_wrapper->action->rsc->parent)) {
rsc               301 lib/pacemaker/pcmk_sched_probes.c             if ((after->rsc->variant > pe_group) && interleave
rsc               303 lib/pacemaker/pcmk_sched_probes.c                     || (compatible_rsc != after_wrapper->action->rsc))) {
rsc               346 lib/pacemaker/pcmk_sched_probes.c add_restart_orderings_for_rsc(pe_resource_t *rsc, pe_working_set_t *data_set)
rsc               351 lib/pacemaker/pcmk_sched_probes.c     if (rsc->variant != pe_native) {
rsc               352 lib/pacemaker/pcmk_sched_probes.c         g_list_foreach(rsc->children, (GFunc) add_restart_orderings_for_rsc,
rsc               358 lib/pacemaker/pcmk_sched_probes.c     probes = pe__resource_actions(rsc, NULL, RSC_STATUS, FALSE);
rsc               419 lib/pacemaker/pcmk_sched_probes.c         pe_resource_t *rsc = (pe_resource_t *) iter->data;
rsc               425 lib/pacemaker/pcmk_sched_probes.c         actions = pe__resource_actions(rsc, NULL, RSC_START, FALSE);
rsc               433 lib/pacemaker/pcmk_sched_probes.c             crm_err("No start action for %s", rsc->id);
rsc               437 lib/pacemaker/pcmk_sched_probes.c         probes = pe__resource_actions(rsc, NULL, RSC_STATUS, FALSE);
rsc               445 lib/pacemaker/pcmk_sched_probes.c             pe_resource_t *first_rsc = first->rsc;
rsc               457 lib/pacemaker/pcmk_sched_probes.c                     CRM_ASSERT(before->action->rsc != NULL);
rsc               458 lib/pacemaker/pcmk_sched_probes.c                     first_rsc = before->action->rsc;
rsc               469 lib/pacemaker/pcmk_sched_probes.c             } else if (uber_parent(first_rsc) == uber_parent(start->rsc)) {
rsc               558 lib/pacemaker/pcmk_sched_probes.c             pe_resource_t *rsc = (pe_resource_t *) rsc_iter->data;
rsc               560 lib/pacemaker/pcmk_sched_probes.c             rsc->cmds->create_probe(rsc, node, NULL, FALSE, data_set);
rsc                26 lib/pacemaker/pcmk_sched_promotable.c                             pe_resource_t * rsc, pe_resource_t * child, pe_resource_t * last,
rsc                31 lib/pacemaker/pcmk_sched_promotable.c             pe_rsc_trace(rsc, "Ordered version (last node)");
rsc                33 lib/pacemaker/pcmk_sched_promotable.c             pcmk__order_resource_actions(last, RSC_PROMOTE, rsc, RSC_PROMOTED,
rsc                40 lib/pacemaker/pcmk_sched_promotable.c     pcmk__order_resource_actions(child, RSC_PROMOTE, rsc, RSC_PROMOTED, type,
rsc                44 lib/pacemaker/pcmk_sched_promotable.c     pcmk__order_resource_actions(rsc, RSC_PROMOTE, child, RSC_PROMOTE, type,
rsc                48 lib/pacemaker/pcmk_sched_promotable.c         pe_rsc_trace(rsc, "Ordered version");
rsc                51 lib/pacemaker/pcmk_sched_promotable.c             last = rsc;
rsc                60 lib/pacemaker/pcmk_sched_promotable.c         pe_rsc_trace(rsc, "Un-ordered version");
rsc                66 lib/pacemaker/pcmk_sched_promotable.c                            pe_resource_t * rsc, pe_resource_t * child, pe_resource_t * last,
rsc                71 lib/pacemaker/pcmk_sched_promotable.c             pe_rsc_trace(rsc, "Ordered version (last node)");
rsc                73 lib/pacemaker/pcmk_sched_promotable.c             pcmk__order_resource_actions(rsc, RSC_DEMOTE, last, RSC_DEMOTE,
rsc                80 lib/pacemaker/pcmk_sched_promotable.c     pcmk__order_resource_actions(child, RSC_DEMOTE, rsc, RSC_DEMOTED,
rsc                84 lib/pacemaker/pcmk_sched_promotable.c     pcmk__order_resource_actions(rsc, RSC_DEMOTE, child, RSC_DEMOTE,
rsc                88 lib/pacemaker/pcmk_sched_promotable.c         pe_rsc_trace(rsc, "Ordered version");
rsc                95 lib/pacemaker/pcmk_sched_promotable.c         pe_rsc_trace(rsc, "Ordered version (1st node)");
rsc                97 lib/pacemaker/pcmk_sched_promotable.c         pcmk__order_resource_actions(child, RSC_DEMOTE, rsc, RSC_DEMOTED, type,
rsc               101 lib/pacemaker/pcmk_sched_promotable.c         pe_rsc_trace(rsc, "Un-ordered version");
rsc               106 lib/pacemaker/pcmk_sched_promotable.c check_promotable_actions(pe_resource_t *rsc, gboolean *demoting,
rsc               111 lib/pacemaker/pcmk_sched_promotable.c     if (rsc->children) {
rsc               112 lib/pacemaker/pcmk_sched_promotable.c         gIter = rsc->children;
rsc               124 lib/pacemaker/pcmk_sched_promotable.c     gIter = rsc->actions;
rsc               177 lib/pacemaker/pcmk_sched_promotable.c node_to_be_promoted_on(pe_resource_t *rsc)
rsc               181 lib/pacemaker/pcmk_sched_promotable.c     pe_resource_t *parent = uber_parent(rsc);
rsc               187 lib/pacemaker/pcmk_sched_promotable.c     role = rsc->fns->state(rsc, FALSE);
rsc               188 lib/pacemaker/pcmk_sched_promotable.c     crm_info("%s role: %s", rsc->id, role2text(role));
rsc               191 lib/pacemaker/pcmk_sched_promotable.c     if (rsc->children) {
rsc               192 lib/pacemaker/pcmk_sched_promotable.c         GList *gIter = rsc->children;
rsc               198 lib/pacemaker/pcmk_sched_promotable.c                 pe_rsc_trace(rsc, "Child %s of %s can't be promoted", child->id, rsc->id);
rsc               204 lib/pacemaker/pcmk_sched_promotable.c     node = rsc->fns->location(rsc, NULL, FALSE);
rsc               206 lib/pacemaker/pcmk_sched_promotable.c         pe_rsc_trace(rsc, "%s cannot be promoted: not allocated", rsc->id);
rsc               209 lib/pacemaker/pcmk_sched_promotable.c     } else if (!pcmk_is_set(rsc->flags, pe_rsc_managed)) {
rsc               210 lib/pacemaker/pcmk_sched_promotable.c         if (rsc->fns->state(rsc, TRUE) == RSC_ROLE_PROMOTED) {
rsc               212 lib/pacemaker/pcmk_sched_promotable.c                        rsc->id, node->details->uname);
rsc               218 lib/pacemaker/pcmk_sched_promotable.c     } else if (rsc->priority < 0) {
rsc               219 lib/pacemaker/pcmk_sched_promotable.c         pe_rsc_trace(rsc, "%s cannot be promoted: preference: %d",
rsc               220 lib/pacemaker/pcmk_sched_promotable.c                      rsc->id, rsc->priority);
rsc               232 lib/pacemaker/pcmk_sched_promotable.c         pe_rsc_trace(rsc, "%s cannot be promoted: guest %s not allocated",
rsc               233 lib/pacemaker/pcmk_sched_promotable.c                      rsc->id, node->details->remote_rsc->container->id);
rsc               241 lib/pacemaker/pcmk_sched_promotable.c         crm_err("%s cannot run on %s: node not allowed", rsc->id, node->details->uname);
rsc               245 lib/pacemaker/pcmk_sched_promotable.c                || !pcmk_is_set(rsc->flags, pe_rsc_managed)) {
rsc               249 lib/pacemaker/pcmk_sched_promotable.c         pe_rsc_trace(rsc, "%s cannot be promoted on %s: node full",
rsc               250 lib/pacemaker/pcmk_sched_promotable.c                      rsc->id, node->details->uname);
rsc               291 lib/pacemaker/pcmk_sched_promotable.c promotion_order(pe_resource_t *rsc, pe_working_set_t *data_set)
rsc               300 lib/pacemaker/pcmk_sched_promotable.c     get_clone_variant_data(clone_data, rsc);
rsc               306 lib/pacemaker/pcmk_sched_promotable.c     pe_rsc_trace(rsc, "Merging weights for %s", rsc->id);
rsc               307 lib/pacemaker/pcmk_sched_promotable.c     pe__set_resource_flags(rsc, pe_rsc_merging);
rsc               309 lib/pacemaker/pcmk_sched_promotable.c     for (gIter = rsc->children; gIter != NULL; gIter = gIter->next) {
rsc               312 lib/pacemaker/pcmk_sched_promotable.c         pe_rsc_trace(rsc, "Sort index: %s = %d", child->id, child->sort_index);
rsc               314 lib/pacemaker/pcmk_sched_promotable.c     pe__show_node_weights(true, rsc, "Before", rsc->allowed_nodes, data_set);
rsc               316 lib/pacemaker/pcmk_sched_promotable.c     gIter = rsc->children;
rsc               322 lib/pacemaker/pcmk_sched_promotable.c             pe_rsc_trace(rsc, "Skipping %s", child->id);
rsc               326 lib/pacemaker/pcmk_sched_promotable.c         node = (pe_node_t *) pe_hash_table_lookup(rsc->allowed_nodes, chosen->details->id);
rsc               330 lib/pacemaker/pcmk_sched_promotable.c         pe_rsc_trace(rsc, "Adding %s to %s from %s", score,
rsc               335 lib/pacemaker/pcmk_sched_promotable.c     pe__show_node_weights(true, rsc, "Middle", rsc->allowed_nodes, data_set);
rsc               337 lib/pacemaker/pcmk_sched_promotable.c     gIter = rsc->rsc_cons;
rsc               347 lib/pacemaker/pcmk_sched_promotable.c             pe_rsc_trace(rsc, "RHS: %s with %s: %d",
rsc               350 lib/pacemaker/pcmk_sched_promotable.c             rsc->allowed_nodes = constraint->primary->cmds->merge_weights(
rsc               351 lib/pacemaker/pcmk_sched_promotable.c                 constraint->primary, rsc->id, rsc->allowed_nodes,
rsc               357 lib/pacemaker/pcmk_sched_promotable.c     gIter = rsc->rsc_cons_lhs;
rsc               369 lib/pacemaker/pcmk_sched_promotable.c             pe_rsc_trace(rsc, "LHS: %s with %s: %d",
rsc               372 lib/pacemaker/pcmk_sched_promotable.c             rsc->allowed_nodes = constraint->dependent->cmds->merge_weights(
rsc               373 lib/pacemaker/pcmk_sched_promotable.c                 constraint->dependent, rsc->id, rsc->allowed_nodes,
rsc               380 lib/pacemaker/pcmk_sched_promotable.c     gIter = rsc->rsc_tickets;
rsc               386 lib/pacemaker/pcmk_sched_promotable.c             resource_location(rsc, NULL, -INFINITY, "__stateful_without_ticket__", data_set);
rsc               390 lib/pacemaker/pcmk_sched_promotable.c     pe__show_node_weights(true, rsc, "After", rsc->allowed_nodes, data_set);
rsc               394 lib/pacemaker/pcmk_sched_promotable.c     gIter = rsc->children;
rsc               404 lib/pacemaker/pcmk_sched_promotable.c             pe_rsc_trace(rsc, "%s: %d", child->id, child->sort_index);
rsc               407 lib/pacemaker/pcmk_sched_promotable.c             node = (pe_node_t *) pe_hash_table_lookup(rsc->allowed_nodes, chosen->details->id);
rsc               412 lib/pacemaker/pcmk_sched_promotable.c         pe_rsc_trace(rsc, "Set sort index: %s = %d", child->id, child->sort_index);
rsc               415 lib/pacemaker/pcmk_sched_promotable.c     rsc->children = g_list_sort_with_data(rsc->children,
rsc               417 lib/pacemaker/pcmk_sched_promotable.c     pe__clear_resource_flags(rsc, pe_rsc_merging);
rsc               421 lib/pacemaker/pcmk_sched_promotable.c filter_anonymous_instance(pe_resource_t *rsc, const pe_node_t *node)
rsc               424 lib/pacemaker/pcmk_sched_promotable.c     char *key = clone_strip(rsc->id);
rsc               425 lib/pacemaker/pcmk_sched_promotable.c     pe_resource_t *parent = uber_parent(rsc);
rsc               434 lib/pacemaker/pcmk_sched_promotable.c         if(rsc == active) {
rsc               435 lib/pacemaker/pcmk_sched_promotable.c             pe_rsc_trace(rsc, "Found %s for %s active on %s: done", active->id, key, node->details->uname);
rsc               439 lib/pacemaker/pcmk_sched_promotable.c             pe_rsc_trace(rsc, "Found %s for %s on %s: not %s", active->id, key, node->details->uname, rsc->id);
rsc               443 lib/pacemaker/pcmk_sched_promotable.c             pe_rsc_trace(rsc, "%s on %s: not active", key, node->details->uname);
rsc               458 lib/pacemaker/pcmk_sched_promotable.c         rsc = parent->fns->find_rsc(child, key, NULL, pe_find_clone);
rsc               459 lib/pacemaker/pcmk_sched_promotable.c         CRM_LOG_ASSERT(rsc);
rsc               460 lib/pacemaker/pcmk_sched_promotable.c         if(rsc) {
rsc               461 lib/pacemaker/pcmk_sched_promotable.c             pe_rsc_trace(rsc, "Checking %s for %s on %s", rsc->id, key, node->details->uname);
rsc               462 lib/pacemaker/pcmk_sched_promotable.c             if (g_hash_table_lookup(rsc->known_on, node->details->id)) {
rsc               473 lib/pacemaker/pcmk_sched_promotable.c lookup_promotion_score(pe_resource_t *rsc, const pe_node_t *node, const char *name)
rsc               480 lib/pacemaker/pcmk_sched_promotable.c         attr_value = pe_node_attribute_calculated(node, attr_name, rsc);
rsc               487 lib/pacemaker/pcmk_sched_promotable.c promotion_score(pe_resource_t *rsc, const pe_node_t *node, int not_set_value)
rsc               489 lib/pacemaker/pcmk_sched_promotable.c     char *name = rsc->id;
rsc               496 lib/pacemaker/pcmk_sched_promotable.c     if (rsc->children) {
rsc               497 lib/pacemaker/pcmk_sched_promotable.c         GList *gIter = rsc->children;
rsc               512 lib/pacemaker/pcmk_sched_promotable.c     if (!pcmk_is_set(rsc->flags, pe_rsc_unique)
rsc               513 lib/pacemaker/pcmk_sched_promotable.c         && filter_anonymous_instance(rsc, node)) {
rsc               515 lib/pacemaker/pcmk_sched_promotable.c         pe_rsc_trace(rsc, "Anonymous clone %s is allowed on %s", rsc->id, node->details->uname);
rsc               517 lib/pacemaker/pcmk_sched_promotable.c     } else if (rsc->running_on || g_hash_table_size(rsc->known_on)) {
rsc               524 lib/pacemaker/pcmk_sched_promotable.c         pe_node_t *known = pe_hash_table_lookup(rsc->known_on, node->details->id);
rsc               526 lib/pacemaker/pcmk_sched_promotable.c         match = pe_find_node_id(rsc->running_on, node->details->id);
rsc               528 lib/pacemaker/pcmk_sched_promotable.c             pe_rsc_trace(rsc, "skipping %s (aka. %s) promotion score on %s because inactive",
rsc               529 lib/pacemaker/pcmk_sched_promotable.c                          rsc->id, rsc->clone_name, node->details->uname);
rsc               534 lib/pacemaker/pcmk_sched_promotable.c     match = pe_hash_table_lookup(rsc->allowed_nodes, node->details->id);
rsc               539 lib/pacemaker/pcmk_sched_promotable.c         pe_rsc_trace(rsc, "%s on %s has score: %d - ignoring",
rsc               540 lib/pacemaker/pcmk_sched_promotable.c                      rsc->id, match->details->uname, match->weight);
rsc               544 lib/pacemaker/pcmk_sched_promotable.c     if (rsc->clone_name) {
rsc               548 lib/pacemaker/pcmk_sched_promotable.c         name = rsc->clone_name;
rsc               551 lib/pacemaker/pcmk_sched_promotable.c     attr_value = lookup_promotion_score(rsc, node, name);
rsc               552 lib/pacemaker/pcmk_sched_promotable.c     pe_rsc_trace(rsc, "promotion score for %s on %s = %s",
rsc               555 lib/pacemaker/pcmk_sched_promotable.c     if ((attr_value == NULL) && !pcmk_is_set(rsc->flags, pe_rsc_unique)) {
rsc               560 lib/pacemaker/pcmk_sched_promotable.c         name = clone_strip(rsc->id);
rsc               561 lib/pacemaker/pcmk_sched_promotable.c         if (strcmp(rsc->id, name)) {
rsc               562 lib/pacemaker/pcmk_sched_promotable.c             attr_value = lookup_promotion_score(rsc, node, name);
rsc               563 lib/pacemaker/pcmk_sched_promotable.c             pe_rsc_trace(rsc, "stripped promotion score for %s on %s = %s",
rsc               577 lib/pacemaker/pcmk_sched_promotable.c pcmk__add_promotion_scores(pe_resource_t *rsc)
rsc               580 lib/pacemaker/pcmk_sched_promotable.c     GList *gIter = rsc->children;
rsc               583 lib/pacemaker/pcmk_sched_promotable.c     get_clone_variant_data(clone_data, rsc);
rsc               610 lib/pacemaker/pcmk_sched_promotable.c                     pe_rsc_trace(rsc, "\t%s: Updating preference for %s (%d->%d)",
rsc               618 lib/pacemaker/pcmk_sched_promotable.c                 pe_rsc_trace(rsc, "\t%s: Updating priority (%d->%d)",
rsc               627 lib/pacemaker/pcmk_sched_promotable.c set_role_unpromoted(pe_resource_t *rsc, bool current)
rsc               629 lib/pacemaker/pcmk_sched_promotable.c     GList *gIter = rsc->children;
rsc               632 lib/pacemaker/pcmk_sched_promotable.c         if (rsc->role == RSC_ROLE_STARTED) {
rsc               633 lib/pacemaker/pcmk_sched_promotable.c             rsc->role = RSC_ROLE_UNPROMOTED;
rsc               639 lib/pacemaker/pcmk_sched_promotable.c         rsc->fns->location(rsc, &allocated, FALSE);
rsc               640 lib/pacemaker/pcmk_sched_promotable.c         pe__set_next_role(rsc, (allocated? RSC_ROLE_UNPROMOTED : RSC_ROLE_STOPPED),
rsc               653 lib/pacemaker/pcmk_sched_promotable.c set_role_promoted(pe_resource_t *rsc, gpointer user_data)
rsc               655 lib/pacemaker/pcmk_sched_promotable.c     if (rsc->next_role == RSC_ROLE_UNKNOWN) {
rsc               656 lib/pacemaker/pcmk_sched_promotable.c         pe__set_next_role(rsc, RSC_ROLE_PROMOTED, "promoted instance");
rsc               659 lib/pacemaker/pcmk_sched_promotable.c     g_list_foreach(rsc->children, (GFunc) set_role_promoted, NULL);
rsc               663 lib/pacemaker/pcmk_sched_promotable.c pcmk__set_instance_roles(pe_resource_t *rsc, pe_working_set_t *data_set)
rsc               676 lib/pacemaker/pcmk_sched_promotable.c     get_clone_variant_data(clone_data, rsc);
rsc               679 lib/pacemaker/pcmk_sched_promotable.c     g_hash_table_iter_init(&iter, rsc->allowed_nodes);
rsc               687 lib/pacemaker/pcmk_sched_promotable.c     for (gIter = rsc->children; gIter != NULL; gIter = gIter->next) {
rsc               691 lib/pacemaker/pcmk_sched_promotable.c         pe_rsc_trace(rsc, "Assigning priority for %s: %s", child_rsc->id,
rsc               738 lib/pacemaker/pcmk_sched_promotable.c         apply_promoted_location(child_rsc, rsc->rsc_location, chosen);
rsc               748 lib/pacemaker/pcmk_sched_promotable.c         pe_rsc_trace(rsc, "Assigning priority for %s: %d", child_rsc->id, child_rsc->priority);
rsc               755 lib/pacemaker/pcmk_sched_promotable.c     pe__show_node_weights(true, rsc, "Pre merge", rsc->allowed_nodes, data_set);
rsc               756 lib/pacemaker/pcmk_sched_promotable.c     promotion_order(rsc, data_set);
rsc               759 lib/pacemaker/pcmk_sched_promotable.c     for (gIter = rsc->children; gIter != NULL; gIter = gIter->next) {
rsc               771 lib/pacemaker/pcmk_sched_promotable.c             pe_rsc_trace(rsc, "%s promotion score on %s: %s", child_rsc->id,
rsc               780 lib/pacemaker/pcmk_sched_promotable.c             pe_rsc_trace(rsc, "Not supposed to promote child: %s", child_rsc->id);
rsc               783 lib/pacemaker/pcmk_sched_promotable.c                    || !pcmk_is_set(rsc->flags, pe_rsc_managed)) {
rsc               787 lib/pacemaker/pcmk_sched_promotable.c         pe_rsc_debug(rsc, "%s promotion score: %d", child_rsc->id, child_rsc->priority);
rsc               803 lib/pacemaker/pcmk_sched_promotable.c         pe_rsc_info(rsc, "Promoting %s (%s %s)",
rsc               809 lib/pacemaker/pcmk_sched_promotable.c     pe_rsc_info(rsc, "%s: Promoted %d instances of a possible %d",
rsc               810 lib/pacemaker/pcmk_sched_promotable.c                 rsc->id, promoted, clone_data->promoted_max);
rsc               816 lib/pacemaker/pcmk_sched_promotable.c create_promotable_actions(pe_resource_t * rsc, pe_working_set_t * data_set)
rsc               819 lib/pacemaker/pcmk_sched_promotable.c     GList *gIter = rsc->children;
rsc               828 lib/pacemaker/pcmk_sched_promotable.c     get_clone_variant_data(clone_data, rsc);
rsc               830 lib/pacemaker/pcmk_sched_promotable.c     pe_rsc_debug(rsc, "Creating actions for %s", rsc->id);
rsc               837 lib/pacemaker/pcmk_sched_promotable.c         pe_rsc_trace(rsc, "Creating actions for %s", child_rsc->id);
rsc               843 lib/pacemaker/pcmk_sched_promotable.c         pe_rsc_trace(rsc, "Created actions for %s: %d %d", child_rsc->id, child_promoting,
rsc               848 lib/pacemaker/pcmk_sched_promotable.c     action = pcmk__new_rsc_pseudo_action(rsc, RSC_PROMOTE, !any_promoting,
rsc               850 lib/pacemaker/pcmk_sched_promotable.c     action_complete = pcmk__new_rsc_pseudo_action(rsc, RSC_PROMOTED,
rsc               855 lib/pacemaker/pcmk_sched_promotable.c                                 rsc, NULL, last_promote_rsc, data_set);
rsc               858 lib/pacemaker/pcmk_sched_promotable.c         clone_data->promote_notify = pcmk__clone_notif_pseudo_ops(rsc,
rsc               865 lib/pacemaker/pcmk_sched_promotable.c     action = pcmk__new_rsc_pseudo_action(rsc, RSC_DEMOTE, !any_demoting, true);
rsc               866 lib/pacemaker/pcmk_sched_promotable.c     action_complete = pcmk__new_rsc_pseudo_action(rsc, RSC_DEMOTED,
rsc               870 lib/pacemaker/pcmk_sched_promotable.c     child_demoting_constraints(clone_data, pe_order_optional, rsc, NULL, last_demote_rsc, data_set);
rsc               873 lib/pacemaker/pcmk_sched_promotable.c         clone_data->demote_notify = pcmk__clone_notif_pseudo_ops(rsc,
rsc               897 lib/pacemaker/pcmk_sched_promotable.c     gIter = rsc->children;
rsc               901 lib/pacemaker/pcmk_sched_promotable.c         child_rsc->priority = rsc->priority;
rsc               906 lib/pacemaker/pcmk_sched_promotable.c promote_demote_constraints(pe_resource_t *rsc, pe_working_set_t *data_set)
rsc               909 lib/pacemaker/pcmk_sched_promotable.c     pcmk__order_resource_actions(rsc, RSC_STOPPED, rsc, RSC_START,
rsc               913 lib/pacemaker/pcmk_sched_promotable.c     pcmk__order_resource_actions(rsc, RSC_STOPPED, rsc, RSC_PROMOTE,
rsc               917 lib/pacemaker/pcmk_sched_promotable.c     pcmk__order_resource_actions(rsc, RSC_DEMOTED, rsc, RSC_START,
rsc               921 lib/pacemaker/pcmk_sched_promotable.c     pcmk__order_resource_actions(rsc, RSC_STARTED, rsc, RSC_PROMOTE,
rsc               925 lib/pacemaker/pcmk_sched_promotable.c     pcmk__order_resource_actions(rsc, RSC_DEMOTED, rsc, RSC_STOP,
rsc               929 lib/pacemaker/pcmk_sched_promotable.c     pcmk__order_resource_actions(rsc, RSC_DEMOTE, rsc, RSC_DEMOTED,
rsc               933 lib/pacemaker/pcmk_sched_promotable.c     pcmk__order_resource_actions(rsc, RSC_DEMOTED, rsc, RSC_PROMOTE,
rsc               939 lib/pacemaker/pcmk_sched_promotable.c promotable_constraints(pe_resource_t * rsc, pe_working_set_t * data_set)
rsc               941 lib/pacemaker/pcmk_sched_promotable.c     GList *gIter = rsc->children;
rsc               945 lib/pacemaker/pcmk_sched_promotable.c     get_clone_variant_data(clone_data, rsc);
rsc               947 lib/pacemaker/pcmk_sched_promotable.c     promote_demote_constraints(rsc, data_set);
rsc               957 lib/pacemaker/pcmk_sched_promotable.c                                     rsc, child_rsc, last_rsc, data_set);
rsc               960 lib/pacemaker/pcmk_sched_promotable.c                                    rsc, child_rsc, last_rsc, data_set);
rsc                67 lib/pacemaker/pcmk_sched_remote.c                            rh_action->rsc, NULL, rh_action,
rsc                78 lib/pacemaker/pcmk_sched_remote.c         pcmk__new_ordering(lh_action->rsc, NULL, lh_action,
rsc               186 lib/pacemaker/pcmk_sched_remote.c     if (action->rsc == NULL) {
rsc               322 lib/pacemaker/pcmk_sched_remote.c     CRM_ASSERT(action->rsc != NULL);
rsc               425 lib/pacemaker/pcmk_sched_remote.c         if (action->rsc == NULL) {
rsc               433 lib/pacemaker/pcmk_sched_remote.c         if (action->rsc->is_remote_node &&
rsc               436 lib/pacemaker/pcmk_sched_remote.c             pcmk__new_ordering(action->rsc, NULL, action, action->rsc,
rsc               437 lib/pacemaker/pcmk_sched_remote.c                                pcmk__op_key(action->rsc->id, RSC_START, 0),
rsc               474 lib/pacemaker/pcmk_sched_remote.c             for (GList *item = action->rsc->actions; item != NULL;
rsc               481 lib/pacemaker/pcmk_sched_remote.c                                        action->rsc, NULL, rsc_action,
rsc               533 lib/pacemaker/pcmk_sched_remote.c pcmk__rsc_corresponds_to_guest(pe_resource_t *rsc, pe_node_t *node)
rsc               535 lib/pacemaker/pcmk_sched_remote.c     return (rsc != NULL) && (rsc->fillers != NULL) && (node != NULL)
rsc               537 lib/pacemaker/pcmk_sched_remote.c             && (node->details->remote_rsc->container == rsc);
rsc               580 lib/pacemaker/pcmk_sched_remote.c                   action->task, (action->rsc? action->rsc->id : "no resource"),
rsc               589 lib/pacemaker/pcmk_sched_remote.c                   action->task, (action->rsc? action->rsc->id : "no resource"),
rsc               598 lib/pacemaker/pcmk_sched_remote.c                   action->task, (action->rsc? action->rsc->id : "no resource"),
rsc               631 lib/pacemaker/pcmk_sched_remote.c                   action->task, (action->rsc? action->rsc->id : "no resource"),
rsc               643 lib/pacemaker/pcmk_sched_remote.c               action->task, (action->rsc? action->rsc->id : "no resource"),
rsc               663 lib/pacemaker/pcmk_sched_remote.c pcmk__substitute_remote_addr(pe_resource_t *rsc, GHashTable *params,
rsc               670 lib/pacemaker/pcmk_sched_remote.c         GHashTable *base = pe_rsc_params(rsc, NULL, data_set);
rsc               730 lib/pacemaker/pcmk_sched_remote.c                        (gpointer) g_hash_table_lookup(action->rsc->meta,
rsc               104 lib/pacemaker/pcmk_sched_resource.c pcmk__rsc_agent_changed(pe_resource_t *rsc, pe_node_t *node,
rsc               115 lib/pacemaker/pcmk_sched_resource.c         const char *value = crm_element_value(rsc->xml, attr_list[i]);
rsc               120 lib/pacemaker/pcmk_sched_resource.c             trigger_unfencing(rsc, node, "Device definition changed", NULL,
rsc               121 lib/pacemaker/pcmk_sched_resource.c                               rsc->cluster);
rsc               125 lib/pacemaker/pcmk_sched_resource.c                            rsc->id, node->details->uname, attr_list[i],
rsc               132 lib/pacemaker/pcmk_sched_resource.c         custom_action(rsc, stop_key(rsc), CRMD_ACTION_STOP, node, FALSE, TRUE,
rsc               133 lib/pacemaker/pcmk_sched_resource.c                       rsc->cluster);
rsc               134 lib/pacemaker/pcmk_sched_resource.c         pe__set_resource_flags(rsc, pe_rsc_start_pending);
rsc               150 lib/pacemaker/pcmk_sched_resource.c add_rsc_if_matching(GList *result, pe_resource_t *rsc, const char *id)
rsc               152 lib/pacemaker/pcmk_sched_resource.c     if ((strcmp(rsc->id, id) == 0)
rsc               153 lib/pacemaker/pcmk_sched_resource.c         || ((rsc->clone_name != NULL) && (strcmp(rsc->clone_name, id) == 0))) {
rsc               154 lib/pacemaker/pcmk_sched_resource.c         result = g_list_prepend(result, rsc);
rsc               156 lib/pacemaker/pcmk_sched_resource.c     for (GList *iter = rsc->children; iter != NULL; iter = iter->next) {
rsc               195 lib/pacemaker/pcmk_sched_resource.c set_allocation_methods_for_rsc(pe_resource_t *rsc, void *ignored)
rsc               197 lib/pacemaker/pcmk_sched_resource.c     rsc->cmds = &allocation_methods[rsc->variant];
rsc               198 lib/pacemaker/pcmk_sched_resource.c     g_list_foreach(rsc->children, (GFunc) set_allocation_methods_for_rsc, NULL);
rsc               216 lib/pacemaker/pcmk_sched_resource.c pcmk__colocated_resources(pe_resource_t *rsc, pe_resource_t *orig_rsc,
rsc               222 lib/pacemaker/pcmk_sched_resource.c         orig_rsc = rsc;
rsc               225 lib/pacemaker/pcmk_sched_resource.c     if ((rsc == NULL) || (g_list_find(colocated_rscs, rsc) != NULL)) {
rsc               230 lib/pacemaker/pcmk_sched_resource.c                  rsc->id, orig_rsc->id);
rsc               231 lib/pacemaker/pcmk_sched_resource.c     colocated_rscs = g_list_append(colocated_rscs, rsc);
rsc               234 lib/pacemaker/pcmk_sched_resource.c     for (gIter = rsc->rsc_cons; gIter != NULL; gIter = gIter->next) {
rsc               243 lib/pacemaker/pcmk_sched_resource.c             (pcmk__colocation_affects(rsc, primary, constraint,
rsc               253 lib/pacemaker/pcmk_sched_resource.c     for (gIter = rsc->rsc_cons_lhs; gIter != NULL; gIter = gIter->next) {
rsc               261 lib/pacemaker/pcmk_sched_resource.c         if (pe_rsc_is_clone(rsc) && !pe_rsc_is_clone(dependent)) {
rsc               266 lib/pacemaker/pcmk_sched_resource.c             (pcmk__colocation_affects(dependent, rsc, constraint,
rsc               279 lib/pacemaker/pcmk_sched_resource.c pcmk__output_resource_actions(pe_resource_t *rsc)
rsc               281 lib/pacemaker/pcmk_sched_resource.c     pcmk__output_t *out = rsc->cluster->priv;
rsc               286 lib/pacemaker/pcmk_sched_resource.c     if (rsc->children != NULL) {
rsc               287 lib/pacemaker/pcmk_sched_resource.c         for (GList *iter = rsc->children; iter != NULL; iter = iter->next) {
rsc               295 lib/pacemaker/pcmk_sched_resource.c     next = rsc->allocated_to;
rsc               296 lib/pacemaker/pcmk_sched_resource.c     if (rsc->running_on) {
rsc               297 lib/pacemaker/pcmk_sched_resource.c         current = pe__current_node(rsc);
rsc               298 lib/pacemaker/pcmk_sched_resource.c         if (rsc->role == RSC_ROLE_STOPPED) {
rsc               303 lib/pacemaker/pcmk_sched_resource.c             rsc->role = RSC_ROLE_STARTED;
rsc               307 lib/pacemaker/pcmk_sched_resource.c     if ((current == NULL) && pcmk_is_set(rsc->flags, pe_rsc_orphan)) {
rsc               312 lib/pacemaker/pcmk_sched_resource.c     out->message(out, "rsc-action", rsc, current, next);
rsc               337 lib/pacemaker/pcmk_sched_resource.c pcmk__assign_primitive(pe_resource_t *rsc, pe_node_t *chosen, bool force)
rsc               339 lib/pacemaker/pcmk_sched_resource.c     pcmk__output_t *out = rsc->cluster->priv;
rsc               341 lib/pacemaker/pcmk_sched_resource.c     CRM_ASSERT(rsc->variant == pe_native);
rsc               350 lib/pacemaker/pcmk_sched_resource.c                       rsc->id, chosen->details->uname,
rsc               353 lib/pacemaker/pcmk_sched_resource.c             pe__set_next_role(rsc, RSC_ROLE_STOPPED, "node availability");
rsc               358 lib/pacemaker/pcmk_sched_resource.c     pcmk__unassign_resource(rsc);
rsc               359 lib/pacemaker/pcmk_sched_resource.c     pe__clear_resource_flags(rsc, pe_rsc_provisional);
rsc               362 lib/pacemaker/pcmk_sched_resource.c         crm_debug("Could not allocate a node for %s", rsc->id);
rsc               363 lib/pacemaker/pcmk_sched_resource.c         pe__set_next_role(rsc, RSC_ROLE_STOPPED, "unable to allocate");
rsc               365 lib/pacemaker/pcmk_sched_resource.c         for (GList *iter = rsc->actions; iter != NULL; iter = iter->next) {
rsc               398 lib/pacemaker/pcmk_sched_resource.c     crm_debug("Assigning %s to %s", rsc->id, chosen->details->uname);
rsc               399 lib/pacemaker/pcmk_sched_resource.c     rsc->allocated_to = pe__copy_node(chosen);
rsc               402 lib/pacemaker/pcmk_sched_resource.c                                                     rsc);
rsc               405 lib/pacemaker/pcmk_sched_resource.c     pcmk__consume_node_capacity(chosen->details->utilization, rsc);
rsc               407 lib/pacemaker/pcmk_sched_resource.c     if (pcmk_is_set(rsc->cluster->flags, pe_flag_show_utilization)) {
rsc               408 lib/pacemaker/pcmk_sched_resource.c         out->message(out, "resource-util", rsc, chosen, __func__);
rsc               434 lib/pacemaker/pcmk_sched_resource.c pcmk__assign_resource(pe_resource_t *rsc, pe_node_t *node, bool force)
rsc               438 lib/pacemaker/pcmk_sched_resource.c     if (rsc->children == NULL) {
rsc               439 lib/pacemaker/pcmk_sched_resource.c         if (rsc->allocated_to != NULL) {
rsc               442 lib/pacemaker/pcmk_sched_resource.c         pcmk__assign_primitive(rsc, node, force);
rsc               445 lib/pacemaker/pcmk_sched_resource.c         for (GList *iter = rsc->children; iter != NULL; iter = iter->next) {
rsc               465 lib/pacemaker/pcmk_sched_resource.c pcmk__unassign_resource(pe_resource_t *rsc)
rsc               467 lib/pacemaker/pcmk_sched_resource.c     pe_node_t *old = rsc->allocated_to;
rsc               473 lib/pacemaker/pcmk_sched_resource.c     crm_info("Unassigning %s from %s", rsc->id, old->details->uname);
rsc               474 lib/pacemaker/pcmk_sched_resource.c     pe__set_resource_flags(rsc, pe_rsc_provisional);
rsc               475 lib/pacemaker/pcmk_sched_resource.c     rsc->allocated_to = NULL;
rsc               481 lib/pacemaker/pcmk_sched_resource.c                                                 rsc);
rsc               483 lib/pacemaker/pcmk_sched_resource.c     pcmk__release_node_capacity(old->details->utilization, rsc);
rsc               499 lib/pacemaker/pcmk_sched_resource.c pcmk__threshold_reached(pe_resource_t *rsc, pe_node_t *node,
rsc               503 lib/pacemaker/pcmk_sched_resource.c     pe_resource_t *rsc_to_ban = rsc;
rsc               506 lib/pacemaker/pcmk_sched_resource.c     if (rsc->migration_threshold == 0) {
rsc               511 lib/pacemaker/pcmk_sched_resource.c     if (pcmk_is_set(rsc->flags, pe_rsc_failure_ignored)) {
rsc               516 lib/pacemaker/pcmk_sched_resource.c     fail_count = pe_get_failcount(node, rsc, NULL,
rsc               518 lib/pacemaker/pcmk_sched_resource.c                                   rsc->cluster);
rsc               524 lib/pacemaker/pcmk_sched_resource.c     if (!pcmk_is_set(rsc->flags, pe_rsc_unique)) {
rsc               525 lib/pacemaker/pcmk_sched_resource.c         rsc_to_ban = uber_parent(rsc);
rsc               529 lib/pacemaker/pcmk_sched_resource.c     remaining_tries = rsc->migration_threshold - fail_count;
rsc               536 lib/pacemaker/pcmk_sched_resource.c                  rsc->migration_threshold);
rsc               546 lib/pacemaker/pcmk_sched_resource.c              node->details->uname, rsc->migration_threshold);
rsc               166 lib/pacemaker/pcmk_sched_utilization.c pcmk__consume_node_capacity(GHashTable *current_utilization, pe_resource_t *rsc)
rsc               173 lib/pacemaker/pcmk_sched_utilization.c     g_hash_table_foreach(rsc->utilization, update_utilization_value, &data);
rsc               184 lib/pacemaker/pcmk_sched_utilization.c pcmk__release_node_capacity(GHashTable *current_utilization, pe_resource_t *rsc)
rsc               191 lib/pacemaker/pcmk_sched_utilization.c     g_hash_table_foreach(rsc->utilization, update_utilization_value, &data);
rsc               276 lib/pacemaker/pcmk_sched_utilization.c         pe_resource_t *rsc = (pe_resource_t *) iter->data;
rsc               278 lib/pacemaker/pcmk_sched_utilization.c         rsc->cmds->add_utilization(rsc, orig_rsc, rscs, utilization);
rsc               292 lib/pacemaker/pcmk_sched_utilization.c pcmk__ban_insufficient_capacity(pe_resource_t *rsc, pe_node_t **prefer,
rsc               303 lib/pacemaker/pcmk_sched_utilization.c     CRM_CHECK((rsc != NULL) && (prefer != NULL) && (data_set != NULL), return);
rsc               312 lib/pacemaker/pcmk_sched_utilization.c     colocated_rscs = rsc->cmds->colocated_resources(rsc, NULL, NULL);
rsc               317 lib/pacemaker/pcmk_sched_utilization.c     rscs_id = crm_strdup_printf("%s and its colocated resources", rsc->id);
rsc               320 lib/pacemaker/pcmk_sched_utilization.c     if (g_list_find(colocated_rscs, rsc) == NULL) {
rsc               321 lib/pacemaker/pcmk_sched_utilization.c         colocated_rscs = g_list_append(colocated_rscs, rsc);
rsc               325 lib/pacemaker/pcmk_sched_utilization.c     unallocated_utilization = sum_resource_utilization(rsc, colocated_rscs);
rsc               328 lib/pacemaker/pcmk_sched_utilization.c     g_hash_table_iter_init(&iter, rsc->allowed_nodes);
rsc               347 lib/pacemaker/pcmk_sched_utilization.c         g_hash_table_iter_init(&iter, rsc->allowed_nodes);
rsc               352 lib/pacemaker/pcmk_sched_utilization.c                 pe_rsc_debug(rsc, "%s does not have enough capacity for %s",
rsc               354 lib/pacemaker/pcmk_sched_utilization.c                 resource_location(rsc, node, -INFINITY, "__limit_utilization__",
rsc               364 lib/pacemaker/pcmk_sched_utilization.c         g_hash_table_iter_init(&iter, rsc->allowed_nodes);
rsc               367 lib/pacemaker/pcmk_sched_utilization.c                 && !have_enough_capacity(node, rsc->id, rsc->utilization)) {
rsc               368 lib/pacemaker/pcmk_sched_utilization.c                 pe_rsc_debug(rsc, "%s does not have enough capacity for %s",
rsc               369 lib/pacemaker/pcmk_sched_utilization.c                              node->details->uname, rsc->id);
rsc               370 lib/pacemaker/pcmk_sched_utilization.c                 resource_location(rsc, node, -INFINITY, "__limit_utilization__",
rsc               380 lib/pacemaker/pcmk_sched_utilization.c     pe__show_node_weights(true, rsc, "Post-utilization",
rsc               381 lib/pacemaker/pcmk_sched_utilization.c                           rsc->allowed_nodes, data_set);
rsc               416 lib/pacemaker/pcmk_sched_utilization.c pcmk__create_utilization_constraints(pe_resource_t *rsc, GList *allowed_nodes)
rsc               422 lib/pacemaker/pcmk_sched_utilization.c     pe_rsc_trace(rsc, "Creating utilization constraints for %s - strategy: %s",
rsc               423 lib/pacemaker/pcmk_sched_utilization.c                  rsc->id, rsc->cluster->placement_strategy);
rsc               426 lib/pacemaker/pcmk_sched_utilization.c     for (iter = rsc->running_on; iter != NULL; iter = iter->next) {
rsc               428 lib/pacemaker/pcmk_sched_utilization.c         load_stopped = new_load_stopped_op(node, rsc->cluster);
rsc               429 lib/pacemaker/pcmk_sched_utilization.c         pcmk__new_ordering(rsc, stop_key(rsc), NULL, NULL, NULL, load_stopped,
rsc               430 lib/pacemaker/pcmk_sched_utilization.c                            pe_order_load, rsc->cluster);
rsc               436 lib/pacemaker/pcmk_sched_utilization.c         load_stopped = new_load_stopped_op(node, rsc->cluster);
rsc               437 lib/pacemaker/pcmk_sched_utilization.c         pcmk__new_ordering(NULL, NULL, load_stopped, rsc, start_key(rsc), NULL,
rsc               438 lib/pacemaker/pcmk_sched_utilization.c                            pe_order_load, rsc->cluster);
rsc               440 lib/pacemaker/pcmk_sched_utilization.c                            rsc, pcmk__op_key(rsc->id, RSC_MIGRATE, 0), NULL,
rsc               441 lib/pacemaker/pcmk_sched_utilization.c                            pe_order_load, rsc->cluster);
rsc                65 lib/pacemaker/pcmk_simulate.c     if (action->rsc != NULL) {
rsc                66 lib/pacemaker/pcmk_simulate.c         clone_name = action->rsc->clone_name;
rsc               107 lib/pacemaker/pcmk_simulate.c     } else if (action->rsc && action_host) {
rsc               246 lib/pacemaker/pcmk_simulate.c         } else if ((action->rsc != NULL)
rsc               247 lib/pacemaker/pcmk_simulate.c                    && !pcmk_is_set(action->rsc->flags, pe_rsc_managed)) {
rsc               662 lib/pacemaker/pcmk_simulate.c     xmlNode *rsc = first_named_child(action->xml, XML_CIB_TAG_RESOURCE);
rsc               665 lib/pacemaker/pcmk_simulate.c     out->message(out, "inject-cluster-action", node, task, rsc);
rsc                88 lib/pengine/bundle.c     xmlNode *rsc = create_xml_node(NULL, XML_CIB_TAG_RESOURCE);
rsc                90 lib/pengine/bundle.c     crm_xml_add(rsc, XML_ATTR_ID, name);
rsc                91 lib/pengine/bundle.c     crm_xml_add(rsc, XML_AGENT_ATTR_CLASS, PCMK_RESOURCE_CLASS_OCF);
rsc                92 lib/pengine/bundle.c     crm_xml_add(rsc, XML_AGENT_ATTR_PROVIDER, provider);
rsc                93 lib/pengine/bundle.c     crm_xml_add(rsc, XML_ATTR_TYPE, kind);
rsc                95 lib/pengine/bundle.c     return rsc;
rsc               679 lib/pengine/bundle.c disallow_node(pe_resource_t *rsc, const char *uname)
rsc               681 lib/pengine/bundle.c     gpointer match = g_hash_table_lookup(rsc->allowed_nodes, uname);
rsc               687 lib/pengine/bundle.c     if (rsc->children) {
rsc               688 lib/pengine/bundle.c         g_list_foreach(rsc->children, (GFunc) disallow_node, (gpointer) uname);
rsc               943 lib/pengine/bundle.c pe__bundle_needs_remote_name(pe_resource_t *rsc, pe_working_set_t *data_set)
rsc               948 lib/pengine/bundle.c     if (rsc == NULL) {
rsc               953 lib/pengine/bundle.c     params = pe_rsc_params(rsc, NULL, data_set);
rsc               957 lib/pengine/bundle.c            && xml_contains_remote_node(rsc->xml);
rsc               961 lib/pengine/bundle.c pe__add_bundle_remote_name(pe_resource_t *rsc, pe_working_set_t *data_set,
rsc               969 lib/pengine/bundle.c     if (!pe__bundle_needs_remote_name(rsc, data_set)) {
rsc               973 lib/pengine/bundle.c     replica = replica_for_remote(rsc);
rsc               987 lib/pengine/bundle.c         crm_trace("Cannot determine address for bundle connection %s", rsc->id);
rsc               992 lib/pengine/bundle.c               rsc->id, node->details->uname);
rsc              1007 lib/pengine/bundle.c pe__unpack_bundle(pe_resource_t *rsc, pe_working_set_t *data_set)
rsc              1015 lib/pengine/bundle.c     CRM_ASSERT(rsc != NULL);
rsc              1016 lib/pengine/bundle.c     pe_rsc_trace(rsc, "Processing resource %s...", rsc->id);
rsc              1019 lib/pengine/bundle.c     rsc->variant_opaque = bundle_data;
rsc              1020 lib/pengine/bundle.c     bundle_data->prefix = strdup(rsc->id);
rsc              1022 lib/pengine/bundle.c     xml_obj = first_named_child(rsc->xml, PE__CONTAINER_AGENT_DOCKER_S);
rsc              1026 lib/pengine/bundle.c         xml_obj = first_named_child(rsc->xml, PE__CONTAINER_AGENT_RKT_S);
rsc              1030 lib/pengine/bundle.c             xml_obj = first_named_child(rsc->xml, PE__CONTAINER_AGENT_PODMAN_S);
rsc              1063 lib/pengine/bundle.c         pe__clear_resource_flags(rsc, pe_rsc_unique);
rsc              1071 lib/pengine/bundle.c     xml_obj = first_named_child(rsc->xml, "network");
rsc              1108 lib/pengine/bundle.c     xml_obj = first_named_child(rsc->xml, "storage");
rsc              1133 lib/pengine/bundle.c     xml_obj = first_named_child(rsc->xml, "primitive");
rsc              1182 lib/pengine/bundle.c                rsc->id, ID(xml_obj));
rsc              1195 lib/pengine/bundle.c         if (common_unpack(xml_resource, &new_rsc, rsc, data_set) == FALSE) {
rsc              1196 lib/pengine/bundle.c             pe_err("Failed unpacking resource %s", ID(rsc->xml));
rsc              1275 lib/pengine/bundle.c             g_hash_table_replace(rsc->meta, strdup(XML_RSC_ATTR_TARGET),
rsc              1303 lib/pengine/bundle.c         if (!create_container(rsc, bundle_data, replica, data_set)) {
rsc              1304 lib/pengine/bundle.c             pe_err("Failed unpacking resource %s", rsc->id);
rsc              1305 lib/pengine/bundle.c             rsc->fns->free(rsc);
rsc              1334 lib/pengine/bundle.c         rsc->children = g_list_append(rsc->children, bundle_data->child);
rsc              1340 lib/pengine/bundle.c replica_resource_active(pe_resource_t *rsc, gboolean all)
rsc              1342 lib/pengine/bundle.c     if (rsc) {
rsc              1343 lib/pengine/bundle.c         gboolean child_active = rsc->fns->active(rsc, all);
rsc              1355 lib/pengine/bundle.c pe__bundle_active(pe_resource_t *rsc, gboolean all)
rsc              1360 lib/pengine/bundle.c     get_bundle_variant_data(bundle_data, rsc);
rsc              1422 lib/pengine/bundle.c print_rsc_in_list(pe_resource_t *rsc, const char *pre_text, long options,
rsc              1425 lib/pengine/bundle.c     if (rsc != NULL) {
rsc              1429 lib/pengine/bundle.c         rsc->fns->print(rsc, pre_text, options, print_data);
rsc              1450 lib/pengine/bundle.c bundle_print_xml(pe_resource_t *rsc, const char *pre_text, long options,
rsc              1455 lib/pengine/bundle.c     CRM_CHECK(rsc != NULL, return);
rsc              1462 lib/pengine/bundle.c     get_bundle_variant_data(bundle_data, rsc);
rsc              1465 lib/pengine/bundle.c     status_print("id=\"%s\" ", rsc->id);
rsc              1468 lib/pengine/bundle.c     status_print("unique=\"%s\" ", pe__rsc_bool_str(rsc, pe_rsc_unique));
rsc              1469 lib/pengine/bundle.c     status_print("managed=\"%s\" ", pe__rsc_bool_str(rsc, pe_rsc_managed));
rsc              1470 lib/pengine/bundle.c     status_print("failed=\"%s\" ", pe__rsc_bool_str(rsc, pe_rsc_failed));
rsc              1494 lib/pengine/bundle.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc              1503 lib/pengine/bundle.c     CRM_ASSERT(rsc != NULL);
rsc              1505 lib/pengine/bundle.c     get_bundle_variant_data(bundle_data, rsc);
rsc              1507 lib/pengine/bundle.c     if (rsc->fns->is_filtered(rsc, only_rsc, TRUE)) {
rsc              1511 lib/pengine/bundle.c     print_everything = pcmk__str_in_list(rsc->id, only_rsc, pcmk__str_star_matches);
rsc              1541 lib/pengine/bundle.c                      "id", rsc->id,
rsc              1544 lib/pengine/bundle.c                      "unique", pe__rsc_bool_str(rsc, pe_rsc_unique),
rsc              1545 lib/pengine/bundle.c                      "managed", pe__rsc_bool_str(rsc, pe_rsc_managed),
rsc              1546 lib/pengine/bundle.c                      "failed", pe__rsc_bool_str(rsc, pe_rsc_failed));
rsc              1589 lib/pengine/bundle.c     pe_resource_t *rsc = replica->child;
rsc              1594 lib/pengine/bundle.c     if(rsc == NULL) {
rsc              1595 lib/pengine/bundle.c         rsc = replica->container;
rsc              1610 lib/pengine/bundle.c     pe__common_output_html(out, rsc, buffer, node, show_opts);
rsc              1618 lib/pengine/bundle.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc              1626 lib/pengine/bundle.c     CRM_ASSERT(rsc != NULL);
rsc              1628 lib/pengine/bundle.c     get_bundle_variant_data(bundle_data, rsc);
rsc              1630 lib/pengine/bundle.c     if (rsc->fns->is_filtered(rsc, only_rsc, TRUE)) {
rsc              1634 lib/pengine/bundle.c     print_everything = pcmk__str_in_list(rsc->id, only_rsc, pcmk__str_star_matches);
rsc              1664 lib/pengine/bundle.c                                      rsc->id, bundle_data->image,
rsc              1665 lib/pengine/bundle.c                                      pcmk_is_set(rsc->flags, pe_rsc_unique) ? " (unique)" : "",
rsc              1666 lib/pengine/bundle.c                                      pcmk_is_set(rsc->flags, pe_rsc_managed) ? "" : " (unmanaged)");
rsc              1700 lib/pengine/bundle.c                                      rsc->id, bundle_data->image,
rsc              1701 lib/pengine/bundle.c                                      pcmk_is_set(rsc->flags, pe_rsc_unique) ? " (unique)" : "",
rsc              1702 lib/pengine/bundle.c                                      pcmk_is_set(rsc->flags, pe_rsc_managed) ? "" : " (unmanaged)");
rsc              1717 lib/pengine/bundle.c     pe_resource_t *rsc = replica->child;
rsc              1722 lib/pengine/bundle.c     if(rsc == NULL) {
rsc              1723 lib/pengine/bundle.c         rsc = replica->container;
rsc              1738 lib/pengine/bundle.c     pe__common_output_text(out, rsc, buffer, node, show_opts);
rsc              1746 lib/pengine/bundle.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc              1754 lib/pengine/bundle.c     get_bundle_variant_data(bundle_data, rsc);
rsc              1756 lib/pengine/bundle.c     CRM_ASSERT(rsc != NULL);
rsc              1758 lib/pengine/bundle.c     if (rsc->fns->is_filtered(rsc, only_rsc, TRUE)) {
rsc              1762 lib/pengine/bundle.c     print_everything = pcmk__str_in_list(rsc->id, only_rsc, pcmk__str_star_matches);
rsc              1792 lib/pengine/bundle.c                                      rsc->id, bundle_data->image,
rsc              1793 lib/pengine/bundle.c                                      pcmk_is_set(rsc->flags, pe_rsc_unique) ? " (unique)" : "",
rsc              1794 lib/pengine/bundle.c                                      pcmk_is_set(rsc->flags, pe_rsc_managed) ? "" : " (unmanaged)");
rsc              1828 lib/pengine/bundle.c                                      rsc->id, bundle_data->image,
rsc              1829 lib/pengine/bundle.c                                      pcmk_is_set(rsc->flags, pe_rsc_unique) ? " (unique)" : "",
rsc              1830 lib/pengine/bundle.c                                      pcmk_is_set(rsc->flags, pe_rsc_managed) ? "" : " (unmanaged)");
rsc              1846 lib/pengine/bundle.c     pe_resource_t *rsc = replica->child;
rsc              1851 lib/pengine/bundle.c     if(rsc == NULL) {
rsc              1852 lib/pengine/bundle.c         rsc = replica->container;
rsc              1868 lib/pengine/bundle.c     common_print(rsc, pre_text, buffer, node, options, print_data);
rsc              1872 lib/pengine/bundle.c pe__print_bundle(pe_resource_t *rsc, const char *pre_text, long options,
rsc              1877 lib/pengine/bundle.c     CRM_CHECK(rsc != NULL, return);
rsc              1880 lib/pengine/bundle.c         bundle_print_xml(rsc, pre_text, options, print_data);
rsc              1884 lib/pengine/bundle.c     get_bundle_variant_data(bundle_data, rsc);
rsc              1892 lib/pengine/bundle.c                  rsc->id, bundle_data->image,
rsc              1893 lib/pengine/bundle.c                  pcmk_is_set(rsc->flags, pe_rsc_unique) ? " (unique)" : "",
rsc              1894 lib/pengine/bundle.c                  pcmk_is_set(rsc->flags, pe_rsc_managed) ? "" : " (unmanaged)");
rsc              1974 lib/pengine/bundle.c pe__free_bundle(pe_resource_t *rsc)
rsc              1977 lib/pengine/bundle.c     CRM_CHECK(rsc != NULL, return);
rsc              1979 lib/pengine/bundle.c     get_bundle_variant_data(bundle_data, rsc);
rsc              1980 lib/pengine/bundle.c     pe_rsc_trace(rsc, "Freeing %s", rsc->id);
rsc              1997 lib/pengine/bundle.c     g_list_free(rsc->children);
rsc              2004 lib/pengine/bundle.c     common_free(rsc);
rsc              2008 lib/pengine/bundle.c pe__bundle_resource_state(const pe_resource_t *rsc, gboolean current)
rsc              2022 lib/pengine/bundle.c pe_bundle_replicas(const pe_resource_t *rsc)
rsc              2024 lib/pengine/bundle.c     if ((rsc == NULL) || (rsc->variant != pe_container)) {
rsc              2029 lib/pengine/bundle.c         get_bundle_variant_data(bundle_data, rsc);
rsc              2035 lib/pengine/bundle.c pe__count_bundle(pe_resource_t *rsc)
rsc              2039 lib/pengine/bundle.c     get_bundle_variant_data(bundle_data, rsc);
rsc              2059 lib/pengine/bundle.c pe__bundle_is_filtered(pe_resource_t *rsc, GList *only_rsc, gboolean check_parent)
rsc              2064 lib/pengine/bundle.c     if (pcmk__str_in_list(rsc_printable_id(rsc), only_rsc, pcmk__str_star_matches)) {
rsc              2067 lib/pengine/bundle.c         get_bundle_variant_data(bundle_data, rsc);
rsc                83 lib/pengine/clone.c clone_header(pcmk__output_t *out, int *rc, pe_resource_t *rsc, clone_variant_data_t *clone_data)
rsc                88 lib/pengine/clone.c     if (pcmk_is_set(rsc->flags, pe_rsc_promotable)) {
rsc                92 lib/pengine/clone.c     if (pcmk_is_set(rsc->flags, pe_rsc_unique)) {
rsc                96 lib/pengine/clone.c     if (!pcmk_is_set(rsc->flags, pe_rsc_managed)) {
rsc               100 lib/pengine/clone.c     if (pe__resource_is_disabled(rsc)) {
rsc               106 lib/pengine/clone.c                              rsc->id, ID(clone_data->xml_obj_child),
rsc               111 lib/pengine/clone.c                                  rsc->id, ID(clone_data->xml_obj_child))
rsc               116 lib/pengine/clone.c pe__force_anon(const char *standard, pe_resource_t *rsc, const char *rid,
rsc               119 lib/pengine/clone.c     if (pe_rsc_is_clone(rsc)) {
rsc               122 lib/pengine/clone.c         get_clone_variant_data(clone_data, rsc);
rsc               126 lib/pengine/clone.c                 rsc->id, standard, rid);
rsc               135 lib/pengine/clone.c find_clone_instance(pe_resource_t * rsc, const char *sub_id, pe_working_set_t * data_set)
rsc               142 lib/pengine/clone.c     get_clone_variant_data(clone_data, rsc);
rsc               146 lib/pengine/clone.c     child = pe_find_resource(rsc->children, child_id);
rsc               153 lib/pengine/clone.c pe__create_clone_child(pe_resource_t *rsc, pe_working_set_t *data_set)
rsc               162 lib/pengine/clone.c     get_clone_variant_data(clone_data, rsc);
rsc               179 lib/pengine/clone.c     if (common_unpack(child_copy, &child_rsc, rsc, data_set) == FALSE) {
rsc               189 lib/pengine/clone.c     rsc->children = g_list_append(rsc->children, child_rsc);
rsc               195 lib/pengine/clone.c     pe_rsc_trace(rsc, "Added %s instance %s", rsc->id, child_rsc->id);
rsc               205 lib/pengine/clone.c clone_unpack(pe_resource_t * rsc, pe_working_set_t * data_set)
rsc               209 lib/pengine/clone.c     xmlNode *xml_obj = rsc->xml;
rsc               212 lib/pengine/clone.c     const char *ordered = g_hash_table_lookup(rsc->meta, XML_RSC_ATTR_ORDERED);
rsc               213 lib/pengine/clone.c     const char *max_clones = g_hash_table_lookup(rsc->meta, XML_RSC_ATTR_INCARNATION_MAX);
rsc               214 lib/pengine/clone.c     const char *max_clones_node = g_hash_table_lookup(rsc->meta, XML_RSC_ATTR_INCARNATION_NODEMAX);
rsc               216 lib/pengine/clone.c     pe_rsc_trace(rsc, "Processing resource %s...", rsc->id);
rsc               219 lib/pengine/clone.c     rsc->variant_opaque = clone_data;
rsc               221 lib/pengine/clone.c     if (pcmk_is_set(rsc->flags, pe_rsc_promotable)) {
rsc               225 lib/pengine/clone.c         promoted_max = g_hash_table_lookup(rsc->meta,
rsc               229 lib/pengine/clone.c             promoted_max = g_hash_table_lookup(rsc->meta,
rsc               233 lib/pengine/clone.c         promoted_node_max = g_hash_table_lookup(rsc->meta,
rsc               237 lib/pengine/clone.c             promoted_node_max = g_hash_table_lookup(rsc->meta,
rsc               278 lib/pengine/clone.c     if ((rsc->flags & pe_rsc_unique) == 0 && clone_data->clone_node_max > 1) {
rsc               281 lib/pengine/clone.c                          "per node", rsc->id);
rsc               285 lib/pengine/clone.c     pe_rsc_trace(rsc, "Options for %s", rsc->id);
rsc               286 lib/pengine/clone.c     pe_rsc_trace(rsc, "\tClone max: %d", clone_data->clone_max);
rsc               287 lib/pengine/clone.c     pe_rsc_trace(rsc, "\tClone node max: %d", clone_data->clone_node_max);
rsc               288 lib/pengine/clone.c     pe_rsc_trace(rsc, "\tClone is unique: %s",
rsc               289 lib/pengine/clone.c                  pe__rsc_bool_str(rsc, pe_rsc_unique));
rsc               290 lib/pengine/clone.c     pe_rsc_trace(rsc, "\tClone is promotable: %s",
rsc               291 lib/pengine/clone.c                  pe__rsc_bool_str(rsc, pe_rsc_promotable));
rsc               304 lib/pengine/clone.c         pcmk__config_err("%s has nothing to clone", rsc->id);
rsc               314 lib/pengine/clone.c     if (g_hash_table_lookup(rsc->meta, XML_RSC_ATTR_STICKINESS) == NULL) {
rsc               315 lib/pengine/clone.c         add_hash_param(rsc->meta, XML_RSC_ATTR_STICKINESS, "1");
rsc               321 lib/pengine/clone.c     add_hash_param(rsc->meta, XML_RSC_ATTR_UNIQUE,
rsc               322 lib/pengine/clone.c                    pe__rsc_bool_str(rsc, pe_rsc_unique));
rsc               328 lib/pengine/clone.c         if (pe__create_clone_child(rsc, data_set) == NULL) {
rsc               335 lib/pengine/clone.c             if (pe__create_clone_child(rsc, data_set) == NULL) {
rsc               341 lib/pengine/clone.c     pe_rsc_trace(rsc, "Added %d children to resource %s...", clone_data->clone_max, rsc->id);
rsc               346 lib/pengine/clone.c clone_active(pe_resource_t * rsc, gboolean all)
rsc               348 lib/pengine/clone.c     GList *gIter = rsc->children;
rsc               394 lib/pengine/clone.c configured_role_str(pe_resource_t * rsc)
rsc               396 lib/pengine/clone.c     const char *target_role = g_hash_table_lookup(rsc->meta,
rsc               399 lib/pengine/clone.c     if ((target_role == NULL) && rsc->children && rsc->children->data) {
rsc               400 lib/pengine/clone.c         target_role = g_hash_table_lookup(((pe_resource_t*)rsc->children->data)->meta,
rsc               407 lib/pengine/clone.c configured_role(pe_resource_t * rsc)
rsc               409 lib/pengine/clone.c     const char *target_role = configured_role_str(rsc);
rsc               418 lib/pengine/clone.c clone_print_xml(pe_resource_t * rsc, const char *pre_text, long options, void *print_data)
rsc               421 lib/pengine/clone.c     const char *target_role = configured_role_str(rsc);
rsc               422 lib/pengine/clone.c     GList *gIter = rsc->children;
rsc               425 lib/pengine/clone.c     status_print("id=\"%s\" ", rsc->id);
rsc               427 lib/pengine/clone.c                  pe__rsc_bool_str(rsc, pe_rsc_promotable));
rsc               428 lib/pengine/clone.c     status_print("unique=\"%s\" ", pe__rsc_bool_str(rsc, pe_rsc_unique));
rsc               429 lib/pengine/clone.c     status_print("managed=\"%s\" ", pe__rsc_bool_str(rsc, pe_rsc_managed));
rsc               430 lib/pengine/clone.c     status_print("failed=\"%s\" ", pe__rsc_bool_str(rsc, pe_rsc_failed));
rsc               432 lib/pengine/clone.c                  pe__rsc_bool_str(rsc, pe_rsc_failure_ignored));
rsc               448 lib/pengine/clone.c bool is_set_recursive(pe_resource_t * rsc, long long flag, bool any)
rsc               453 lib/pengine/clone.c     if (pcmk_is_set(rsc->flags, flag)) {
rsc               461 lib/pengine/clone.c     for (gIter = rsc->children; gIter != NULL; gIter = gIter->next) {
rsc               479 lib/pengine/clone.c clone_print(pe_resource_t * rsc, const char *pre_text, long options, void *print_data)
rsc               489 lib/pengine/clone.c     GList *gIter = rsc->children;
rsc               499 lib/pengine/clone.c         clone_print_xml(rsc, pre_text, options, print_data);
rsc               503 lib/pengine/clone.c     get_clone_variant_data(clone_data, rsc);
rsc               508 lib/pengine/clone.c                  pre_text ? pre_text : "", rsc->id, ID(clone_data->xml_obj_child),
rsc               509 lib/pengine/clone.c                  pcmk_is_set(rsc->flags, pe_rsc_promotable)? " (promotable)" : "",
rsc               510 lib/pengine/clone.c                  pcmk_is_set(rsc->flags, pe_rsc_unique)? " (unique)" : "",
rsc               511 lib/pengine/clone.c                  pcmk_is_set(rsc->flags, pe_rsc_managed)? "" : " (unmanaged)");
rsc               529 lib/pengine/clone.c         if (pcmk_is_set(rsc->flags, pe_rsc_unique)) {
rsc               531 lib/pengine/clone.c             if (partially_active || !pcmk_is_set(rsc->flags, pe_rsc_orphan)) {
rsc               623 lib/pengine/clone.c     if (pcmk_is_set(rsc->flags, pe_rsc_promotable)) {
rsc               624 lib/pengine/clone.c         enum rsc_role_e role = configured_role(rsc);
rsc               646 lib/pengine/clone.c         enum rsc_role_e role = configured_role(rsc);
rsc               652 lib/pengine/clone.c         if (!pcmk_is_set(rsc->flags, pe_rsc_unique)
rsc               656 lib/pengine/clone.c             GList *list = g_hash_table_get_values(rsc->allowed_nodes);
rsc               667 lib/pengine/clone.c                 list = g_hash_table_get_values(rsc->known_on);
rsc               674 lib/pengine/clone.c                 if (pe_find_node(rsc->running_on, node->details->uname) == NULL) {
rsc               698 lib/pengine/clone.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc               702 lib/pengine/clone.c     GList *gIter = rsc->children;
rsc               708 lib/pengine/clone.c     if (rsc->fns->is_filtered(rsc, only_rsc, TRUE)) {
rsc               712 lib/pengine/clone.c     print_everything = pcmk__str_in_list(rsc_printable_id(rsc), only_rsc, pcmk__str_star_matches) ||
rsc               713 lib/pengine/clone.c                        (strstr(rsc->id, ":") != NULL && pcmk__str_in_list(rsc->id, only_rsc, pcmk__str_star_matches));
rsc               732 lib/pengine/clone.c                     "id", rsc->id,
rsc               733 lib/pengine/clone.c                     "multi_state", pe__rsc_bool_str(rsc, pe_rsc_promotable),
rsc               734 lib/pengine/clone.c                     "unique", pe__rsc_bool_str(rsc, pe_rsc_unique),
rsc               735 lib/pengine/clone.c                     "managed", pe__rsc_bool_str(rsc, pe_rsc_managed),
rsc               736 lib/pengine/clone.c                     "disabled", pcmk__btoa(pe__resource_is_disabled(rsc)),
rsc               737 lib/pengine/clone.c                     "failed", pe__rsc_bool_str(rsc, pe_rsc_failed),
rsc               738 lib/pengine/clone.c                     "failure_ignored", pe__rsc_bool_str(rsc, pe_rsc_failure_ignored),
rsc               739 lib/pengine/clone.c                     "target_role", configured_role_str(rsc));
rsc               760 lib/pengine/clone.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc               771 lib/pengine/clone.c     GList *gIter = rsc->children;
rsc               778 lib/pengine/clone.c     get_clone_variant_data(clone_data, rsc);
rsc               780 lib/pengine/clone.c     if (rsc->fns->is_filtered(rsc, only_rsc, TRUE)) {
rsc               784 lib/pengine/clone.c     print_everything = pcmk__str_in_list(rsc_printable_id(rsc), only_rsc, pcmk__str_star_matches) ||
rsc               785 lib/pengine/clone.c                        (strstr(rsc->id, ":") != NULL && pcmk__str_in_list(rsc->id, only_rsc, pcmk__str_star_matches));
rsc               804 lib/pengine/clone.c         if (pcmk_is_set(rsc->flags, pe_rsc_unique)) {
rsc               806 lib/pengine/clone.c             if (partially_active || !pcmk_is_set(rsc->flags, pe_rsc_orphan)) {
rsc               869 lib/pengine/clone.c             clone_header(out, &rc, rsc, clone_data);
rsc               900 lib/pengine/clone.c         clone_header(out, &rc, rsc, clone_data);
rsc               924 lib/pengine/clone.c         clone_header(out, &rc, rsc, clone_data);
rsc               926 lib/pengine/clone.c         if (pcmk_is_set(rsc->flags, pe_rsc_promotable)) {
rsc               927 lib/pengine/clone.c             enum rsc_role_e role = configured_role(rsc);
rsc               947 lib/pengine/clone.c         if (!pcmk_is_set(rsc->flags, pe_rsc_unique)
rsc               951 lib/pengine/clone.c             GList *list = g_hash_table_get_values(rsc->allowed_nodes);
rsc               963 lib/pengine/clone.c                 list = g_hash_table_get_values(rsc->known_on);
rsc               970 lib/pengine/clone.c                 if (pe_find_node(rsc->running_on, node->details->uname) == NULL &&
rsc               973 lib/pengine/clone.c                     xmlNode *probe_op = pe__failed_probe_for_rsc(rsc, node->details->uname);
rsc               976 lib/pengine/clone.c                     if (configured_role(rsc) == RSC_ROLE_STOPPED) {
rsc              1001 lib/pengine/clone.c             clone_header(out, &rc, rsc, clone_data);
rsc              1024 lib/pengine/clone.c             clone_header(out, &rc, rsc, clone_data);
rsc              1035 lib/pengine/clone.c clone_free(pe_resource_t * rsc)
rsc              1039 lib/pengine/clone.c     get_clone_variant_data(clone_data, rsc);
rsc              1041 lib/pengine/clone.c     pe_rsc_trace(rsc, "Freeing %s", rsc->id);
rsc              1043 lib/pengine/clone.c     for (GList *gIter = rsc->children; gIter != NULL; gIter = gIter->next) {
rsc              1056 lib/pengine/clone.c     g_list_free(rsc->children);
rsc              1065 lib/pengine/clone.c     common_free(rsc);
rsc              1069 lib/pengine/clone.c clone_resource_state(const pe_resource_t * rsc, gboolean current)
rsc              1072 lib/pengine/clone.c     GList *gIter = rsc->children;
rsc              1083 lib/pengine/clone.c     pe_rsc_trace(rsc, "%s role: %s", rsc->id, role2text(clone_role));
rsc              1095 lib/pengine/clone.c pe__is_universal_clone(pe_resource_t *rsc,
rsc              1098 lib/pengine/clone.c     if (pe_rsc_is_clone(rsc)) {
rsc              1101 lib/pengine/clone.c         get_clone_variant_data(clone_data, rsc);
rsc              1110 lib/pengine/clone.c pe__clone_is_filtered(pe_resource_t *rsc, GList *only_rsc, gboolean check_parent)
rsc              1115 lib/pengine/clone.c     if (pcmk__str_in_list(rsc_printable_id(rsc), only_rsc, pcmk__str_star_matches)) {
rsc              1118 lib/pengine/clone.c         get_clone_variant_data(clone_data, rsc);
rsc              1122 lib/pengine/clone.c             for (GList *gIter = rsc->children; gIter != NULL; gIter = gIter->next) {
rsc              1137 lib/pengine/clone.c pe__clone_child_id(pe_resource_t *rsc)
rsc              1140 lib/pengine/clone.c     get_clone_variant_data(clone_data, rsc);
rsc               522 lib/pengine/common.c                              const pe_resource_t *rsc)
rsc               529 lib/pengine/common.c     } else if(rsc == NULL) {
rsc               533 lib/pengine/common.c     source = g_hash_table_lookup(rsc->meta, XML_RSC_ATTR_TARGET);
rsc               550 lib/pengine/common.c         pe_rsc_trace(rsc, "%s: Looking for %s on the container host %s", rsc->id, name, host->details->uname);
rsc               554 lib/pengine/common.c     pe_rsc_trace(rsc, "%s: Not looking for %s on the container host: %s is inactive",
rsc               555 lib/pengine/common.c                  rsc->id, name, node->details->remote_rsc->container->id);
rsc               100 lib/pengine/complex.c expand_parents_fixed_nvpairs(pe_resource_t * rsc, pe_rule_eval_data_t * rule_data, GHashTable * meta_hash, pe_working_set_t * data_set)
rsc               103 lib/pengine/complex.c     pe_resource_t *p = rsc->parent;
rsc               140 lib/pengine/complex.c get_meta_attributes(GHashTable * meta_hash, pe_resource_t * rsc,
rsc               144 lib/pengine/complex.c         .standard = crm_element_value(rsc->xml, XML_AGENT_ATTR_CLASS),
rsc               145 lib/pengine/complex.c         .provider = crm_element_value(rsc->xml, XML_AGENT_ATTR_PROVIDER),
rsc               146 lib/pengine/complex.c         .agent = crm_element_value(rsc->xml, XML_EXPR_ATTR_TYPE)
rsc               162 lib/pengine/complex.c     for (xmlAttrPtr a = pcmk__xe_first_attr(rsc->xml); a != NULL; a = a->next) {
rsc               164 lib/pengine/complex.c         const char *prop_value = crm_element_value(rsc->xml, prop_name);
rsc               169 lib/pengine/complex.c     pe__unpack_dataset_nvpairs(rsc->xml, XML_TAG_META_SETS, &rule_data,
rsc               174 lib/pengine/complex.c     if (rsc->parent != NULL) {
rsc               175 lib/pengine/complex.c         expand_parents_fixed_nvpairs(rsc, &rule_data, meta_hash, data_set);
rsc               184 lib/pengine/complex.c     if (rsc->parent) {
rsc               185 lib/pengine/complex.c         g_hash_table_foreach(rsc->parent->meta, dup_attr, meta_hash);
rsc               190 lib/pengine/complex.c get_rsc_attributes(GHashTable * meta_hash, pe_resource_t * rsc,
rsc               206 lib/pengine/complex.c     pe__unpack_dataset_nvpairs(rsc->xml, XML_TAG_ATTR_SETS, &rule_data,
rsc               210 lib/pengine/complex.c     if (rsc->parent != NULL) {
rsc               211 lib/pengine/complex.c         get_rsc_attributes(meta_hash, rsc->parent, node, data_set);
rsc               222 lib/pengine/complex.c pe_get_versioned_attributes(xmlNode * meta_hash, pe_resource_t * rsc,
rsc               234 lib/pengine/complex.c     pe_eval_versioned_attributes(data_set->input, rsc->xml, XML_TAG_ATTR_SETS,
rsc               238 lib/pengine/complex.c     if (rsc->parent != NULL) {
rsc               239 lib/pengine/complex.c         pe_get_versioned_attributes(meta_hash, rsc->parent, node, data_set);
rsc               416 lib/pengine/complex.c detect_promotable(pe_resource_t *rsc)
rsc               418 lib/pengine/complex.c     const char *promotable = g_hash_table_lookup(rsc->meta,
rsc               426 lib/pengine/complex.c     if (pcmk__str_eq(crm_element_name(rsc->xml), PCMK_XE_PROMOTABLE_LEGACY,
rsc               431 lib/pengine/complex.c         g_hash_table_insert(rsc->meta, strdup(XML_RSC_ATTR_PROMOTABLE),
rsc               457 lib/pengine/complex.c pe_rsc_params(pe_resource_t *rsc, pe_node_t *node, pe_working_set_t *data_set)
rsc               468 lib/pengine/complex.c     if ((rsc == NULL) || (data_set == NULL)) {
rsc               476 lib/pengine/complex.c     if (rsc->parameter_cache == NULL) {
rsc               477 lib/pengine/complex.c         rsc->parameter_cache = pcmk__strikey_table(free, free_params_table);
rsc               479 lib/pengine/complex.c         params_on_node = g_hash_table_lookup(rsc->parameter_cache, node_name);
rsc               485 lib/pengine/complex.c         get_rsc_attributes(params_on_node, rsc, node, data_set);
rsc               486 lib/pengine/complex.c         g_hash_table_insert(rsc->parameter_cache, strdup(node_name),
rsc               493 lib/pengine/complex.c common_unpack(xmlNode * xml_obj, pe_resource_t ** rsc,
rsc               521 lib/pengine/complex.c     } else if (rsc == NULL) {
rsc               531 lib/pengine/complex.c     *rsc = calloc(1, sizeof(pe_resource_t));
rsc               532 lib/pengine/complex.c     (*rsc)->cluster = data_set;
rsc               536 lib/pengine/complex.c         (*rsc)->xml = expanded_xml;
rsc               537 lib/pengine/complex.c         (*rsc)->orig_xml = xml_obj;
rsc               540 lib/pengine/complex.c         (*rsc)->xml = xml_obj;
rsc               541 lib/pengine/complex.c         (*rsc)->orig_xml = NULL;
rsc               545 lib/pengine/complex.c     rclass = crm_element_value((*rsc)->xml, XML_AGENT_ATTR_CLASS);
rsc               546 lib/pengine/complex.c     (*rsc)->parent = parent;
rsc               548 lib/pengine/complex.c     ops = find_xml_node((*rsc)->xml, "operations", FALSE);
rsc               549 lib/pengine/complex.c     (*rsc)->ops_xml = expand_idref(ops, data_set->input);
rsc               551 lib/pengine/complex.c     (*rsc)->variant = get_resource_type(crm_element_name((*rsc)->xml));
rsc               552 lib/pengine/complex.c     if ((*rsc)->variant == pe_unknown) {
rsc               553 lib/pengine/complex.c         pe_err("Unknown resource type: %s", crm_element_name((*rsc)->xml));
rsc               554 lib/pengine/complex.c         free(*rsc);
rsc               559 lib/pengine/complex.c     (*rsc)->versioned_parameters = create_xml_node(NULL, XML_TAG_RSC_VER_ATTRS);
rsc               562 lib/pengine/complex.c     (*rsc)->meta = pcmk__strkey_table(free, free);
rsc               563 lib/pengine/complex.c     (*rsc)->allowed_nodes = pcmk__strkey_table(NULL, free);
rsc               564 lib/pengine/complex.c     (*rsc)->known_on = pcmk__strkey_table(NULL, free);
rsc               566 lib/pengine/complex.c     value = crm_element_value((*rsc)->xml, XML_RSC_ATTR_INCARNATION);
rsc               568 lib/pengine/complex.c         (*rsc)->id = crm_strdup_printf("%s:%s", id, value);
rsc               569 lib/pengine/complex.c         add_hash_param((*rsc)->meta, XML_RSC_ATTR_INCARNATION, value);
rsc               572 lib/pengine/complex.c         (*rsc)->id = strdup(id);
rsc               575 lib/pengine/complex.c     (*rsc)->fns = &resource_class_functions[(*rsc)->variant];
rsc               576 lib/pengine/complex.c     pe_rsc_trace((*rsc), "Unpacking resource...");
rsc               578 lib/pengine/complex.c     get_meta_attributes((*rsc)->meta, *rsc, NULL, data_set);
rsc               579 lib/pengine/complex.c     (*rsc)->parameters = pe_rsc_params(*rsc, NULL, data_set); // \deprecated
rsc               581 lib/pengine/complex.c     pe_get_versioned_attributes((*rsc)->versioned_parameters, *rsc, NULL, data_set);
rsc               584 lib/pengine/complex.c     (*rsc)->flags = 0;
rsc               585 lib/pengine/complex.c     pe__set_resource_flags(*rsc, pe_rsc_runnable|pe_rsc_provisional);
rsc               588 lib/pengine/complex.c         pe__set_resource_flags(*rsc, pe_rsc_managed);
rsc               591 lib/pengine/complex.c     (*rsc)->rsc_cons = NULL;
rsc               592 lib/pengine/complex.c     (*rsc)->rsc_tickets = NULL;
rsc               593 lib/pengine/complex.c     (*rsc)->actions = NULL;
rsc               594 lib/pengine/complex.c     (*rsc)->role = RSC_ROLE_STOPPED;
rsc               595 lib/pengine/complex.c     (*rsc)->next_role = RSC_ROLE_UNKNOWN;
rsc               597 lib/pengine/complex.c     (*rsc)->recovery_type = recovery_stop_start;
rsc               598 lib/pengine/complex.c     (*rsc)->stickiness = 0;
rsc               599 lib/pengine/complex.c     (*rsc)->migration_threshold = INFINITY;
rsc               600 lib/pengine/complex.c     (*rsc)->failure_timeout = 0;
rsc               602 lib/pengine/complex.c     value = g_hash_table_lookup((*rsc)->meta, XML_CIB_ATTR_PRIORITY);
rsc               603 lib/pengine/complex.c     (*rsc)->priority = char2score(value);
rsc               605 lib/pengine/complex.c     value = g_hash_table_lookup((*rsc)->meta, XML_RSC_ATTR_CRITICAL);
rsc               607 lib/pengine/complex.c         pe__set_resource_flags(*rsc, pe_rsc_critical);
rsc               610 lib/pengine/complex.c     value = g_hash_table_lookup((*rsc)->meta, XML_RSC_ATTR_NOTIFY);
rsc               612 lib/pengine/complex.c         pe__set_resource_flags(*rsc, pe_rsc_notify);
rsc               615 lib/pengine/complex.c     if (xml_contains_remote_node((*rsc)->xml)) {
rsc               616 lib/pengine/complex.c         (*rsc)->is_remote_node = TRUE;
rsc               617 lib/pengine/complex.c         if (g_hash_table_lookup((*rsc)->meta, XML_RSC_ATTR_CONTAINER)) {
rsc               624 lib/pengine/complex.c     value = g_hash_table_lookup((*rsc)->meta, XML_OP_ATTR_ALLOW_MIGRATE);
rsc               626 lib/pengine/complex.c     has_versioned_params = xml_has_children((*rsc)->versioned_parameters);
rsc               629 lib/pengine/complex.c         pe_rsc_trace((*rsc), "Migration is disabled for resources with versioned parameters");
rsc               631 lib/pengine/complex.c         pe__set_resource_flags(*rsc, pe_rsc_allow_migrate);
rsc               640 lib/pengine/complex.c         pe__set_resource_flags(*rsc, pe_rsc_allow_migrate);
rsc               643 lib/pengine/complex.c     value = g_hash_table_lookup((*rsc)->meta, XML_RSC_ATTR_MANAGED);
rsc               646 lib/pengine/complex.c             pe__set_resource_flags(*rsc, pe_rsc_managed);
rsc               648 lib/pengine/complex.c             pe__clear_resource_flags(*rsc, pe_rsc_managed);
rsc               652 lib/pengine/complex.c     value = g_hash_table_lookup((*rsc)->meta, XML_RSC_ATTR_MAINTENANCE);
rsc               654 lib/pengine/complex.c         pe__clear_resource_flags(*rsc, pe_rsc_managed);
rsc               655 lib/pengine/complex.c         pe__set_resource_flags(*rsc, pe_rsc_maintenance);
rsc               658 lib/pengine/complex.c         pe__clear_resource_flags(*rsc, pe_rsc_managed);
rsc               659 lib/pengine/complex.c         pe__set_resource_flags(*rsc, pe_rsc_maintenance);
rsc               662 lib/pengine/complex.c     if (pe_rsc_is_clone(uber_parent(*rsc))) {
rsc               663 lib/pengine/complex.c         value = g_hash_table_lookup((*rsc)->meta, XML_RSC_ATTR_UNIQUE);
rsc               665 lib/pengine/complex.c             pe__set_resource_flags(*rsc, pe_rsc_unique);
rsc               667 lib/pengine/complex.c         if (detect_promotable(*rsc)) {
rsc               668 lib/pengine/complex.c             pe__set_resource_flags(*rsc, pe_rsc_promotable);
rsc               671 lib/pengine/complex.c         pe__set_resource_flags(*rsc, pe_rsc_unique);
rsc               674 lib/pengine/complex.c     pe_rsc_trace((*rsc), "Options for %s", (*rsc)->id);
rsc               676 lib/pengine/complex.c     value = g_hash_table_lookup((*rsc)->meta, XML_RSC_ATTR_RESTART);
rsc               678 lib/pengine/complex.c         (*rsc)->restart_type = pe_restart_restart;
rsc               679 lib/pengine/complex.c         pe_rsc_trace((*rsc), "\tDependency restart handling: restart");
rsc               684 lib/pengine/complex.c         (*rsc)->restart_type = pe_restart_ignore;
rsc               685 lib/pengine/complex.c         pe_rsc_trace((*rsc), "\tDependency restart handling: ignore");
rsc               688 lib/pengine/complex.c     value = g_hash_table_lookup((*rsc)->meta, XML_RSC_ATTR_MULTIPLE);
rsc               690 lib/pengine/complex.c         (*rsc)->recovery_type = recovery_stop_only;
rsc               691 lib/pengine/complex.c         pe_rsc_trace((*rsc), "\tMultiple running resource recovery: stop only");
rsc               694 lib/pengine/complex.c         (*rsc)->recovery_type = recovery_block;
rsc               695 lib/pengine/complex.c         pe_rsc_trace((*rsc), "\tMultiple running resource recovery: block");
rsc               698 lib/pengine/complex.c         (*rsc)->recovery_type = recovery_stop_unexpected;
rsc               699 lib/pengine/complex.c         pe_rsc_trace((*rsc), "\tMultiple running resource recovery: "
rsc               708 lib/pengine/complex.c         (*rsc)->recovery_type = recovery_stop_start;
rsc               709 lib/pengine/complex.c         pe_rsc_trace((*rsc), "\tMultiple running resource recovery: stop/start");
rsc               712 lib/pengine/complex.c     value = g_hash_table_lookup((*rsc)->meta, XML_RSC_ATTR_STICKINESS);
rsc               714 lib/pengine/complex.c         (*rsc)->stickiness = char2score(value);
rsc               717 lib/pengine/complex.c     value = g_hash_table_lookup((*rsc)->meta, XML_RSC_ATTR_FAIL_STICKINESS);
rsc               719 lib/pengine/complex.c         (*rsc)->migration_threshold = char2score(value);
rsc               720 lib/pengine/complex.c         if ((*rsc)->migration_threshold < 0) {
rsc               728 lib/pengine/complex.c             (*rsc)->migration_threshold = 1;
rsc               734 lib/pengine/complex.c         pe__set_resource_flags(*rsc, pe_rsc_fence_device);
rsc               737 lib/pengine/complex.c     value = g_hash_table_lookup((*rsc)->meta, XML_RSC_ATTR_REQUIRES);
rsc               743 lib/pengine/complex.c         pe__set_resource_flags(*rsc, pe_rsc_needs_quorum);
rsc               746 lib/pengine/complex.c         if (pcmk_is_set((*rsc)->flags, pe_rsc_fence_device)) {
rsc               749 lib/pengine/complex.c                               "require unfencing", (*rsc)->id);
rsc               757 lib/pengine/complex.c                               (*rsc)->id);
rsc               763 lib/pengine/complex.c             pe__set_resource_flags(*rsc, pe_rsc_needs_fencing
rsc               768 lib/pengine/complex.c         pe__set_resource_flags(*rsc, pe_rsc_needs_fencing);
rsc               771 lib/pengine/complex.c                               (*rsc)->id);
rsc               778 lib/pengine/complex.c         if (pcmk_is_set((*rsc)->flags, pe_rsc_fence_device)) {
rsc               781 lib/pengine/complex.c         } else if (((*rsc)->variant == pe_native)
rsc               782 lib/pengine/complex.c                    && pcmk__str_eq(crm_element_value((*rsc)->xml, XML_AGENT_ATTR_CLASS), PCMK_RESOURCE_CLASS_OCF, pcmk__str_casei)
rsc               783 lib/pengine/complex.c                    && pcmk__str_eq(crm_element_value((*rsc)->xml, XML_AGENT_ATTR_PROVIDER), "pacemaker", pcmk__str_casei)
rsc               784 lib/pengine/complex.c                    && pcmk__str_eq(crm_element_value((*rsc)->xml, XML_ATTR_TYPE), "remote", pcmk__str_casei)
rsc               804 lib/pengine/complex.c                               (*rsc)->id, value, orig_value);
rsc               810 lib/pengine/complex.c     pe_rsc_trace((*rsc), "\tRequired to start: %s%s", value, isdefault?" (default)":"");
rsc               811 lib/pengine/complex.c     value = g_hash_table_lookup((*rsc)->meta, XML_RSC_ATTR_FAIL_TIMEOUT);
rsc               814 lib/pengine/complex.c         (*rsc)->failure_timeout = (int) (crm_parse_interval_spec(value) / 1000);
rsc               818 lib/pengine/complex.c         GHashTable *params = pe_rsc_params(*rsc, NULL, data_set);
rsc               830 lib/pengine/complex.c             (*rsc)->remote_reconnect_ms = crm_parse_interval_spec(value);
rsc               833 lib/pengine/complex.c             (*rsc)->failure_timeout = (*rsc)->remote_reconnect_ms / 1000;
rsc               837 lib/pengine/complex.c     get_target_role(*rsc, &((*rsc)->next_role));
rsc               838 lib/pengine/complex.c     pe_rsc_trace((*rsc), "\tDesired next state: %s",
rsc               839 lib/pengine/complex.c                  (*rsc)->next_role != RSC_ROLE_UNKNOWN ? role2text((*rsc)->next_role) : "default");
rsc               841 lib/pengine/complex.c     if ((*rsc)->fns->unpack(*rsc, data_set) == FALSE) {
rsc               847 lib/pengine/complex.c         resource_location(*rsc, NULL, 0, "symmetric_default", data_set);
rsc               852 lib/pengine/complex.c         resource_location(*rsc, NULL, 0, "remote_connection_default", data_set);
rsc               855 lib/pengine/complex.c     pe_rsc_trace((*rsc), "\tAction notification: %s",
rsc               856 lib/pengine/complex.c                  pcmk_is_set((*rsc)->flags, pe_rsc_notify)? "required" : "not required");
rsc               858 lib/pengine/complex.c     (*rsc)->utilization = pcmk__strkey_table(free, free);
rsc               860 lib/pengine/complex.c     pe__unpack_dataset_nvpairs((*rsc)->xml, XML_TAG_UTILIZATION, &rule_data,
rsc               861 lib/pengine/complex.c                                (*rsc)->utilization, NULL, FALSE, data_set);
rsc               874 lib/pengine/complex.c common_update_score(pe_resource_t * rsc, const char *id, int score)
rsc               878 lib/pengine/complex.c     node = pe_hash_table_lookup(rsc->allowed_nodes, id);
rsc               880 lib/pengine/complex.c         pe_rsc_trace(rsc, "Updating score for %s on %s: %d + %d", rsc->id, id, node->weight, score);
rsc               884 lib/pengine/complex.c     if (rsc->children) {
rsc               885 lib/pengine/complex.c         GList *gIter = rsc->children;
rsc               896 lib/pengine/complex.c is_parent(pe_resource_t *child, pe_resource_t *rsc)
rsc               900 lib/pengine/complex.c     if (parent == NULL || rsc == NULL) {
rsc               904 lib/pengine/complex.c         if (parent->parent == rsc) {
rsc               913 lib/pengine/complex.c uber_parent(pe_resource_t * rsc)
rsc               915 lib/pengine/complex.c     pe_resource_t *parent = rsc;
rsc               927 lib/pengine/complex.c common_free(pe_resource_t * rsc)
rsc               929 lib/pengine/complex.c     if (rsc == NULL) {
rsc               933 lib/pengine/complex.c     pe_rsc_trace(rsc, "Freeing %s %d", rsc->id, rsc->variant);
rsc               935 lib/pengine/complex.c     g_list_free(rsc->rsc_cons);
rsc               936 lib/pengine/complex.c     g_list_free(rsc->rsc_cons_lhs);
rsc               937 lib/pengine/complex.c     g_list_free(rsc->rsc_tickets);
rsc               938 lib/pengine/complex.c     g_list_free(rsc->dangling_migrations);
rsc               940 lib/pengine/complex.c     if (rsc->parameter_cache != NULL) {
rsc               941 lib/pengine/complex.c         g_hash_table_destroy(rsc->parameter_cache);
rsc               944 lib/pengine/complex.c     if (rsc->versioned_parameters != NULL) {
rsc               945 lib/pengine/complex.c         free_xml(rsc->versioned_parameters);
rsc               948 lib/pengine/complex.c     if (rsc->meta != NULL) {
rsc               949 lib/pengine/complex.c         g_hash_table_destroy(rsc->meta);
rsc               951 lib/pengine/complex.c     if (rsc->utilization != NULL) {
rsc               952 lib/pengine/complex.c         g_hash_table_destroy(rsc->utilization);
rsc               955 lib/pengine/complex.c     if ((rsc->parent == NULL) && pcmk_is_set(rsc->flags, pe_rsc_orphan)) {
rsc               956 lib/pengine/complex.c         free_xml(rsc->xml);
rsc               957 lib/pengine/complex.c         rsc->xml = NULL;
rsc               958 lib/pengine/complex.c         free_xml(rsc->orig_xml);
rsc               959 lib/pengine/complex.c         rsc->orig_xml = NULL;
rsc               962 lib/pengine/complex.c     } else if (rsc->orig_xml) {
rsc               963 lib/pengine/complex.c         free_xml(rsc->xml);
rsc               964 lib/pengine/complex.c         rsc->xml = NULL;
rsc               966 lib/pengine/complex.c     if (rsc->running_on) {
rsc               967 lib/pengine/complex.c         g_list_free(rsc->running_on);
rsc               968 lib/pengine/complex.c         rsc->running_on = NULL;
rsc               970 lib/pengine/complex.c     if (rsc->known_on) {
rsc               971 lib/pengine/complex.c         g_hash_table_destroy(rsc->known_on);
rsc               972 lib/pengine/complex.c         rsc->known_on = NULL;
rsc               974 lib/pengine/complex.c     if (rsc->actions) {
rsc               975 lib/pengine/complex.c         g_list_free(rsc->actions);
rsc               976 lib/pengine/complex.c         rsc->actions = NULL;
rsc               978 lib/pengine/complex.c     if (rsc->allowed_nodes) {
rsc               979 lib/pengine/complex.c         g_hash_table_destroy(rsc->allowed_nodes);
rsc               980 lib/pengine/complex.c         rsc->allowed_nodes = NULL;
rsc               982 lib/pengine/complex.c     g_list_free(rsc->fillers);
rsc               983 lib/pengine/complex.c     g_list_free(rsc->rsc_location);
rsc               984 lib/pengine/complex.c     pe_rsc_trace(rsc, "Resource freed");
rsc               985 lib/pengine/complex.c     free(rsc->id);
rsc               986 lib/pengine/complex.c     free(rsc->clone_name);
rsc               987 lib/pengine/complex.c     free(rsc->allocated_to);
rsc               988 lib/pengine/complex.c     free(rsc->variant_opaque);
rsc               989 lib/pengine/complex.c     free(rsc->pending_task);
rsc               990 lib/pengine/complex.c     free(rsc);
rsc              1009 lib/pengine/complex.c pe__find_active_on(const pe_resource_t *rsc, unsigned int *count_all,
rsc              1023 lib/pengine/complex.c     if (rsc == NULL) {
rsc              1027 lib/pengine/complex.c     for (GList *node_iter = rsc->running_on; node_iter != NULL;
rsc              1046 lib/pengine/complex.c         if (rsc->partial_migration_source != NULL) {
rsc              1047 lib/pengine/complex.c             if (node->details == rsc->partial_migration_source->details) {
rsc              1053 lib/pengine/complex.c         } else if (!pcmk_is_set(rsc->flags, pe_rsc_needs_fencing)) {
rsc              1089 lib/pengine/complex.c pe__find_active_requires(const pe_resource_t *rsc, unsigned int *count)
rsc              1091 lib/pengine/complex.c     if (rsc && !pcmk_is_set(rsc->flags, pe_rsc_needs_fencing)) {
rsc              1092 lib/pengine/complex.c         return pe__find_active_on(rsc, NULL, count);
rsc              1094 lib/pengine/complex.c     return pe__find_active_on(rsc, count, NULL);
rsc              1098 lib/pengine/complex.c pe__count_common(pe_resource_t *rsc)
rsc              1100 lib/pengine/complex.c     if (rsc->children != NULL) {
rsc              1101 lib/pengine/complex.c         for (GList *item = rsc->children; item != NULL; item = item->next) {
rsc              1105 lib/pengine/complex.c     } else if (!pcmk_is_set(rsc->flags, pe_rsc_orphan)
rsc              1106 lib/pengine/complex.c                || (rsc->role > RSC_ROLE_STOPPED)) {
rsc              1107 lib/pengine/complex.c         rsc->cluster->ninstances++;
rsc              1108 lib/pengine/complex.c         if (pe__resource_is_disabled(rsc)) {
rsc              1109 lib/pengine/complex.c             rsc->cluster->disabled_resources++;
rsc              1111 lib/pengine/complex.c         if (pcmk_is_set(rsc->flags, pe_rsc_block)) {
rsc              1112 lib/pengine/complex.c             rsc->cluster->blocked_resources++;
rsc              1126 lib/pengine/complex.c pe__set_next_role(pe_resource_t *rsc, enum rsc_role_e role, const char *why)
rsc              1128 lib/pengine/complex.c     CRM_ASSERT((rsc != NULL) && (why != NULL));
rsc              1129 lib/pengine/complex.c     if (rsc->next_role != role) {
rsc              1130 lib/pengine/complex.c         pe_rsc_trace(rsc, "Resetting next role for %s from %s to %s (%s)",
rsc              1131 lib/pengine/complex.c                      rsc->id, role2text(rsc->next_role), role2text(role), why);
rsc              1132 lib/pengine/complex.c         rsc->next_role = role;
rsc                80 lib/pengine/failcounts.c block_failure(pe_node_t *node, pe_resource_t *rsc, xmlNode *xml_op,
rsc                83 lib/pengine/failcounts.c     char *xml_name = clone_strip(rsc->id);
rsc                98 lib/pengine/failcounts.c     xmlXPathObject *xpathObj = xpath_search(rsc->xml, xpath);
rsc               177 lib/pengine/failcounts.c rsc_fail_name(pe_resource_t *rsc)
rsc               179 lib/pengine/failcounts.c     const char *name = (rsc->clone_name? rsc->clone_name : rsc->id);
rsc               181 lib/pengine/failcounts.c     return pcmk_is_set(rsc->flags, pe_rsc_unique)? strdup(name) : clone_strip(name);
rsc               234 lib/pengine/failcounts.c generate_fail_regexes(pe_resource_t *rsc, pe_working_set_t *data_set,
rsc               237 lib/pengine/failcounts.c     char *rsc_name = rsc_fail_name(rsc);
rsc               242 lib/pengine/failcounts.c                         pcmk_is_set(rsc->flags, pe_rsc_unique), failcount_re);
rsc               245 lib/pengine/failcounts.c                         pcmk_is_set(rsc->flags, pe_rsc_unique), lastfailure_re);
rsc               251 lib/pengine/failcounts.c pe_get_failcount(pe_node_t *node, pe_resource_t *rsc, time_t *last_failure,
rsc               261 lib/pengine/failcounts.c     generate_fail_regexes(rsc, data_set, &failcount_re, &lastfailure_re);
rsc               285 lib/pengine/failcounts.c     if ((failcount > 0) && rsc->failure_timeout
rsc               286 lib/pengine/failcounts.c         && block_failure(node, rsc, xml_op, data_set)) {
rsc               289 lib/pengine/failcounts.c                 rsc->failure_timeout, rsc->id);
rsc               290 lib/pengine/failcounts.c         rsc->failure_timeout = 0;
rsc               295 lib/pengine/failcounts.c         && rsc->failure_timeout) {
rsc               299 lib/pengine/failcounts.c         if (now > (last + rsc->failure_timeout)) {
rsc               301 lib/pengine/failcounts.c                       rsc->id, node->details->uname, rsc->failure_timeout);
rsc               316 lib/pengine/failcounts.c     if (pcmk_is_set(flags, pe_fc_fillers) && rsc->fillers
rsc               317 lib/pengine/failcounts.c         && !pe_rsc_is_bundled(rsc)) {
rsc               321 lib/pengine/failcounts.c         for (gIter = rsc->fillers; gIter != NULL; gIter = gIter->next) {
rsc               338 lib/pengine/failcounts.c                      rsc->id, score, pcmk__plural_s(failcount),
rsc               347 lib/pengine/failcounts.c                  rsc->id, score, pcmk__plural_s(failcount),
rsc               366 lib/pengine/failcounts.c pe__clear_failcount(pe_resource_t *rsc, pe_node_t *node,
rsc               372 lib/pengine/failcounts.c     CRM_CHECK(rsc && node && reason && data_set, return NULL);
rsc               374 lib/pengine/failcounts.c     key = pcmk__op_key(rsc->id, CRM_OP_CLEAR_FAILCOUNT, 0);
rsc               375 lib/pengine/failcounts.c     clear = custom_action(rsc, key, CRM_OP_CLEAR_FAILCOUNT, node, FALSE, TRUE,
rsc               379 lib/pengine/failcounts.c                rsc->id, node->details->uname, reason, clear->uuid);
rsc                27 lib/pengine/group.c inactive_resources(pe_resource_t *rsc)
rsc                31 lib/pengine/group.c     for (GList *gIter = rsc->children; gIter != NULL; gIter = gIter->next) {
rsc                43 lib/pengine/group.c group_header(pcmk__output_t *out, int *rc, pe_resource_t *rsc, int n_inactive, bool show_inactive)
rsc                54 lib/pengine/group.c     if (!pcmk_is_set(rsc->flags, pe_rsc_managed)) {
rsc                58 lib/pengine/group.c     if (pe__resource_is_disabled(rsc)) {
rsc                64 lib/pengine/group.c                                  rsc->id, attrs);
rsc                67 lib/pengine/group.c         PCMK__OUTPUT_LIST_HEADER(out, FALSE, *rc, "Resource Group: %s", rsc->id);
rsc                72 lib/pengine/group.c skip_child_rsc(pe_resource_t *rsc, pe_resource_t *child, gboolean parent_passes,
rsc                99 lib/pengine/group.c group_unpack(pe_resource_t * rsc, pe_working_set_t * data_set)
rsc               101 lib/pengine/group.c     xmlNode *xml_obj = rsc->xml;
rsc               104 lib/pengine/group.c     const char *group_ordered = g_hash_table_lookup(rsc->meta, XML_RSC_ATTR_ORDERED);
rsc               105 lib/pengine/group.c     const char *group_colocated = g_hash_table_lookup(rsc->meta, "collocated");
rsc               108 lib/pengine/group.c     pe_rsc_trace(rsc, "Processing resource %s...", rsc->id);
rsc               114 lib/pengine/group.c     rsc->variant_opaque = group_data;
rsc               126 lib/pengine/group.c     clone_id = crm_element_value(rsc->xml, XML_RSC_ATTR_INCARNATION);
rsc               136 lib/pengine/group.c             if (common_unpack(xml_native_rsc, &new_rsc, rsc, data_set) == FALSE) {
rsc               145 lib/pengine/group.c             rsc->children = g_list_append(rsc->children, new_rsc);
rsc               151 lib/pengine/group.c             pe_rsc_trace(rsc, "Added %s member %s", rsc->id, new_rsc->id);
rsc               156 lib/pengine/group.c         pcmk__config_warn("Group %s does not have any children", rsc->id);
rsc               160 lib/pengine/group.c     pe_rsc_trace(rsc, "Added %d children to resource %s...", group_data->num_children, rsc->id);
rsc               166 lib/pengine/group.c group_active(pe_resource_t * rsc, gboolean all)
rsc               170 lib/pengine/group.c     GList *gIter = rsc->children;
rsc               191 lib/pengine/group.c group_print_xml(pe_resource_t * rsc, const char *pre_text, long options, void *print_data)
rsc               193 lib/pengine/group.c     GList *gIter = rsc->children;
rsc               196 lib/pengine/group.c     status_print("%s<group id=\"%s\" ", pre_text, rsc->id);
rsc               197 lib/pengine/group.c     status_print("number_resources=\"%d\" ", g_list_length(rsc->children));
rsc               211 lib/pengine/group.c group_print(pe_resource_t * rsc, const char *pre_text, long options, void *print_data)
rsc               214 lib/pengine/group.c     GList *gIter = rsc->children;
rsc               221 lib/pengine/group.c         group_print_xml(rsc, pre_text, options, print_data);
rsc               227 lib/pengine/group.c     status_print("%sResource Group: %s", pre_text ? pre_text : "", rsc->id);
rsc               237 lib/pengine/group.c         print_rscs_brief(rsc->children, child_text, options, print_data, TRUE);
rsc               264 lib/pengine/group.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc               268 lib/pengine/group.c     GList *gIter = rsc->children;
rsc               273 lib/pengine/group.c     gboolean parent_passes = pcmk__str_in_list(rsc_printable_id(rsc), only_rsc, pcmk__str_star_matches) ||
rsc               274 lib/pengine/group.c                              (strstr(rsc->id, ":") != NULL && pcmk__str_in_list(rsc->id, only_rsc, pcmk__str_star_matches));
rsc               276 lib/pengine/group.c     if (rsc->fns->is_filtered(rsc, only_rsc, TRUE)) {
rsc               284 lib/pengine/group.c         if (skip_child_rsc(rsc, child_rsc, parent_passes, only_rsc, show_opts)) {
rsc               290 lib/pengine/group.c                                           , "id", rsc->id
rsc               292 lib/pengine/group.c                                           , "managed", pe__rsc_bool_str(rsc, pe_rsc_managed)
rsc               293 lib/pengine/group.c                                           , "disabled", pcmk__btoa(pe__resource_is_disabled(rsc)));
rsc               314 lib/pengine/group.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc               320 lib/pengine/group.c     gboolean parent_passes = pcmk__str_in_list(rsc_printable_id(rsc), only_rsc, pcmk__str_star_matches) ||
rsc               321 lib/pengine/group.c                              (strstr(rsc->id, ":") != NULL && pcmk__str_in_list(rsc->id, only_rsc, pcmk__str_star_matches));
rsc               323 lib/pengine/group.c     gboolean active = rsc->fns->active(rsc, TRUE);
rsc               324 lib/pengine/group.c     gboolean partially_active = rsc->fns->active(rsc, FALSE);
rsc               326 lib/pengine/group.c     if (rsc->fns->is_filtered(rsc, only_rsc, TRUE)) {
rsc               331 lib/pengine/group.c         GList *rscs = pe__filter_rsc_list(rsc->children, only_rsc);
rsc               334 lib/pengine/group.c             group_header(out, &rc, rsc, !active && partially_active ? inactive_resources(rsc) : 0,
rsc               343 lib/pengine/group.c         for (GList *gIter = rsc->children; gIter; gIter = gIter->next) {
rsc               346 lib/pengine/group.c             if (skip_child_rsc(rsc, child_rsc, parent_passes, only_rsc, show_opts)) {
rsc               350 lib/pengine/group.c             group_header(out, &rc, rsc, !active && partially_active ? inactive_resources(rsc) : 0,
rsc               363 lib/pengine/group.c group_free(pe_resource_t * rsc)
rsc               365 lib/pengine/group.c     CRM_CHECK(rsc != NULL, return);
rsc               367 lib/pengine/group.c     pe_rsc_trace(rsc, "Freeing %s", rsc->id);
rsc               369 lib/pengine/group.c     for (GList *gIter = rsc->children; gIter != NULL; gIter = gIter->next) {
rsc               377 lib/pengine/group.c     pe_rsc_trace(rsc, "Freeing child list");
rsc               378 lib/pengine/group.c     g_list_free(rsc->children);
rsc               380 lib/pengine/group.c     common_free(rsc);
rsc               384 lib/pengine/group.c group_resource_state(const pe_resource_t * rsc, gboolean current)
rsc               387 lib/pengine/group.c     GList *gIter = rsc->children;
rsc               398 lib/pengine/group.c     pe_rsc_trace(rsc, "%s role: %s", rsc->id, role2text(group_role));
rsc               403 lib/pengine/group.c pe__group_is_filtered(pe_resource_t *rsc, GList *only_rsc, gboolean check_parent)
rsc               407 lib/pengine/group.c     if (check_parent && pcmk__str_in_list(rsc_printable_id(uber_parent(rsc)), only_rsc, pcmk__str_star_matches)) {
rsc               409 lib/pengine/group.c     } else if (pcmk__str_in_list(rsc_printable_id(rsc), only_rsc, pcmk__str_star_matches)) {
rsc               411 lib/pengine/group.c     } else if (strstr(rsc->id, ":") != NULL && pcmk__str_in_list(rsc->id, only_rsc, pcmk__str_star_matches)) {
rsc               414 lib/pengine/group.c         for (GList *gIter = rsc->children; gIter != NULL; gIter = gIter->next) {
rsc                36 lib/pengine/native.c is_multiply_active(pe_resource_t *rsc)
rsc                40 lib/pengine/native.c     if (rsc->variant == pe_native) {
rsc                41 lib/pengine/native.c         pe__find_active_requires(rsc, &count);
rsc                47 lib/pengine/native.c native_priority_to_node(pe_resource_t * rsc, pe_node_t * node, gboolean failed)
rsc                51 lib/pengine/native.c     if ((rsc->priority == 0) || (failed == TRUE)) {
rsc                55 lib/pengine/native.c     if (rsc->role == RSC_ROLE_PROMOTED) {
rsc                57 lib/pengine/native.c         priority = rsc->priority + 1;
rsc                60 lib/pengine/native.c         priority = rsc->priority;
rsc                64 lib/pengine/native.c     pe_rsc_trace(rsc, "Node '%s' now has priority %d with %s'%s' (priority: %d%s)",
rsc                66 lib/pengine/native.c                  (rsc->role == RSC_ROLE_PROMOTED)? "promoted " : "",
rsc                67 lib/pengine/native.c                  rsc->id, rsc->priority,
rsc                68 lib/pengine/native.c                  (rsc->role == RSC_ROLE_PROMOTED)? " + 1" : "");
rsc                80 lib/pengine/native.c             pe_rsc_trace(rsc, "Node '%s' now has priority %d with %s'%s' (priority: %d%s) "
rsc                83 lib/pengine/native.c                          (rsc->role == RSC_ROLE_PROMOTED)? "promoted " : "",
rsc                84 lib/pengine/native.c                          rsc->id, rsc->priority,
rsc                85 lib/pengine/native.c                          (rsc->role == RSC_ROLE_PROMOTED)? " + 1" : "",
rsc                92 lib/pengine/native.c native_add_running(pe_resource_t * rsc, pe_node_t * node, pe_working_set_t * data_set, gboolean failed)
rsc                94 lib/pengine/native.c     GList *gIter = rsc->running_on;
rsc               106 lib/pengine/native.c     pe_rsc_trace(rsc, "Adding %s to %s %s", rsc->id, node->details->uname,
rsc               107 lib/pengine/native.c                  pcmk_is_set(rsc->flags, pe_rsc_managed)? "" : "(unmanaged)");
rsc               109 lib/pengine/native.c     rsc->running_on = g_list_append(rsc->running_on, node);
rsc               110 lib/pengine/native.c     if (rsc->variant == pe_native) {
rsc               111 lib/pengine/native.c         node->details->running_rsc = g_list_append(node->details->running_rsc, rsc);
rsc               113 lib/pengine/native.c         native_priority_to_node(rsc, node, failed);
rsc               116 lib/pengine/native.c     if (rsc->variant == pe_native && node->details->maintenance) {
rsc               117 lib/pengine/native.c         pe__clear_resource_flags(rsc, pe_rsc_managed);
rsc               120 lib/pengine/native.c     if (!pcmk_is_set(rsc->flags, pe_rsc_managed)) {
rsc               121 lib/pengine/native.c         pe_resource_t *p = rsc->parent;
rsc               123 lib/pengine/native.c         pe_rsc_info(rsc, "resource %s isn't managed", rsc->id);
rsc               124 lib/pengine/native.c         resource_location(rsc, node, INFINITY, "not_managed_default", data_set);
rsc               134 lib/pengine/native.c     if (is_multiply_active(rsc)) {
rsc               135 lib/pengine/native.c         switch (rsc->recovery_type) {
rsc               142 lib/pengine/native.c                     if (rsc->allowed_nodes != NULL) {
rsc               143 lib/pengine/native.c                         g_hash_table_destroy(rsc->allowed_nodes);
rsc               145 lib/pengine/native.c                     rsc->allowed_nodes = pe__node_list2table(data_set->nodes);
rsc               146 lib/pengine/native.c                     g_hash_table_iter_init(&gIter, rsc->allowed_nodes);
rsc               153 lib/pengine/native.c                 pe__clear_resource_flags(rsc, pe_rsc_managed);
rsc               154 lib/pengine/native.c                 pe__set_resource_flags(rsc, pe_rsc_block);
rsc               159 lib/pengine/native.c                 if (rsc->parent
rsc               160 lib/pengine/native.c                     && (rsc->parent->variant == pe_group || rsc->parent->variant == pe_container)
rsc               161 lib/pengine/native.c                     && rsc->parent->recovery_type == recovery_block) {
rsc               162 lib/pengine/native.c                     GList *gIter = rsc->parent->children;
rsc               179 lib/pengine/native.c                   rsc->id, node->details->uname,
rsc               180 lib/pengine/native.c                   recovery2text(rsc->recovery_type));
rsc               183 lib/pengine/native.c         pe_rsc_trace(rsc, "Resource %s is active on: %s", rsc->id, node->details->uname);
rsc               186 lib/pengine/native.c     if (rsc->parent != NULL) {
rsc               187 lib/pengine/native.c         native_add_running(rsc->parent, node, data_set, FALSE);
rsc               192 lib/pengine/native.c recursive_clear_unique(pe_resource_t *rsc, gpointer user_data)
rsc               194 lib/pengine/native.c     pe__clear_resource_flags(rsc, pe_rsc_unique);
rsc               195 lib/pengine/native.c     add_hash_param(rsc->meta, XML_RSC_ATTR_UNIQUE, XML_BOOLEAN_FALSE);
rsc               196 lib/pengine/native.c     g_list_foreach(rsc->children, (GFunc) recursive_clear_unique, NULL);
rsc               200 lib/pengine/native.c native_unpack(pe_resource_t * rsc, pe_working_set_t * data_set)
rsc               202 lib/pengine/native.c     pe_resource_t *parent = uber_parent(rsc);
rsc               204 lib/pengine/native.c     const char *standard = crm_element_value(rsc->xml, XML_AGENT_ATTR_CLASS);
rsc               207 lib/pengine/native.c     pe_rsc_trace(rsc, "Processing resource %s...", rsc->id);
rsc               210 lib/pengine/native.c     rsc->variant_opaque = native_data;
rsc               214 lib/pengine/native.c         && pcmk_is_set(rsc->flags, pe_rsc_unique) && pe_rsc_is_clone(parent)) {
rsc               221 lib/pengine/native.c         pe__force_anon(standard, parent, rsc->id, data_set);
rsc               229 lib/pengine/native.c         recursive_clear_unique(rsc, NULL);
rsc               236 lib/pengine/native.c                rsc->id, standard);
rsc               243 lib/pengine/native.c rsc_is_on_node(pe_resource_t *rsc, const pe_node_t *node, int flags)
rsc               245 lib/pengine/native.c     pe_rsc_trace(rsc, "Checking whether %s is on %s",
rsc               246 lib/pengine/native.c                  rsc->id, node->details->uname);
rsc               248 lib/pengine/native.c     if (pcmk_is_set(flags, pe_find_current) && rsc->running_on) {
rsc               250 lib/pengine/native.c         for (GList *iter = rsc->running_on; iter; iter = iter->next) {
rsc               259 lib/pengine/native.c                && (rsc->running_on == NULL)) {
rsc               262 lib/pengine/native.c     } else if (!pcmk_is_set(flags, pe_find_current) && rsc->allocated_to
rsc               263 lib/pengine/native.c                && (rsc->allocated_to->details == node->details)) {
rsc               270 lib/pengine/native.c native_find_rsc(pe_resource_t * rsc, const char *id, const pe_node_t *on_node,
rsc               276 lib/pengine/native.c     CRM_CHECK(id && rsc && rsc->id, return NULL);
rsc               279 lib/pengine/native.c         const char *rid = ID(rsc->xml);
rsc               281 lib/pengine/native.c         if (!pe_rsc_is_clone(uber_parent(rsc))) {
rsc               284 lib/pengine/native.c         } else if (!strcmp(id, rsc->id) || pcmk__str_eq(id, rid, pcmk__str_none)) {
rsc               288 lib/pengine/native.c     } else if (!strcmp(id, rsc->id)) {
rsc               292 lib/pengine/native.c                && rsc->clone_name && strcmp(rsc->clone_name, id) == 0) {
rsc               297 lib/pengine/native.c                    && !pcmk_is_set(rsc->flags, pe_rsc_unique))) {
rsc               298 lib/pengine/native.c         match = pe_base_name_eq(rsc, id);
rsc               302 lib/pengine/native.c         if (!rsc_is_on_node(rsc, on_node, flags)) {
rsc               308 lib/pengine/native.c         return rsc;
rsc               311 lib/pengine/native.c     for (GList *gIter = rsc->children; gIter != NULL; gIter = gIter->next) {
rsc               314 lib/pengine/native.c         result = rsc->fns->find_rsc(child, id, on_node, flags);
rsc               324 lib/pengine/native.c native_parameter(pe_resource_t * rsc, pe_node_t * node, gboolean create, const char *name,
rsc               331 lib/pengine/native.c     CRM_CHECK(rsc != NULL, return NULL);
rsc               334 lib/pengine/native.c     pe_rsc_trace(rsc, "Looking up %s in %s", name, rsc->id);
rsc               335 lib/pengine/native.c     params = pe_rsc_params(rsc, node, data_set);
rsc               339 lib/pengine/native.c         value = g_hash_table_lookup(rsc->meta, name);
rsc               346 lib/pengine/native.c native_active(pe_resource_t * rsc, gboolean all)
rsc               348 lib/pengine/native.c     for (GList *gIter = rsc->running_on; gIter != NULL; gIter = gIter->next) {
rsc               352 lib/pengine/native.c             pe_rsc_trace(rsc, "Resource %s: node %s is unclean",
rsc               353 lib/pengine/native.c                          rsc->id, a_node->details->uname);
rsc               355 lib/pengine/native.c         } else if (a_node->details->online == FALSE && pcmk_is_set(rsc->flags, pe_rsc_managed)) {
rsc               356 lib/pengine/native.c             pe_rsc_trace(rsc, "Resource %s: node %s is offline",
rsc               357 lib/pengine/native.c                          rsc->id, a_node->details->uname);
rsc               359 lib/pengine/native.c             pe_rsc_trace(rsc, "Resource %s active on %s",
rsc               360 lib/pengine/native.c                          rsc->id, a_node->details->uname);
rsc               373 lib/pengine/native.c native_pending_state(pe_resource_t * rsc)
rsc               377 lib/pengine/native.c     if (pcmk__str_eq(rsc->pending_task, CRMD_ACTION_START, pcmk__str_casei)) {
rsc               380 lib/pengine/native.c     } else if (pcmk__str_eq(rsc->pending_task, CRMD_ACTION_STOP, pcmk__str_casei)) {
rsc               383 lib/pengine/native.c     } else if (pcmk__str_eq(rsc->pending_task, CRMD_ACTION_MIGRATE, pcmk__str_casei)) {
rsc               386 lib/pengine/native.c     } else if (pcmk__str_eq(rsc->pending_task, CRMD_ACTION_MIGRATED, pcmk__str_casei)) {
rsc               390 lib/pengine/native.c     } else if (pcmk__str_eq(rsc->pending_task, CRMD_ACTION_PROMOTE, pcmk__str_casei)) {
rsc               393 lib/pengine/native.c     } else if (pcmk__str_eq(rsc->pending_task, CRMD_ACTION_DEMOTE, pcmk__str_casei)) {
rsc               401 lib/pengine/native.c native_pending_task(pe_resource_t * rsc)
rsc               405 lib/pengine/native.c     if (pcmk__str_eq(rsc->pending_task, CRMD_ACTION_STATUS, pcmk__str_casei)) {
rsc               423 lib/pengine/native.c native_displayable_role(pe_resource_t *rsc)
rsc               425 lib/pengine/native.c     enum rsc_role_e role = rsc->role;
rsc               428 lib/pengine/native.c         && pcmk_is_set(uber_parent(rsc)->flags, pe_rsc_promotable)) {
rsc               436 lib/pengine/native.c native_displayable_state(pe_resource_t *rsc, bool print_pending)
rsc               441 lib/pengine/native.c         rsc_state = native_pending_state(rsc);
rsc               444 lib/pengine/native.c         rsc_state = role2text(native_displayable_role(rsc));
rsc               450 lib/pengine/native.c native_print_xml(pe_resource_t * rsc, const char *pre_text, long options, void *print_data)
rsc               452 lib/pengine/native.c     const char *class = crm_element_value(rsc->xml, XML_AGENT_ATTR_CLASS);
rsc               453 lib/pengine/native.c     const char *prov = crm_element_value(rsc->xml, XML_AGENT_ATTR_PROVIDER);
rsc               454 lib/pengine/native.c     const char *rsc_state = native_displayable_state(rsc, pcmk_is_set(options, pe_print_pending));
rsc               459 lib/pengine/native.c     status_print("id=\"%s\" ", rsc_printable_id(rsc));
rsc               463 lib/pengine/native.c                  crm_element_value(rsc->xml, XML_ATTR_TYPE));
rsc               466 lib/pengine/native.c     if (rsc->meta) {
rsc               467 lib/pengine/native.c         target_role = g_hash_table_lookup(rsc->meta, XML_RSC_ATTR_TARGET_ROLE);
rsc               472 lib/pengine/native.c     status_print("active=\"%s\" ", pcmk__btoa(rsc->fns->active(rsc, TRUE)));
rsc               473 lib/pengine/native.c     status_print("orphaned=\"%s\" ", pe__rsc_bool_str(rsc, pe_rsc_orphan));
rsc               474 lib/pengine/native.c     status_print("blocked=\"%s\" ", pe__rsc_bool_str(rsc, pe_rsc_block));
rsc               475 lib/pengine/native.c     status_print("managed=\"%s\" ", pe__rsc_bool_str(rsc, pe_rsc_managed));
rsc               476 lib/pengine/native.c     status_print("failed=\"%s\" ", pe__rsc_bool_str(rsc, pe_rsc_failed));
rsc               478 lib/pengine/native.c                  pe__rsc_bool_str(rsc, pe_rsc_failure_ignored));
rsc               479 lib/pengine/native.c     status_print("nodes_running_on=\"%d\" ", g_list_length(rsc->running_on));
rsc               482 lib/pengine/native.c         const char *pending_task = native_pending_task(rsc);
rsc               493 lib/pengine/native.c     } else if (rsc->running_on != NULL) {
rsc               494 lib/pengine/native.c         GList *gIter = rsc->running_on;
rsc               543 lib/pengine/native.c pcmk__native_output_string(pe_resource_t *rsc, const char *name, pe_node_t *node,
rsc               546 lib/pengine/native.c     const char *class = crm_element_value(rsc->xml, XML_AGENT_ATTR_CLASS);
rsc               548 lib/pengine/native.c     const char *kind = crm_element_value(rsc->xml, XML_ATTR_TYPE);
rsc               553 lib/pengine/native.c     if (rsc->variant != pe_native) {
rsc               562 lib/pengine/native.c         provider = crm_element_value(rsc->xml, XML_AGENT_ATTR_PROVIDER);
rsc               565 lib/pengine/native.c     if ((node == NULL) && (rsc->lock_node != NULL)) {
rsc               566 lib/pengine/native.c         node = rsc->lock_node;
rsc               569 lib/pengine/native.c         || pcmk__list_of_multiple(rsc->running_on)) {
rsc               585 lib/pengine/native.c     if (pcmk_is_set(rsc->flags, pe_rsc_orphan)) {
rsc               588 lib/pengine/native.c     if (pcmk_is_set(rsc->flags, pe_rsc_failed)) {
rsc               589 lib/pengine/native.c         enum rsc_role_e role = native_displayable_role(rsc);
rsc               597 lib/pengine/native.c         g_string_append_printf(outstr, " %s", native_displayable_state(rsc, pcmk_is_set(show_opts, pcmk_show_pending)));
rsc               604 lib/pengine/native.c     if (native_displayable_role(rsc) == RSC_ROLE_STOPPED) {
rsc               605 lib/pengine/native.c         xmlNode *probe_op = pe__failed_probe_for_rsc(rsc, node ? node->details->uname : NULL);
rsc               618 lib/pengine/native.c     if (node && (node == rsc->lock_node)) {
rsc               622 lib/pengine/native.c         const char *pending_task = native_pending_task(rsc);
rsc               638 lib/pengine/native.c         } else if (pcmk_is_set(uber_parent(rsc)->flags, pe_rsc_promotable)
rsc               644 lib/pengine/native.c     if (pcmk_is_set(rsc->flags, pe_rsc_block)) {
rsc               646 lib/pengine/native.c     } else if (!pcmk_is_set(rsc->flags, pe_rsc_managed)) {
rsc               649 lib/pengine/native.c     if (pcmk_is_set(rsc->flags, pe_rsc_failure_ignored)) {
rsc               658 lib/pengine/native.c         || pcmk__list_of_multiple(rsc->running_on)) {
rsc               659 lib/pengine/native.c         const char *desc = crm_element_value(rsc->xml, XML_ATTR_DESC);
rsc               667 lib/pengine/native.c         && pcmk__list_of_multiple(rsc->running_on)) {
rsc               670 lib/pengine/native.c         for (GList *iter = rsc->running_on; iter != NULL; iter = iter->next) {
rsc               686 lib/pengine/native.c pe__common_output_html(pcmk__output_t *out, pe_resource_t * rsc,
rsc               689 lib/pengine/native.c     const char *kind = crm_element_value(rsc->xml, XML_ATTR_TYPE);
rsc               695 lib/pengine/native.c     CRM_ASSERT(rsc->variant == pe_native);
rsc               698 lib/pengine/native.c     if (rsc->meta) {
rsc               699 lib/pengine/native.c         const char *is_internal = g_hash_table_lookup(rsc->meta, XML_RSC_ATTR_INTERNAL_RSC);
rsc               704 lib/pengine/native.c             crm_trace("skipping print of internal resource %s", rsc->id);
rsc               707 lib/pengine/native.c         target_role = g_hash_table_lookup(rsc->meta, XML_RSC_ATTR_TARGET_ROLE);
rsc               710 lib/pengine/native.c     if (!pcmk_is_set(rsc->flags, pe_rsc_managed)) {
rsc               713 lib/pengine/native.c     } else if (pcmk_is_set(rsc->flags, pe_rsc_failed)) {
rsc               716 lib/pengine/native.c     } else if (rsc->variant == pe_native && (rsc->running_on == NULL)) {
rsc               719 lib/pengine/native.c     } else if (pcmk__list_of_multiple(rsc->running_on)) {
rsc               722 lib/pengine/native.c     } else if (pcmk_is_set(rsc->flags, pe_rsc_failure_ignored)) {
rsc               730 lib/pengine/native.c         gchar *s = pcmk__native_output_string(rsc, name, node, show_opts,
rsc               742 lib/pengine/native.c pe__common_output_text(pcmk__output_t *out, pe_resource_t * rsc,
rsc               747 lib/pengine/native.c     CRM_ASSERT(rsc->variant == pe_native);
rsc               749 lib/pengine/native.c     if (rsc->meta) {
rsc               750 lib/pengine/native.c         const char *is_internal = g_hash_table_lookup(rsc->meta, XML_RSC_ATTR_INTERNAL_RSC);
rsc               755 lib/pengine/native.c             crm_trace("skipping print of internal resource %s", rsc->id);
rsc               758 lib/pengine/native.c         target_role = g_hash_table_lookup(rsc->meta, XML_RSC_ATTR_TARGET_ROLE);
rsc               762 lib/pengine/native.c         gchar *s = pcmk__native_output_string(rsc, name, node, show_opts,
rsc               773 lib/pengine/native.c common_print(pe_resource_t * rsc, const char *pre_text, const char *name, pe_node_t *node, long options, void *print_data)
rsc               777 lib/pengine/native.c     CRM_ASSERT(rsc->variant == pe_native);
rsc               779 lib/pengine/native.c     if (rsc->meta) {
rsc               780 lib/pengine/native.c         const char *is_internal = g_hash_table_lookup(rsc->meta,
rsc               786 lib/pengine/native.c             crm_trace("skipping print of internal resource %s", rsc->id);
rsc               789 lib/pengine/native.c         target_role = g_hash_table_lookup(rsc->meta, XML_RSC_ATTR_TARGET_ROLE);
rsc               793 lib/pengine/native.c         native_print_xml(rsc, pre_text, options, print_data);
rsc               802 lib/pengine/native.c         if (!pcmk_is_set(rsc->flags, pe_rsc_managed)) {
rsc               805 lib/pengine/native.c         } else if (pcmk_is_set(rsc->flags, pe_rsc_failed)) {
rsc               808 lib/pengine/native.c         } else if (rsc->running_on == NULL) {
rsc               811 lib/pengine/native.c         } else if (pcmk__list_of_multiple(rsc->running_on)) {
rsc               814 lib/pengine/native.c         } else if (pcmk_is_set(rsc->flags, pe_rsc_failure_ignored)) {
rsc               823 lib/pengine/native.c         gchar *resource_s = pcmk__native_output_string(rsc, name, node, options,
rsc               834 lib/pengine/native.c         && pcmk__list_of_multiple(rsc->running_on)) {
rsc               836 lib/pengine/native.c         GList *gIter = rsc->running_on;
rsc               888 lib/pengine/native.c native_print(pe_resource_t * rsc, const char *pre_text, long options, void *print_data)
rsc               892 lib/pengine/native.c     CRM_ASSERT(rsc->variant == pe_native);
rsc               894 lib/pengine/native.c         native_print_xml(rsc, pre_text, options, print_data);
rsc               898 lib/pengine/native.c     node = pe__current_node(rsc);
rsc               902 lib/pengine/native.c         node = rsc->pending_node;
rsc               905 lib/pengine/native.c     common_print(rsc, pre_text, rsc_printable_id(rsc), node, options, print_data);
rsc               913 lib/pengine/native.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc               918 lib/pengine/native.c     const char *class = crm_element_value(rsc->xml, XML_AGENT_ATTR_CLASS);
rsc               919 lib/pengine/native.c     const char *prov = crm_element_value(rsc->xml, XML_AGENT_ATTR_PROVIDER);
rsc               920 lib/pengine/native.c     const char *rsc_state = native_displayable_state(rsc, print_pending);
rsc               927 lib/pengine/native.c     if (rsc->meta != NULL) {
rsc               928 lib/pengine/native.c        target_role = g_hash_table_lookup(rsc->meta, XML_RSC_ATTR_TARGET_ROLE);
rsc               931 lib/pengine/native.c     CRM_ASSERT(rsc->variant == pe_native);
rsc               933 lib/pengine/native.c     if (rsc->fns->is_filtered(rsc, only_rsc, TRUE)) {
rsc               940 lib/pengine/native.c             crm_element_value(rsc->xml, XML_ATTR_TYPE));
rsc               942 lib/pengine/native.c     nodes_running_on = pcmk__itoa(g_list_length(rsc->running_on));
rsc               945 lib/pengine/native.c              "id", rsc_printable_id(rsc),
rsc               949 lib/pengine/native.c              "active", pcmk__btoa(rsc->fns->active(rsc, TRUE)),
rsc               950 lib/pengine/native.c              "orphaned", pe__rsc_bool_str(rsc, pe_rsc_orphan),
rsc               951 lib/pengine/native.c              "blocked", pe__rsc_bool_str(rsc, pe_rsc_block),
rsc               952 lib/pengine/native.c              "managed", pe__rsc_bool_str(rsc, pe_rsc_managed),
rsc               953 lib/pengine/native.c              "failed", pe__rsc_bool_str(rsc, pe_rsc_failed),
rsc               954 lib/pengine/native.c              "failure_ignored", pe__rsc_bool_str(rsc, pe_rsc_failure_ignored),
rsc               956 lib/pengine/native.c              "pending", (print_pending? native_pending_task(rsc) : NULL));
rsc               961 lib/pengine/native.c     if (rsc->running_on != NULL) {
rsc               962 lib/pengine/native.c         GList *gIter = rsc->running_on;
rsc               984 lib/pengine/native.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc               988 lib/pengine/native.c     pe_node_t *node = pe__current_node(rsc);
rsc               990 lib/pengine/native.c     if (rsc->fns->is_filtered(rsc, only_rsc, TRUE)) {
rsc               994 lib/pengine/native.c     CRM_ASSERT(rsc->variant == pe_native);
rsc               998 lib/pengine/native.c         node = rsc->pending_node;
rsc              1000 lib/pengine/native.c     return pe__common_output_html(out, rsc, rsc_printable_id(rsc), node, show_opts);
rsc              1008 lib/pengine/native.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc              1012 lib/pengine/native.c     pe_node_t *node = pe__current_node(rsc);
rsc              1014 lib/pengine/native.c     CRM_ASSERT(rsc->variant == pe_native);
rsc              1016 lib/pengine/native.c     if (rsc->fns->is_filtered(rsc, only_rsc, TRUE)) {
rsc              1022 lib/pengine/native.c         node = rsc->pending_node;
rsc              1024 lib/pengine/native.c     return pe__common_output_text(out, rsc, rsc_printable_id(rsc), node, show_opts);
rsc              1028 lib/pengine/native.c native_free(pe_resource_t * rsc)
rsc              1030 lib/pengine/native.c     pe_rsc_trace(rsc, "Freeing resource action list (not the data)");
rsc              1031 lib/pengine/native.c     common_free(rsc);
rsc              1035 lib/pengine/native.c native_resource_state(const pe_resource_t * rsc, gboolean current)
rsc              1037 lib/pengine/native.c     enum rsc_role_e role = rsc->next_role;
rsc              1040 lib/pengine/native.c         role = rsc->role;
rsc              1042 lib/pengine/native.c     pe_rsc_trace(rsc, "%s state: %s", rsc->id, role2text(role));
rsc              1058 lib/pengine/native.c native_location(const pe_resource_t *rsc, GList **list, int current)
rsc              1063 lib/pengine/native.c     if (rsc->children) {
rsc              1064 lib/pengine/native.c         GList *gIter = rsc->children;
rsc              1074 lib/pengine/native.c         if (rsc->running_on) {
rsc              1075 lib/pengine/native.c             result = g_list_copy(rsc->running_on);
rsc              1077 lib/pengine/native.c         if ((current == 2) && rsc->pending_node
rsc              1078 lib/pengine/native.c             && !pe_find_node_id(result, rsc->pending_node->details->id)) {
rsc              1079 lib/pengine/native.c                 result = g_list_append(result, rsc->pending_node);
rsc              1082 lib/pengine/native.c     } else if (current == FALSE && rsc->allocated_to) {
rsc              1083 lib/pengine/native.c         result = g_list_append(NULL, rsc->allocated_to);
rsc              1112 lib/pengine/native.c         pe_resource_t *rsc = (pe_resource_t *) gIter->data;
rsc              1114 lib/pengine/native.c         const char *class = crm_element_value(rsc->xml, XML_AGENT_ATTR_CLASS);
rsc              1115 lib/pengine/native.c         const char *kind = crm_element_value(rsc->xml, XML_ATTR_TYPE);
rsc              1123 lib/pengine/native.c         if (rsc->variant != pe_native) {
rsc              1129 lib/pengine/native.c             const char *prov = crm_element_value(rsc->xml, XML_AGENT_ATTR_PROVIDER);
rsc              1150 lib/pengine/native.c             GList *gIter2 = rsc->running_on;
rsc              1157 lib/pengine/native.c                     pcmk_is_set(rsc->flags, pe_rsc_managed)) {
rsc              1362 lib/pengine/native.c pe__native_is_filtered(pe_resource_t *rsc, GList *only_rsc, gboolean check_parent)
rsc              1364 lib/pengine/native.c     if (pcmk__str_in_list(rsc_printable_id(rsc), only_rsc, pcmk__str_star_matches) ||
rsc              1365 lib/pengine/native.c         pcmk__str_in_list(rsc->id, only_rsc, pcmk__str_star_matches)) {
rsc              1367 lib/pengine/native.c     } else if (check_parent && rsc->parent) {
rsc              1368 lib/pengine/native.c         pe_resource_t *up = uber_parent(rsc);
rsc              1370 lib/pengine/native.c         if (pe_rsc_is_bundled(rsc)) {
rsc               100 lib/pengine/pe_digest.c append_all_versioned_params(pe_resource_t *rsc, pe_node_t *node,
rsc               109 lib/pengine/pe_digest.c     pe_get_versioned_attributes(local_versioned_params, rsc, node, data_set);
rsc               115 lib/pengine/pe_digest.c     append_versioned_params(rsc->versioned_parameters, ra_version,
rsc               138 lib/pengine/pe_digest.c calculate_main_digest(op_digest_cache_t *data, pe_resource_t *rsc,
rsc               151 lib/pengine/pe_digest.c     if (pe__add_bundle_remote_name(rsc, data_set, data->params_all,
rsc               154 lib/pengine/pe_digest.c                   rsc->id, node->details->uname);
rsc               172 lib/pengine/pe_digest.c     action = custom_action(rsc, pcmk__op_key(rsc->id, task, *interval_ms),
rsc               182 lib/pengine/pe_digest.c     append_all_versioned_params(rsc, node, action, xml_op, data_set);
rsc               212 lib/pengine/pe_digest.c calculate_secure_digest(op_digest_cache_t *data, pe_resource_t *rsc,
rsc               216 lib/pengine/pe_digest.c     const char *class = crm_element_value(rsc->xml, XML_AGENT_ATTR_CLASS);
rsc               321 lib/pengine/pe_digest.c pe__calculate_digests(pe_resource_t *rsc, const char *task, guint *interval_ms,
rsc               336 lib/pengine/pe_digest.c     params = pe_rsc_params(rsc, node, data_set);
rsc               337 lib/pengine/pe_digest.c     calculate_main_digest(data, rsc, node, params, task, interval_ms, xml_op,
rsc               340 lib/pengine/pe_digest.c         calculate_secure_digest(data, rsc, params, xml_op, op_version,
rsc               362 lib/pengine/pe_digest.c rsc_action_digest(pe_resource_t *rsc, const char *task, guint interval_ms,
rsc               367 lib/pengine/pe_digest.c     char *key = pcmk__op_key(rsc->id, task, interval_ms);
rsc               371 lib/pengine/pe_digest.c         data = pe__calculate_digests(rsc, task, &interval_ms, node, xml_op,
rsc               392 lib/pengine/pe_digest.c rsc_action_digest_cmp(pe_resource_t * rsc, xmlNode * xml_op, pe_node_t * node,
rsc               410 lib/pengine/pe_digest.c     data = rsc_action_digest(rsc, task, interval_ms, node, xml_op,
rsc               416 lib/pengine/pe_digest.c         pe_rsc_info(rsc, "Parameters to %ums-interval %s action for %s on %s "
rsc               418 lib/pengine/pe_digest.c                     interval_ms, task, rsc->id, node->details->uname,
rsc               429 lib/pengine/pe_digest.c         pe_rsc_info(rsc, "Parameters to %ums-interval %s action for %s on %s "
rsc               431 lib/pengine/pe_digest.c                     interval_ms, task, rsc->id, node->details->uname,
rsc               520 lib/pengine/pe_digest.c pe__compare_fencing_digest(pe_resource_t *rsc, const char *agent,
rsc               526 lib/pengine/pe_digest.c     op_digest_cache_t *data = rsc_action_digest(rsc, STONITH_DIGEST_TASK, 0U,
rsc               537 lib/pengine/pe_digest.c     if (unfencing_digest_matches(rsc->id, agent, data->digest_all_calc,
rsc               545 lib/pengine/pe_digest.c     if (unfencing_digest_matches(rsc->id, agent, data->digest_secure_calc,
rsc               551 lib/pengine/pe_digest.c                       "for unfencing %s changed", rsc->id,
rsc               562 lib/pengine/pe_digest.c             char *digest = create_unfencing_summary(rsc->id, agent,
rsc               566 lib/pengine/pe_digest.c                       "%s changed, try '%s'", rsc->id,
rsc               570 lib/pengine/pe_digest.c             char *digest = create_unfencing_summary(rsc->id, agent,
rsc               574 lib/pengine/pe_digest.c                    rsc->id, node->details->uname, digest);
rsc                53 lib/pengine/pe_output.c         pe_resource_t *rsc = (pe_resource_t *) gIter->data;
rsc                54 lib/pengine/pe_output.c         const char *type = g_hash_table_lookup(rsc->meta, "type");
rsc                58 lib/pengine/pe_output.c         if (rsc->children != NULL) {
rsc                59 lib/pengine/pe_output.c             if (add_extra_info(node, rsc->children, data_set, attrname,
rsc                69 lib/pengine/pe_output.c         params = pe_rsc_params(rsc, node, data_set);
rsc               278 lib/pengine/pe_output.c resource_history_string(pe_resource_t *rsc, const char *rsc_id, gboolean all,
rsc               282 lib/pengine/pe_output.c     if (rsc == NULL) {
rsc               301 lib/pengine/pe_output.c                                 rsc_id, rsc->migration_threshold, failcount_s,
rsc              1370 lib/pengine/pe_output.c         char *rsc = NULL;
rsc              1382 lib/pengine/pe_output.c         if (parse_op_key(id ? id : ID(xml_op), &rsc, NULL, NULL) == FALSE) {
rsc              1386 lib/pengine/pe_output.c         if (!pcmk__str_in_list(rsc, only_rsc, pcmk__str_star_matches)) {
rsc              1387 lib/pengine/pe_output.c             free(rsc);
rsc              1391 lib/pengine/pe_output.c         free(rsc);
rsc              1487 lib/pengine/pe_output.c                 pe_resource_t *rsc = (pe_resource_t *) lpc2->data;
rsc              1491 lib/pengine/pe_output.c                 out->message(out, crm_map_element_name(rsc->xml), show_opts,
rsc              1492 lib/pengine/pe_output.c                              rsc, only_node, only_rsc);
rsc              1625 lib/pengine/pe_output.c                     pe_resource_t *rsc = (pe_resource_t *) gIter2->data;
rsc              1628 lib/pengine/pe_output.c                     out->message(out, crm_map_element_name(rsc->xml), show_opts,
rsc              1629 lib/pengine/pe_output.c                                  rsc, only_node, only_rsc);
rsc              1711 lib/pengine/pe_output.c                 pe_resource_t *rsc = (pe_resource_t *) lpc->data;
rsc              1714 lib/pengine/pe_output.c                 out->message(out, crm_map_element_name(rsc->xml), show_opts,
rsc              1715 lib/pengine/pe_output.c                              rsc, only_node, only_rsc);
rsc              1803 lib/pengine/pe_output.c     pe_resource_t *rsc = NULL;
rsc              1815 lib/pengine/pe_output.c     rsc = pe_find_resource(data_set->resources, op_rsc);
rsc              1817 lib/pengine/pe_output.c     if (rsc) {
rsc              1818 lib/pengine/pe_output.c         pe_node_t *node = pe__current_node(rsc);
rsc              1819 lib/pengine/pe_output.c         const char *target_role = g_hash_table_lookup(rsc->meta, XML_RSC_ATTR_TARGET_ROLE);
rsc              1823 lib/pengine/pe_output.c             node = rsc->pending_node;
rsc              1826 lib/pengine/pe_output.c         node_str = pcmk__native_output_string(rsc, rsc_printable_id(rsc), node,
rsc              1859 lib/pengine/pe_output.c     pe_resource_t *rsc = NULL;
rsc              1876 lib/pengine/pe_output.c     rsc = pe_find_resource(data_set->resources, op_rsc);
rsc              1878 lib/pengine/pe_output.c     if (rsc) {
rsc              1879 lib/pengine/pe_output.c         const char *class = crm_element_value(rsc->xml, XML_AGENT_ATTR_CLASS);
rsc              1880 lib/pengine/pe_output.c         const char *kind = crm_element_value(rsc->xml, XML_ATTR_TYPE);
rsc              1884 lib/pengine/pe_output.c                                         pcmk_is_set(pcmk_get_ra_caps(class), pcmk_ra_cap_provider) ? crm_element_value(rsc->xml, XML_AGENT_ATTR_PROVIDER) : "",
rsc              1887 lib/pengine/pe_output.c         pcmk__xe_set_props(node, "rsc", rsc_printable_id(rsc),
rsc              2048 lib/pengine/pe_output.c         pe_resource_t *rsc = pe_find_resource(data_set->resources, rsc_id);
rsc              2058 lib/pengine/pe_output.c         if (uber_parent(rsc)->variant == pe_group) {
rsc              2059 lib/pengine/pe_output.c             if (!pcmk__str_in_list(rsc_printable_id(rsc), only_rsc, pcmk__str_star_matches) &&
rsc              2060 lib/pengine/pe_output.c                 !pcmk__str_in_list(rsc_printable_id(uber_parent(rsc)), only_rsc, pcmk__str_star_matches)) {
rsc              2064 lib/pengine/pe_output.c             if (rsc->fns->is_filtered(rsc, only_rsc, TRUE)) {
rsc              2071 lib/pengine/pe_output.c             int failcount = pe_get_failcount(node, rsc, &last_failure, pe_fc_default,
rsc              2084 lib/pengine/pe_output.c             out->message(out, "resource-history", rsc, rsc_id, FALSE,
rsc              2088 lib/pengine/pe_output.c             pe_resource_t *rsc = pe_find_resource(data_set->resources,
rsc              2101 lib/pengine/pe_output.c             out->message(out, "resource-operation-list", data_set, rsc, node,
rsc              2315 lib/pengine/pe_output.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc              2320 lib/pengine/pe_output.c     if (rsc) {
rsc              2322 lib/pengine/pe_output.c                        prefix, rsc->id, uname, score);
rsc              2334 lib/pengine/pe_output.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc              2345 lib/pengine/pe_output.c     if (rsc) {
rsc              2346 lib/pengine/pe_output.c         crm_xml_add(node, "id", rsc->id);
rsc              2458 lib/pengine/pe_output.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc              2464 lib/pengine/pe_output.c         rsc_xml = dump_xml_formatted(rsc->orig_xml ? rsc->orig_xml : rsc->xml);
rsc              2466 lib/pengine/pe_output.c         rsc_xml = dump_xml_formatted(rsc->xml);
rsc              2479 lib/pengine/pe_output.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc              2486 lib/pengine/pe_output.c     char *buf = resource_history_string(rsc, rsc_id, all, failcount, last_failure);
rsc              2501 lib/pengine/pe_output.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc              2512 lib/pengine/pe_output.c     if (rsc == NULL) {
rsc              2515 lib/pengine/pe_output.c         char *migration_s = pcmk__itoa(rsc->migration_threshold);
rsc              2594 lib/pengine/pe_output.c         pe_resource_t *rsc = (pe_resource_t *) rsc_iter->data;
rsc              2598 lib/pengine/pe_output.c         gboolean is_active = rsc->fns->active(rsc, TRUE);
rsc              2599 lib/pengine/pe_output.c         gboolean partially_active = rsc->fns->active(rsc, FALSE);
rsc              2602 lib/pengine/pe_output.c         if (pcmk_is_set(rsc->flags, pe_rsc_orphan) && !is_active) {
rsc              2612 lib/pengine/pe_output.c         } else if (pcmk_is_set(show_opts, pcmk_show_brief) && (rsc->variant == pe_native)) {
rsc              2621 lib/pengine/pe_output.c         } else if (partially_active && !pe__rsc_running_on_any(rsc, only_node)) {
rsc              2632 lib/pengine/pe_output.c         x = out->message(out, crm_map_element_name(rsc->xml), show_opts, rsc,
rsc              2668 lib/pengine/pe_output.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc              2696 lib/pengine/pe_output.c             int failcount = pe_get_failcount(node, rsc, &last_failure, pe_fc_default,
rsc              2699 lib/pengine/pe_output.c             out->message(out, "resource-history", rsc, rsc_printable_id(rsc), TRUE,
rsc              2720 lib/pengine/pe_output.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc              2725 lib/pengine/pe_output.c                                         fn, rsc->id, node->details->uname);
rsc              2727 lib/pengine/pe_output.c     g_hash_table_foreach(rsc->utilization, append_dump_text, &dump_text);
rsc              2738 lib/pengine/pe_output.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc              2743 lib/pengine/pe_output.c                                                        "resource", rsc->id,
rsc              2747 lib/pengine/pe_output.c     g_hash_table_foreach(rsc->utilization, add_dump_node, xml_node);
rsc              2954 lib/pengine/pe_output.c             pe_resource_t *rsc = (pe_resource_t *) gIter->data;
rsc              2957 lib/pengine/pe_output.c             out->message(out, crm_map_element_name(rsc->xml), show_opts,
rsc              2958 lib/pengine/pe_output.c                          rsc, all, all);
rsc                33 lib/pengine/pe_status_private.h pe_resource_t *pe__create_clone_child(pe_resource_t *rsc,
rsc                37 lib/pengine/pe_status_private.h void pe__force_anon(const char *standard, pe_resource_t *rsc, const char *rid,
rsc                59 lib/pengine/pe_status_private.h op_digest_cache_t *pe__compare_fencing_digest(pe_resource_t *rsc,
rsc                17 lib/pengine/remote.c pe__resource_is_remote_conn(const pe_resource_t *rsc,
rsc                20 lib/pengine/remote.c     return (rsc != NULL) && rsc->is_remote_node
rsc                21 lib/pengine/remote.c            && pe__is_remote_node(pe_find_node(data_set->nodes, rsc->id));
rsc                67 lib/pengine/remote.c                                  const pe_resource_t *rsc)
rsc                69 lib/pengine/remote.c     if ((rsc != NULL) && (data_set != NULL)
rsc                72 lib/pengine/remote.c         for (GList *gIter = rsc->fillers; gIter != NULL; gIter = gIter->next) {
rsc               130 lib/pengine/remote.c         pe_resource_t *rsc = (pe_resource_t *) iter->data;
rsc               132 lib/pengine/remote.c         if (rsc->is_remote_node && (rsc->container != NULL)) {
rsc               133 lib/pengine/remote.c             pe_node_t *guest_node = pe_find_node(data_set->nodes, rsc->id);
rsc               214 lib/pengine/remote.c     pe_resource_t *rsc; // Known resource corresponding to history entry
rsc               220 lib/pengine/remote.c pe__add_param_check(xmlNode *rsc_op, pe_resource_t *rsc, pe_node_t *node,
rsc               225 lib/pengine/remote.c     CRM_CHECK(data_set && rsc_op && rsc && node, return);
rsc               232 lib/pengine/remote.c     check_op->rsc = rsc;
rsc               255 lib/pengine/remote.c         cb(check_op->rsc, check_op->node, check_op->rsc_op,
rsc               165 lib/pengine/status.c     pe_resource_t *rsc = NULL;
rsc               169 lib/pengine/status.c         rsc = (pe_resource_t *) iterator->data;
rsc               171 lib/pengine/status.c         rsc->fns->free(rsc);
rsc                37 lib/pengine/tags.c         pe_resource_t *rsc = pe_find_resource_with_flags(data_set->resources, id,
rsc                40 lib/pengine/tags.c         if (!rsc) {
rsc                44 lib/pengine/tags.c         retval = g_list_append(retval, strdup(rsc_printable_id(rsc)));
rsc                66 lib/pengine/tests/native/native_find_rsc_test.c         pe_resource_t *rsc = (pe_resource_t *) iter->data;
rsc                68 lib/pengine/tests/native/native_find_rsc_test.c         if (strcmp(rsc->id, "exim-group") == 0) {
rsc                69 lib/pengine/tests/native/native_find_rsc_test.c             exim_group = rsc;
rsc                70 lib/pengine/tests/native/native_find_rsc_test.c         } else if (strcmp(rsc->id, "httpd-bundle") == 0) {
rsc                71 lib/pengine/tests/native/native_find_rsc_test.c             httpd_bundle = rsc;
rsc                72 lib/pengine/tests/native/native_find_rsc_test.c         } else if (strcmp(rsc->id, "inactive-clone") == 0) {
rsc                73 lib/pengine/tests/native/native_find_rsc_test.c             inactive_clone = rsc;
rsc                74 lib/pengine/tests/native/native_find_rsc_test.c         } else if (strcmp(rsc->id, "inactive-group") == 0) {
rsc                75 lib/pengine/tests/native/native_find_rsc_test.c             inactive_group = rsc;
rsc                76 lib/pengine/tests/native/native_find_rsc_test.c         } else if (strcmp(rsc->id, "mysql-clone-group") == 0) {
rsc                77 lib/pengine/tests/native/native_find_rsc_test.c             mysql_clone_group = rsc;
rsc                78 lib/pengine/tests/native/native_find_rsc_test.c         } else if (strcmp(rsc->id, "promotable-clone") == 0) {
rsc                79 lib/pengine/tests/native/native_find_rsc_test.c             promotable_clone = rsc;
rsc                95 lib/pengine/tests/native/native_find_rsc_test.c     pe_resource_t *rsc = (pe_resource_t *) g_list_first(data_set->resources)->data;
rsc                96 lib/pengine/tests/native/native_find_rsc_test.c     char *id = rsc->id;
rsc                99 lib/pengine/tests/native/native_find_rsc_test.c     assert_non_null(rsc);
rsc               102 lib/pengine/tests/native/native_find_rsc_test.c     assert_null(native_find_rsc(rsc, NULL, NULL, 0));
rsc               105 lib/pengine/tests/native/native_find_rsc_test.c     name = crm_strdup_printf("%sX", rsc->id);
rsc               106 lib/pengine/tests/native/native_find_rsc_test.c     assert_null(native_find_rsc(rsc, name, NULL, 0));
rsc               109 lib/pengine/tests/native/native_find_rsc_test.c     name = crm_strdup_printf("x%s", rsc->id);
rsc               110 lib/pengine/tests/native/native_find_rsc_test.c     assert_null(native_find_rsc(rsc, name, NULL, 0));
rsc               113 lib/pengine/tests/native/native_find_rsc_test.c     name = g_ascii_strup(rsc->id, -1);
rsc               114 lib/pengine/tests/native/native_find_rsc_test.c     assert_null(native_find_rsc(rsc, name, NULL, 0));
rsc               118 lib/pengine/tests/native/native_find_rsc_test.c     rsc->id = NULL;
rsc               119 lib/pengine/tests/native/native_find_rsc_test.c     assert_null(native_find_rsc(rsc, id, NULL, 0));
rsc               120 lib/pengine/tests/native/native_find_rsc_test.c     rsc->id = id;
rsc               129 lib/pengine/tests/native/native_find_rsc_test.c         pe_resource_t *rsc = (pe_resource_t *) iter->data;
rsc               131 lib/pengine/tests/native/native_find_rsc_test.c         if (strcmp(rsc->id, "dummy") == 0) {
rsc               132 lib/pengine/tests/native/native_find_rsc_test.c             dummy = rsc;
rsc               208 lib/pengine/tests/native/native_find_rsc_test.c         pe_resource_t *rsc = (pe_resource_t *) iter->data;
rsc               210 lib/pengine/tests/native/native_find_rsc_test.c         if (strcmp(rsc->id, "Public-IP") == 0) {
rsc               211 lib/pengine/tests/native/native_find_rsc_test.c             public_ip = rsc;
rsc               242 lib/pengine/tests/native/native_find_rsc_test.c         pe_resource_t *rsc = (pe_resource_t *) iter->data;
rsc               244 lib/pengine/tests/native/native_find_rsc_test.c         if (strcmp(rsc->id, "inactive-dummy-1") == 0) {
rsc               245 lib/pengine/tests/native/native_find_rsc_test.c             inactive_dummy_1 = rsc;
rsc               323 lib/pengine/tests/native/native_find_rsc_test.c         pe_resource_t *rsc = (pe_resource_t *) iter->data;
rsc               325 lib/pengine/tests/native/native_find_rsc_test.c         if (strcmp(rsc->id, "promotable-rsc:0") == 0) {
rsc               326 lib/pengine/tests/native/native_find_rsc_test.c             promotable_0 = rsc;
rsc               327 lib/pengine/tests/native/native_find_rsc_test.c         } else if (strcmp(rsc->id, "promotable-rsc:1") == 0) {
rsc               328 lib/pengine/tests/native/native_find_rsc_test.c             promotable_1 = rsc;
rsc               400 lib/pengine/tests/native/native_find_rsc_test.c         pe_resource_t *rsc = (pe_resource_t *) iter->data;
rsc               402 lib/pengine/tests/native/native_find_rsc_test.c         if (strcmp(rsc->id, "promotable-rsc:0") == 0) {
rsc               403 lib/pengine/tests/native/native_find_rsc_test.c             promotable_0 = rsc;
rsc               404 lib/pengine/tests/native/native_find_rsc_test.c         } else if (strcmp(rsc->id, "promotable-rsc:1") == 0) {
rsc               405 lib/pengine/tests/native/native_find_rsc_test.c             promotable_1 = rsc;
rsc               520 lib/pengine/tests/native/native_find_rsc_test.c clone_group_rsc(void **rsc) {
rsc               546 lib/pengine/tests/native/native_find_rsc_test.c clone_group_instance_rsc(void **rsc) {
rsc               552 lib/pengine/tests/native/native_find_rsc_test.c         pe_resource_t *rsc = (pe_resource_t *) iter->data;
rsc               554 lib/pengine/tests/native/native_find_rsc_test.c         if (strcmp(rsc->id, "mysql-group:0") == 0) {
rsc               555 lib/pengine/tests/native/native_find_rsc_test.c             mysql_group_0 = rsc;
rsc               556 lib/pengine/tests/native/native_find_rsc_test.c         } else if (strcmp(rsc->id, "mysql-group:1") == 0) {
rsc               557 lib/pengine/tests/native/native_find_rsc_test.c             mysql_group_1 = rsc;
rsc               628 lib/pengine/tests/native/native_find_rsc_test.c         pe_resource_t *rsc = (pe_resource_t *) iter->data;
rsc               630 lib/pengine/tests/native/native_find_rsc_test.c         if (strcmp(rsc->id, "mysql-group:0") == 0) {
rsc               631 lib/pengine/tests/native/native_find_rsc_test.c             for (GList *iter2 = rsc->children; iter2 != NULL; iter2 = iter2->next) {
rsc                56 lib/pengine/tests/native/pe_base_name_eq_test.c         pe_resource_t *rsc = (pe_resource_t *) iter->data;
rsc                58 lib/pengine/tests/native/pe_base_name_eq_test.c         if (strcmp(rsc->id, "dummy") == 0) {
rsc                59 lib/pengine/tests/native/pe_base_name_eq_test.c             dummy = rsc;
rsc                60 lib/pengine/tests/native/pe_base_name_eq_test.c         } else if (strcmp(rsc->id, "exim-group") == 0) {
rsc                61 lib/pengine/tests/native/pe_base_name_eq_test.c             exim_group = rsc;
rsc                62 lib/pengine/tests/native/pe_base_name_eq_test.c         } else if (strcmp(rsc->id, "httpd-bundle") == 0) {
rsc                63 lib/pengine/tests/native/pe_base_name_eq_test.c             httpd_bundle = rsc;
rsc                64 lib/pengine/tests/native/pe_base_name_eq_test.c         } else if (strcmp(rsc->id, "mysql-clone-group") == 0) {
rsc                65 lib/pengine/tests/native/pe_base_name_eq_test.c             for (GList *iter = rsc->children; iter != NULL; iter = iter->next) {
rsc                74 lib/pengine/tests/native/pe_base_name_eq_test.c         } else if (strcmp(rsc->id, "promotable-clone") == 0) {
rsc                75 lib/pengine/tests/native/pe_base_name_eq_test.c             for (GList *iter = rsc->children; iter != NULL; iter = iter->next) {
rsc                51 lib/pengine/unpack.c static void unpack_rsc_op(pe_resource_t *rsc, pe_node_t *node, xmlNode *xml_op,
rsc               102 lib/pengine/unpack.c         pe_resource_t *rsc = node->details->remote_rsc->container;
rsc               104 lib/pengine/unpack.c         if (!pcmk_is_set(rsc->flags, pe_rsc_failed)) {
rsc               105 lib/pengine/unpack.c             if (!pcmk_is_set(rsc->flags, pe_rsc_managed)) {
rsc               109 lib/pengine/unpack.c                            node->details->uname, reason, rsc->id);
rsc               113 lib/pengine/unpack.c                          node->details->uname, rsc->id, reason);
rsc               120 lib/pengine/unpack.c                 pe__set_resource_flags(rsc, pe_rsc_failed|pe_rsc_stop);
rsc               133 lib/pengine/unpack.c         pe_resource_t *rsc = node->details->remote_rsc;
rsc               135 lib/pengine/unpack.c         if ((rsc != NULL) && !pcmk_is_set(rsc->flags, pe_rsc_managed)) {
rsc               604 lib/pengine/unpack.c setup_container(pe_resource_t * rsc, pe_working_set_t * data_set)
rsc               608 lib/pengine/unpack.c     if (rsc->children) {
rsc               609 lib/pengine/unpack.c         g_list_foreach(rsc->children, (GFunc) setup_container, data_set);
rsc               613 lib/pengine/unpack.c     container_id = g_hash_table_lookup(rsc->meta, XML_RSC_ATTR_CONTAINER);
rsc               614 lib/pengine/unpack.c     if (container_id && !pcmk__str_eq(container_id, rsc->id, pcmk__str_casei)) {
rsc               618 lib/pengine/unpack.c             rsc->container = container;
rsc               620 lib/pengine/unpack.c             container->fillers = g_list_append(container->fillers, rsc);
rsc               621 lib/pengine/unpack.c             pe_rsc_trace(rsc, "Resource %s's container is %s", rsc->id, container_id);
rsc               623 lib/pengine/unpack.c             pe_err("Resource %s: Unknown resource container (%s)", rsc->id, container_id);
rsc               805 lib/pengine/unpack.c         pe_resource_t *rsc = (pe_resource_t *) gIter->data;
rsc               807 lib/pengine/unpack.c         setup_container(rsc, data_set);
rsc               808 lib/pengine/unpack.c         link_rsc2remotenode(data_set, rsc);
rsc               965 lib/pengine/unpack.c     pe_resource_t *rsc = NULL;
rsc               979 lib/pengine/unpack.c     rsc = this_node->details->remote_rsc;
rsc               998 lib/pengine/unpack.c         ((rsc != NULL) && !pcmk_is_set(rsc->flags, pe_rsc_managed))) {
rsc              1190 lib/pengine/unpack.c             pe_resource_t *rsc = this_node->details->remote_rsc;
rsc              1192 lib/pengine/unpack.c             if ((rsc == NULL) || (rsc->role != RSC_ROLE_STARTED)
rsc              1193 lib/pengine/unpack.c                 || (rsc->container->role != RSC_ROLE_STARTED)) {
rsc              1206 lib/pengine/unpack.c             pe_resource_t *rsc = this_node->details->remote_rsc;
rsc              1208 lib/pengine/unpack.c             if ((rsc == NULL)
rsc              1210 lib/pengine/unpack.c                     && (rsc->role != RSC_ROLE_STARTED))) {
rsc              1455 lib/pengine/unpack.c     pe_resource_t *rsc = this_node->details->remote_rsc;
rsc              1463 lib/pengine/unpack.c     if (rsc == NULL) {
rsc              1468 lib/pengine/unpack.c     container = rsc->container;
rsc              1470 lib/pengine/unpack.c     if (container && pcmk__list_of_1(rsc->running_on)) {
rsc              1471 lib/pengine/unpack.c         host = rsc->running_on->data;
rsc              1475 lib/pengine/unpack.c     if (rsc->role == RSC_ROLE_STARTED) {
rsc              1482 lib/pengine/unpack.c     if (rsc->role == RSC_ROLE_STARTED && rsc->next_role == RSC_ROLE_STOPPED) {
rsc              1495 lib/pengine/unpack.c     } else if (pcmk_is_set(rsc->flags, pe_rsc_failed)) {
rsc              1500 lib/pengine/unpack.c     } else if (rsc->role == RSC_ROLE_STOPPED
rsc              1675 lib/pengine/unpack.c     pe_resource_t *rsc = NULL;
rsc              1682 lib/pengine/unpack.c     if (!common_unpack(xml_rsc, &rsc, NULL, data_set)) {
rsc              1694 lib/pengine/unpack.c         link_rsc2remotenode(data_set, rsc);
rsc              1705 lib/pengine/unpack.c         pe__set_resource_flags(rsc, pe_rsc_orphan_container_filler);
rsc              1707 lib/pengine/unpack.c     pe__set_resource_flags(rsc, pe_rsc_orphan);
rsc              1708 lib/pengine/unpack.c     data_set->resources = g_list_append(data_set->resources, rsc);
rsc              1709 lib/pengine/unpack.c     return rsc;
rsc              1749 lib/pengine/unpack.c     pe_resource_t *rsc = NULL;
rsc              1759 lib/pengine/unpack.c     for (rIter = parent->children; rsc == NULL && rIter; rIter = rIter->next) {
rsc              1794 lib/pengine/unpack.c                 rsc = parent->fns->find_rsc(child, rsc_id, NULL, pe_find_clone);
rsc              1795 lib/pengine/unpack.c                 if (rsc) {
rsc              1803 lib/pengine/unpack.c                     if (rsc->running_on) {
rsc              1808 lib/pengine/unpack.c                         rsc = NULL;
rsc              1810 lib/pengine/unpack.c                         pe_rsc_trace(parent, "Resource %s, active", rsc->id);
rsc              1835 lib/pengine/unpack.c     if ((rsc == NULL) && !skip_inactive && (inactive_instance != NULL)) {
rsc              1837 lib/pengine/unpack.c         rsc = inactive_instance;
rsc              1852 lib/pengine/unpack.c     if ((rsc != NULL) && !pcmk_is_set(rsc->flags, pe_rsc_needs_fencing)
rsc              1857 lib/pengine/unpack.c         rsc = NULL;
rsc              1860 lib/pengine/unpack.c     if (rsc == NULL) {
rsc              1861 lib/pengine/unpack.c         rsc = create_anonymous_orphan(parent, rsc_id, node, data_set);
rsc              1862 lib/pengine/unpack.c         pe_rsc_trace(parent, "Resource %s, orphan", rsc->id);
rsc              1864 lib/pengine/unpack.c     return rsc;
rsc              1871 lib/pengine/unpack.c     pe_resource_t *rsc = NULL;
rsc              1875 lib/pengine/unpack.c     rsc = pe_find_resource(data_set->resources, rsc_id);
rsc              1877 lib/pengine/unpack.c     if (rsc == NULL) {
rsc              1886 lib/pengine/unpack.c             rsc = clone0;
rsc              1895 lib/pengine/unpack.c     } else if (rsc->variant > pe_native) {
rsc              1901 lib/pengine/unpack.c         parent = uber_parent(rsc);
rsc              1907 lib/pengine/unpack.c             rsc = pe__find_bundle_replica(parent->parent, node);
rsc              1911 lib/pengine/unpack.c             rsc = find_anonymous_clone(data_set, node, parent, base);
rsc              1913 lib/pengine/unpack.c             CRM_ASSERT(rsc != NULL);
rsc              1917 lib/pengine/unpack.c     if (rsc && !pcmk__str_eq(rsc_id, rsc->id, pcmk__str_casei)
rsc              1918 lib/pengine/unpack.c         && !pcmk__str_eq(rsc_id, rsc->clone_name, pcmk__str_casei)) {
rsc              1920 lib/pengine/unpack.c         pcmk__str_update(&rsc->clone_name, rsc_id);
rsc              1921 lib/pengine/unpack.c         pe_rsc_debug(rsc, "Internally renamed %s on %s to %s%s",
rsc              1922 lib/pengine/unpack.c                      rsc_id, node->details->uname, rsc->id,
rsc              1923 lib/pengine/unpack.c                      (pcmk_is_set(rsc->flags, pe_rsc_orphan)? " (ORPHAN)" : ""));
rsc              1925 lib/pengine/unpack.c     return rsc;
rsc              1931 lib/pengine/unpack.c     pe_resource_t *rsc = NULL;
rsc              1935 lib/pengine/unpack.c     rsc = create_fake_resource(rsc_id, rsc_entry, data_set);
rsc              1936 lib/pengine/unpack.c     if (rsc == NULL) {
rsc              1941 lib/pengine/unpack.c         pe__clear_resource_flags(rsc, pe_rsc_managed);
rsc              1944 lib/pengine/unpack.c         CRM_CHECK(rsc != NULL, return NULL);
rsc              1945 lib/pengine/unpack.c         pe_rsc_trace(rsc, "Added orphan %s", rsc->id);
rsc              1946 lib/pengine/unpack.c         resource_location(rsc, NULL, -INFINITY, "__orphan_do_not_run__", data_set);
rsc              1948 lib/pengine/unpack.c     return rsc;
rsc              1952 lib/pengine/unpack.c process_rsc_state(pe_resource_t * rsc, pe_node_t * node,
rsc              1960 lib/pengine/unpack.c     CRM_ASSERT(rsc);
rsc              1961 lib/pengine/unpack.c     pe_rsc_trace(rsc, "Resource %s is %s on %s: on_fail=%s",
rsc              1962 lib/pengine/unpack.c                  rsc->id, role2text(rsc->role), node->details->uname, fail2text(on_fail));
rsc              1965 lib/pengine/unpack.c     if (rsc->role != RSC_ROLE_UNKNOWN) {
rsc              1966 lib/pengine/unpack.c         pe_resource_t *iter = rsc;
rsc              1972 lib/pengine/unpack.c                 pe_rsc_trace(rsc, "%s%s%s known on %s",
rsc              1973 lib/pengine/unpack.c                              rsc->id,
rsc              1974 lib/pengine/unpack.c                              ((rsc->clone_name == NULL)? "" : " also known as "),
rsc              1975 lib/pengine/unpack.c                              ((rsc->clone_name == NULL)? "" : rsc->clone_name),
rsc              1987 lib/pengine/unpack.c     if (rsc->role > RSC_ROLE_STOPPED
rsc              1990 lib/pengine/unpack.c         && pcmk_is_set(rsc->flags, pe_rsc_managed)) {
rsc              2002 lib/pengine/unpack.c             pe__set_resource_flags(rsc, pe_rsc_failed|pe_rsc_stop);
rsc              2019 lib/pengine/unpack.c                                            rsc->id);
rsc              2026 lib/pengine/unpack.c                reason = crm_strdup_printf("%s is thought to be active there", rsc->id);
rsc              2049 lib/pengine/unpack.c             pe__set_resource_flags(rsc, pe_rsc_failed);
rsc              2050 lib/pengine/unpack.c             demote_action(rsc, node, FALSE);
rsc              2057 lib/pengine/unpack.c             reason = crm_strdup_printf("%s failed there", rsc->id);
rsc              2071 lib/pengine/unpack.c             pe__clear_resource_flags(rsc, pe_rsc_managed);
rsc              2072 lib/pengine/unpack.c             pe__set_resource_flags(rsc, pe_rsc_block);
rsc              2079 lib/pengine/unpack.c             resource_location(rsc, node, -INFINITY, "__action_migration_auto__", data_set);
rsc              2083 lib/pengine/unpack.c             pe__set_next_role(rsc, RSC_ROLE_STOPPED, "on-fail=stop");
rsc              2087 lib/pengine/unpack.c             if (rsc->role != RSC_ROLE_STOPPED && rsc->role != RSC_ROLE_UNKNOWN) {
rsc              2088 lib/pengine/unpack.c                 pe__set_resource_flags(rsc, pe_rsc_failed|pe_rsc_stop);
rsc              2089 lib/pengine/unpack.c                 stop_action(rsc, node, FALSE);
rsc              2094 lib/pengine/unpack.c             pe__set_resource_flags(rsc, pe_rsc_failed|pe_rsc_stop);
rsc              2095 lib/pengine/unpack.c             if (rsc->container && pe_rsc_is_bundled(rsc)) {
rsc              2102 lib/pengine/unpack.c                                                        rsc->container);
rsc              2103 lib/pengine/unpack.c             } else if (rsc->container) {
rsc              2104 lib/pengine/unpack.c                 stop_action(rsc->container, node, FALSE);
rsc              2105 lib/pengine/unpack.c             } else if (rsc->role != RSC_ROLE_STOPPED && rsc->role != RSC_ROLE_UNKNOWN) {
rsc              2106 lib/pengine/unpack.c                 stop_action(rsc, node, FALSE);
rsc              2111 lib/pengine/unpack.c             pe__set_resource_flags(rsc, pe_rsc_failed|pe_rsc_stop);
rsc              2114 lib/pengine/unpack.c                 if (rsc->is_remote_node) {
rsc              2115 lib/pengine/unpack.c                     tmpnode = pe_find_node(data_set->nodes, rsc->id);
rsc              2130 lib/pengine/unpack.c             if (rsc->role > RSC_ROLE_STOPPED) {
rsc              2131 lib/pengine/unpack.c                 stop_action(rsc, node, FALSE);
rsc              2136 lib/pengine/unpack.c             if (rsc->remote_reconnect_ms) {
rsc              2137 lib/pengine/unpack.c                 pe__set_next_role(rsc, RSC_ROLE_STOPPED, "remote reset");
rsc              2146 lib/pengine/unpack.c     if (pcmk_is_set(rsc->flags, pe_rsc_failed) && rsc->is_remote_node) {
rsc              2147 lib/pengine/unpack.c         tmpnode = pe_find_node(data_set->nodes, rsc->id);
rsc              2153 lib/pengine/unpack.c     if (rsc->role != RSC_ROLE_STOPPED && rsc->role != RSC_ROLE_UNKNOWN) {
rsc              2154 lib/pengine/unpack.c         if (pcmk_is_set(rsc->flags, pe_rsc_orphan)) {
rsc              2155 lib/pengine/unpack.c             if (pcmk_is_set(rsc->flags, pe_rsc_managed)) {
rsc              2157 lib/pengine/unpack.c                                   rsc->id, node->details->uname);
rsc              2162 lib/pengine/unpack.c                                   rsc->id, node->details->uname);
rsc              2166 lib/pengine/unpack.c         native_add_running(rsc, node, data_set, (save_on_fail != action_fail_ignore));
rsc              2172 lib/pengine/unpack.c                 pe__set_resource_flags(rsc, pe_rsc_failed);
rsc              2175 lib/pengine/unpack.c                 pe__set_resource_flags(rsc, pe_rsc_failed|pe_rsc_stop);
rsc              2179 lib/pengine/unpack.c     } else if (rsc->clone_name && strchr(rsc->clone_name, ':') != NULL) {
rsc              2183 lib/pengine/unpack.c         pe_rsc_trace(rsc, "Resetting clone_name %s for %s (stopped)", rsc->clone_name, rsc->id);
rsc              2184 lib/pengine/unpack.c         free(rsc->clone_name);
rsc              2185 lib/pengine/unpack.c         rsc->clone_name = NULL;
rsc              2188 lib/pengine/unpack.c         GList *possible_matches = pe__resource_actions(rsc, node, RSC_STOP,
rsc              2204 lib/pengine/unpack.c process_recurring(pe_node_t * node, pe_resource_t * rsc,
rsc              2213 lib/pengine/unpack.c     CRM_ASSERT(rsc);
rsc              2214 lib/pengine/unpack.c     pe_rsc_trace(rsc, "%s: Start index %d, stop index = %d", rsc->id, start_index, stop_index);
rsc              2226 lib/pengine/unpack.c             pe_rsc_trace(rsc, "Skipping %s/%s: node is offline", rsc->id, node->details->uname);
rsc              2231 lib/pengine/unpack.c             pe_rsc_trace(rsc, "Skipping %s/%s: resource is not active", id, node->details->uname);
rsc              2235 lib/pengine/unpack.c             pe_rsc_trace(rsc, "Skipping %s/%s: old %d", id, node->details->uname, counter);
rsc              2241 lib/pengine/unpack.c             pe_rsc_trace(rsc, "Skipping %s/%s: non-recurring", id, node->details->uname);
rsc              2247 lib/pengine/unpack.c             pe_rsc_trace(rsc, "Skipping %s/%s: status", id, node->details->uname);
rsc              2252 lib/pengine/unpack.c         key = pcmk__op_key(rsc->id, task, interval_ms);
rsc              2253 lib/pengine/unpack.c         pe_rsc_trace(rsc, "Creating %s/%s", key, node->details->uname);
rsc              2254 lib/pengine/unpack.c         custom_action(rsc, key, task, node, TRUE, TRUE, data_set);
rsc              2308 lib/pengine/unpack.c unpack_shutdown_lock(xmlNode *rsc_entry, pe_resource_t *rsc, pe_node_t *node,
rsc              2319 lib/pengine/unpack.c             pe_rsc_info(rsc, "Shutdown lock for %s on %s expired",
rsc              2320 lib/pengine/unpack.c                         rsc->id, node->details->uname);
rsc              2321 lib/pengine/unpack.c             pe__clear_resource_history(rsc, node, data_set);
rsc              2323 lib/pengine/unpack.c             rsc->lock_node = node;
rsc              2324 lib/pengine/unpack.c             rsc->lock_time = lock_time;
rsc              2351 lib/pengine/unpack.c     pe_resource_t *rsc = NULL;
rsc              2385 lib/pengine/unpack.c     rsc = unpack_find_resource(data_set, node, rsc_id, lrm_resource);
rsc              2386 lib/pengine/unpack.c     if (rsc == NULL) {
rsc              2391 lib/pengine/unpack.c             rsc = process_orphan_resource(lrm_resource, node, data_set);
rsc              2394 lib/pengine/unpack.c     CRM_ASSERT(rsc != NULL);
rsc              2398 lib/pengine/unpack.c         unpack_shutdown_lock(lrm_resource, rsc, node, data_set);
rsc              2402 lib/pengine/unpack.c     saved_role = rsc->role;
rsc              2403 lib/pengine/unpack.c     rsc->role = RSC_ROLE_UNKNOWN;
rsc              2414 lib/pengine/unpack.c         unpack_rsc_op(rsc, node, rsc_op, &last_failure, &on_fail, data_set);
rsc              2419 lib/pengine/unpack.c     process_recurring(node, rsc, start_index, stop_index, sorted_op_list, data_set);
rsc              2424 lib/pengine/unpack.c     process_rsc_state(rsc, node, on_fail, migrate_op, data_set);
rsc              2426 lib/pengine/unpack.c     if (get_target_role(rsc, &req_role)) {
rsc              2427 lib/pengine/unpack.c         if (rsc->next_role == RSC_ROLE_UNKNOWN || req_role < rsc->next_role) {
rsc              2428 lib/pengine/unpack.c             pe__set_next_role(rsc, req_role, XML_RSC_ATTR_TARGET_ROLE);
rsc              2430 lib/pengine/unpack.c         } else if (req_role > rsc->next_role) {
rsc              2431 lib/pengine/unpack.c             pe_rsc_info(rsc, "%s: Not overwriting calculated next role %s"
rsc              2433 lib/pengine/unpack.c                         rsc->id, role2text(rsc->next_role), role2text(req_role));
rsc              2437 lib/pengine/unpack.c     if (saved_role > rsc->role) {
rsc              2438 lib/pengine/unpack.c         rsc->role = saved_role;
rsc              2441 lib/pengine/unpack.c     return rsc;
rsc              2451 lib/pengine/unpack.c         pe_resource_t *rsc;
rsc              2471 lib/pengine/unpack.c         rsc = pe_find_resource(data_set->resources, rsc_id);
rsc              2472 lib/pengine/unpack.c         if (rsc == NULL ||
rsc              2473 lib/pengine/unpack.c             !pcmk_is_set(rsc->flags, pe_rsc_orphan_container_filler) ||
rsc              2474 lib/pengine/unpack.c             rsc->container != NULL) {
rsc              2478 lib/pengine/unpack.c         pe_rsc_trace(rsc, "Mapped container of orphaned resource %s to %s",
rsc              2479 lib/pengine/unpack.c                      rsc->id, container_id);
rsc              2480 lib/pengine/unpack.c         rsc->container = container;
rsc              2481 lib/pengine/unpack.c         container->fillers = g_list_append(container->fillers, rsc);
rsc              2512 lib/pengine/unpack.c         pe_resource_t *rsc = unpack_lrm_resource(node, rsc_entry, data_set);
rsc              2514 lib/pengine/unpack.c         if ((rsc != NULL)
rsc              2515 lib/pengine/unpack.c             && pcmk_is_set(rsc->flags, pe_rsc_orphan_container_filler)) {
rsc              2529 lib/pengine/unpack.c set_active(pe_resource_t * rsc)
rsc              2531 lib/pengine/unpack.c     pe_resource_t *top = uber_parent(rsc);
rsc              2534 lib/pengine/unpack.c         rsc->role = RSC_ROLE_UNPROMOTED;
rsc              2536 lib/pengine/unpack.c         rsc->role = RSC_ROLE_STARTED;
rsc              2624 lib/pengine/unpack.c stop_happened_after(pe_resource_t *rsc, pe_node_t *node, xmlNode *xml_op,
rsc              2627 lib/pengine/unpack.c     xmlNode *stop_op = find_lrm_op(rsc->id, CRMD_ACTION_STOP,
rsc              2634 lib/pengine/unpack.c unpack_migrate_to_success(pe_resource_t *rsc, pe_node_t *node, xmlNode *xml_op,
rsc              2665 lib/pengine/unpack.c     if (stop_happened_after(rsc, node, xml_op, data_set)) {
rsc              2670 lib/pengine/unpack.c     rsc->role = RSC_ROLE_STARTED;
rsc              2676 lib/pengine/unpack.c     migrate_from = find_lrm_op(rsc->id, CRMD_ACTION_MIGRATED, target,
rsc              2681 lib/pengine/unpack.c         pe_rsc_trace(rsc, "%s op on %s exited with status=%d, rc=%d",
rsc              2691 lib/pengine/unpack.c         pe_rsc_trace(rsc, "Detected dangling migration op: %s on %s", ID(xml_op),
rsc              2693 lib/pengine/unpack.c         rsc->role = RSC_ROLE_STOPPED;
rsc              2694 lib/pengine/unpack.c         rsc->dangling_migrations = g_list_prepend(rsc->dangling_migrations, node);
rsc              2698 lib/pengine/unpack.c             pe_rsc_trace(rsc, "Marking active on %s %p %d", target, target_node,
rsc              2700 lib/pengine/unpack.c             native_add_running(rsc, target_node, data_set, TRUE);
rsc              2705 lib/pengine/unpack.c             pe_rsc_trace(rsc, "Marking active on %s %p %d", target, target_node,
rsc              2708 lib/pengine/unpack.c             native_add_running(rsc, target_node, data_set, FALSE);
rsc              2716 lib/pengine/unpack.c                 rsc->partial_migration_target = target_node;
rsc              2717 lib/pengine/unpack.c                 rsc->partial_migration_source = source_node;
rsc              2721 lib/pengine/unpack.c             pe__set_resource_flags(rsc, pe_rsc_failed|pe_rsc_stop);
rsc              2722 lib/pengine/unpack.c             pe__clear_resource_flags(rsc, pe_rsc_allow_migrate);
rsc              2729 lib/pengine/unpack.c newer_op(pe_resource_t *rsc, const char *action_name, const char *node_name,
rsc              2732 lib/pengine/unpack.c     xmlNode *action = find_lrm_op(rsc->id, action_name, node_name, NULL, TRUE,
rsc              2739 lib/pengine/unpack.c unpack_migrate_to_failure(pe_resource_t *rsc, pe_node_t *node, xmlNode *xml_op,
rsc              2755 lib/pengine/unpack.c     rsc->role = RSC_ROLE_STARTED;
rsc              2758 lib/pengine/unpack.c     target_stop = find_lrm_op(rsc->id, CRMD_ACTION_STOP, target, NULL,
rsc              2763 lib/pengine/unpack.c     target_migrate_from = find_lrm_op(rsc->id, CRMD_ACTION_MIGRATED, target,
rsc              2774 lib/pengine/unpack.c         pe_rsc_trace(rsc, "stop (%d) + migrate_from (%d)",
rsc              2777 lib/pengine/unpack.c             native_add_running(rsc, target_node, data_set, FALSE);
rsc              2793 lib/pengine/unpack.c         if (newer_op(rsc, CRMD_ACTION_MIGRATED, source, source_migrate_to_id,
rsc              2795 lib/pengine/unpack.c             || newer_op(rsc, CRMD_ACTION_START, source, source_migrate_to_id,
rsc              2797 lib/pengine/unpack.c             || newer_op(rsc, CRMD_ACTION_STOP, source, source_migrate_to_id,
rsc              2803 lib/pengine/unpack.c         rsc->dangling_migrations = g_list_prepend(rsc->dangling_migrations, node);
rsc              2808 lib/pengine/unpack.c unpack_migrate_from_failure(pe_resource_t *rsc, pe_node_t *node,
rsc              2822 lib/pengine/unpack.c     rsc->role = RSC_ROLE_STARTED;
rsc              2825 lib/pengine/unpack.c     source_stop = find_lrm_op(rsc->id, CRMD_ACTION_STOP, source, NULL,
rsc              2829 lib/pengine/unpack.c     source_migrate_to = find_lrm_op(rsc->id, CRMD_ACTION_MIGRATE,
rsc              2841 lib/pengine/unpack.c             native_add_running(rsc, source_node, data_set, TRUE);
rsc              2848 lib/pengine/unpack.c                  const pe_resource_t *rsc, pe_working_set_t *data_set)
rsc              2869 lib/pengine/unpack.c     crm_xml_add(op, XML_LRM_ATTR_RSCID, rsc->id);
rsc              2993 lib/pengine/unpack.c unpack_rsc_op_failure(pe_resource_t * rsc, pe_node_t * node, int rc, xmlNode * xml_op, xmlNode ** last_failure,
rsc              3004 lib/pengine/unpack.c     CRM_ASSERT(rsc);
rsc              3021 lib/pengine/unpack.c                   (is_probe? "probe" : task), rsc->id, node->details->uname,
rsc              3028 lib/pengine/unpack.c                  (is_probe? "probe" : task), rsc->id, node->details->uname,
rsc              3040 lib/pengine/unpack.c                        rsc->id, node->details->uname);
rsc              3043 lib/pengine/unpack.c         record_failed_op(xml_op, node, rsc, data_set);
rsc              3046 lib/pengine/unpack.c     action = custom_action(rsc, strdup(key), task, NULL, TRUE, FALSE, data_set);
rsc              3048 lib/pengine/unpack.c         pe_rsc_trace(rsc, "on-fail %s -> %s for %s (%s)", fail2text(*on_fail),
rsc              3054 lib/pengine/unpack.c         resource_location(rsc, node, -INFINITY, "__stop_fail__", data_set);
rsc              3057 lib/pengine/unpack.c         unpack_migrate_to_failure(rsc, node, xml_op, data_set);
rsc              3060 lib/pengine/unpack.c         unpack_migrate_from_failure(rsc, node, xml_op, data_set);
rsc              3063 lib/pengine/unpack.c         rsc->role = RSC_ROLE_PROMOTED;
rsc              3067 lib/pengine/unpack.c             rsc->role = RSC_ROLE_PROMOTED;
rsc              3068 lib/pengine/unpack.c             pe__set_next_role(rsc, RSC_ROLE_STOPPED,
rsc              3072 lib/pengine/unpack.c             rsc->role = RSC_ROLE_STOPPED;
rsc              3080 lib/pengine/unpack.c             rsc->role = RSC_ROLE_UNPROMOTED;
rsc              3086 lib/pengine/unpack.c         pe_rsc_trace(rsc, "Leaving %s stopped", rsc->id);
rsc              3087 lib/pengine/unpack.c         rsc->role = RSC_ROLE_STOPPED;
rsc              3089 lib/pengine/unpack.c     } else if (rsc->role < RSC_ROLE_STARTED) {
rsc              3090 lib/pengine/unpack.c         pe_rsc_trace(rsc, "Setting %s active", rsc->id);
rsc              3091 lib/pengine/unpack.c         set_active(rsc);
rsc              3094 lib/pengine/unpack.c     pe_rsc_trace(rsc, "Resource %s: role=%s, unclean=%s, on_fail=%s, fail_role=%s",
rsc              3095 lib/pengine/unpack.c                  rsc->id, role2text(rsc->role),
rsc              3099 lib/pengine/unpack.c     if (action->fail_role != RSC_ROLE_STARTED && rsc->next_role < action->fail_role) {
rsc              3100 lib/pengine/unpack.c         pe__set_next_role(rsc, action->fail_role, "failure");
rsc              3106 lib/pengine/unpack.c         pe_resource_t *fail_rsc = rsc;
rsc              3160 lib/pengine/unpack.c remap_operation(xmlNode *xml_op, pe_resource_t *rsc, pe_node_t *node,
rsc              3175 lib/pengine/unpack.c                 record_failed_op(xml_op, node, rsc, data_set);
rsc              3182 lib/pengine/unpack.c     if (!pe_rsc_is_bundled(rsc) && pcmk_xe_mask_probe_failure(xml_op)) {
rsc              3196 lib/pengine/unpack.c     CRM_ASSERT(rsc);
rsc              3227 lib/pengine/unpack.c         pe_rsc_debug(rsc, "%s on %s: expected %d (%s), got %d (%s%s%s)",
rsc              3238 lib/pengine/unpack.c                 pe_rsc_info(rsc, "Probe found %s active on %s at %s",
rsc              3239 lib/pengine/unpack.c                             rsc->id, node->details->uname,
rsc              3246 lib/pengine/unpack.c                 || !pcmk_is_set(rsc->flags, pe_rsc_managed)) {
rsc              3249 lib/pengine/unpack.c                 rsc->role = RSC_ROLE_STOPPED;
rsc              3253 lib/pengine/unpack.c                 pe__set_next_role(rsc, RSC_ROLE_UNKNOWN, "not running");
rsc              3260 lib/pengine/unpack.c                 pe_rsc_info(rsc,
rsc              3262 lib/pengine/unpack.c                             rsc->id, node->details->uname,
rsc              3265 lib/pengine/unpack.c             rsc->role = RSC_ROLE_PROMOTED;
rsc              3270 lib/pengine/unpack.c             rsc->role = RSC_ROLE_PROMOTED;
rsc              3297 lib/pengine/unpack.c                             CRM_XS " rc=%d id=%s", rsc->id, task,
rsc              3301 lib/pengine/unpack.c                 pe__clear_resource_flags(rsc, pe_rsc_managed);
rsc              3302 lib/pengine/unpack.c                 pe__set_resource_flags(rsc, pe_rsc_block);
rsc              3311 lib/pengine/unpack.c                          *rc, task, rsc->id, node->details->uname,
rsc              3318 lib/pengine/unpack.c     pe_rsc_trace(rsc, "Remapped %s status to '%s'",
rsc              3325 lib/pengine/unpack.c                               pe_resource_t *rsc, pe_node_t *node,
rsc              3330 lib/pengine/unpack.c         if (pe__bundle_needs_remote_name(rsc, data_set)) {
rsc              3335 lib/pengine/unpack.c             pe__add_param_check(xml_op, rsc, node, pe_check_last_failure,
rsc              3341 lib/pengine/unpack.c             digest_data = rsc_action_digest_cmp(rsc, xml_op, node, data_set);
rsc              3346 lib/pengine/unpack.c                               rsc->id, get_op_key(xml_op), node->details->id);
rsc              3374 lib/pengine/unpack.c should_ignore_failure_timeout(pe_resource_t *rsc, xmlNode *xml_op,
rsc              3398 lib/pengine/unpack.c     if (rsc->remote_reconnect_ms
rsc              3402 lib/pengine/unpack.c         pe_node_t *remote_node = pe_find_node(data_set->nodes, rsc->id);
rsc              3407 lib/pengine/unpack.c                          " until fencing has occurred", rsc->id);
rsc              3438 lib/pengine/unpack.c check_operation_expiry(pe_resource_t *rsc, pe_node_t *node, int rc,
rsc              3451 lib/pengine/unpack.c     if ((rsc->failure_timeout > 0)
rsc              3461 lib/pengine/unpack.c         if ((now >= (last_run + rsc->failure_timeout))
rsc              3462 lib/pengine/unpack.c             && !should_ignore_failure_timeout(rsc, xml_op, task, interval_ms,
rsc              3468 lib/pengine/unpack.c         unexpired_fail_count = pe_get_failcount(node, rsc, &last_failure,
rsc              3476 lib/pengine/unpack.c                   (long long) now, unexpired_fail_count, rsc->failure_timeout,
rsc              3478 lib/pengine/unpack.c         last_failure += rsc->failure_timeout + 1;
rsc              3485 lib/pengine/unpack.c         if (pe_get_failcount(node, rsc, NULL, pe_fc_default, xml_op, data_set)) {
rsc              3503 lib/pengine/unpack.c         } else if (is_last_failure && rsc->remote_reconnect_ms) {
rsc              3512 lib/pengine/unpack.c         && should_clear_for_param_change(xml_op, task, rsc, node, data_set)) {
rsc              3518 lib/pengine/unpack.c         pe_action_t *clear_op = pe__clear_failcount(rsc, node, clear_reason,
rsc              3522 lib/pengine/unpack.c             && rsc->remote_reconnect_ms) {
rsc              3532 lib/pengine/unpack.c                      "fencing of %s completes", task, rsc->id);
rsc              3533 lib/pengine/unpack.c             order_after_remote_fencing(clear_op, rsc, data_set);
rsc              3566 lib/pengine/unpack.c get_action_on_fail(pe_resource_t *rsc, const char *key, const char *task, pe_working_set_t * data_set) 
rsc              3569 lib/pengine/unpack.c     pe_action_t *action = custom_action(rsc, strdup(key), task, NULL, TRUE, FALSE, data_set);
rsc              3578 lib/pengine/unpack.c update_resource_state(pe_resource_t * rsc, pe_node_t * node, xmlNode * xml_op, const char * task, int rc,
rsc              3583 lib/pengine/unpack.c     CRM_ASSERT(rsc);
rsc              3586 lib/pengine/unpack.c     if (rc == PCMK_OCF_NOT_INSTALLED || (!pe_rsc_is_bundled(rsc) && pcmk_xe_mask_probe_failure(xml_op))) {
rsc              3587 lib/pengine/unpack.c         rsc->role = RSC_ROLE_STOPPED;
rsc              3602 lib/pengine/unpack.c         if (rsc->role < RSC_ROLE_STARTED) {
rsc              3603 lib/pengine/unpack.c             set_active(rsc);
rsc              3607 lib/pengine/unpack.c         rsc->role = RSC_ROLE_STARTED;
rsc              3611 lib/pengine/unpack.c         rsc->role = RSC_ROLE_STOPPED;
rsc              3615 lib/pengine/unpack.c         rsc->role = RSC_ROLE_PROMOTED;
rsc              3624 lib/pengine/unpack.c         rsc->role = RSC_ROLE_UNPROMOTED;
rsc              3627 lib/pengine/unpack.c         rsc->role = RSC_ROLE_STARTED;
rsc              3631 lib/pengine/unpack.c         unpack_migrate_to_success(rsc, node, xml_op, data_set);
rsc              3633 lib/pengine/unpack.c     } else if (rsc->role < RSC_ROLE_STARTED) {
rsc              3634 lib/pengine/unpack.c         pe_rsc_trace(rsc, "%s active on %s", rsc->id, node->details->uname);
rsc              3635 lib/pengine/unpack.c         set_active(rsc);
rsc              3645 lib/pengine/unpack.c                 pe_rsc_trace(rsc, "%s.%s is not cleared by a completed stop",
rsc              3646 lib/pengine/unpack.c                              rsc->id, fail2text(*on_fail));
rsc              3655 lib/pengine/unpack.c                 pe__set_next_role(rsc, RSC_ROLE_UNKNOWN, "clear past failures");
rsc              3658 lib/pengine/unpack.c                 if (rsc->remote_reconnect_ms == 0) {
rsc              3666 lib/pengine/unpack.c                     pe__set_next_role(rsc, RSC_ROLE_UNKNOWN,
rsc              3675 lib/pengine/unpack.c unpack_rsc_op(pe_resource_t *rsc, pe_node_t *node, xmlNode *xml_op,
rsc              3690 lib/pengine/unpack.c     pe_resource_t *parent = rsc;
rsc              3694 lib/pengine/unpack.c     CRM_CHECK(rsc && node && xml_op, return);
rsc              3719 lib/pengine/unpack.c     if (!pcmk_is_set(rsc->flags, pe_rsc_unique)) {
rsc              3720 lib/pengine/unpack.c         parent = uber_parent(rsc);
rsc              3723 lib/pengine/unpack.c     pe_rsc_trace(rsc, "Unpacking task %s/%s (call_id=%d, status=%d, rc=%d) on %s (role=%s)",
rsc              3724 lib/pengine/unpack.c                  task_key, task, task_id, status, rc, node->details->uname, role2text(rsc->role));
rsc              3727 lib/pengine/unpack.c         pe_rsc_trace(rsc, "Node %s (where %s is running) is unclean."
rsc              3729 lib/pengine/unpack.c                      node->details->uname, rsc->id);
rsc              3745 lib/pengine/unpack.c         && check_operation_expiry(rsc, node, rc, xml_op, data_set)) {
rsc              3752 lib/pengine/unpack.c     remap_operation(xml_op, rsc, node, data_set, on_fail, target_rc,
rsc              3755 lib/pengine/unpack.c     maskable_probe_failure = !pe_rsc_is_bundled(rsc) && pcmk_xe_mask_probe_failure(xml_op);
rsc              3758 lib/pengine/unpack.c         if (rsc->role <= RSC_ROLE_STOPPED) {
rsc              3759 lib/pengine/unpack.c             rsc->role = RSC_ROLE_UNKNOWN;
rsc              3794 lib/pengine/unpack.c                    services_ocf_exitcode_str(old_rc), rsc->id, node->details->uname);
rsc              3795 lib/pengine/unpack.c         update_resource_state(rsc, node, xml_op, task, target_rc, *last_failure,
rsc              3799 lib/pengine/unpack.c         record_failed_op(xml_op, node, rsc, data_set);
rsc              3809 lib/pengine/unpack.c                    ID(xml_op), task, rsc->id, node->details->uname,
rsc              3815 lib/pengine/unpack.c                 pe__set_resource_flags(rsc, pe_rsc_start_pending);
rsc              3816 lib/pengine/unpack.c                 set_active(rsc);
rsc              3819 lib/pengine/unpack.c                 rsc->role = RSC_ROLE_PROMOTED;
rsc              3827 lib/pengine/unpack.c                     stop_action(rsc, target, FALSE);
rsc              3831 lib/pengine/unpack.c             if (rsc->pending_task == NULL) {
rsc              3833 lib/pengine/unpack.c                     rsc->pending_task = strdup(task);
rsc              3834 lib/pengine/unpack.c                     rsc->pending_node = node;
rsc              3842 lib/pengine/unpack.c                     rsc->pending_task = strdup("probe");
rsc              3843 lib/pengine/unpack.c                     rsc->pending_node = node;
rsc              3850 lib/pengine/unpack.c             pe_rsc_trace(rsc, "%s of %s on %s completed at %s " CRM_XS " id=%s",
rsc              3851 lib/pengine/unpack.c                          task, rsc->id, node->details->uname,
rsc              3853 lib/pengine/unpack.c             update_resource_state(rsc, node, xml_op, task, rc, *last_failure, on_fail, data_set);
rsc              3857 lib/pengine/unpack.c             failure_strategy = get_action_on_fail(rsc, task_key, task, data_set);
rsc              3862 lib/pengine/unpack.c                          task, rsc->id, node->details->uname, status, rc,
rsc              3868 lib/pengine/unpack.c             unpack_rsc_op_failure(rsc, node, rc, xml_op, last_failure, on_fail, data_set);
rsc              3899 lib/pengine/unpack.c     failure_strategy = get_action_on_fail(rsc, task_key, task, data_set);
rsc              3907 lib/pengine/unpack.c                  (*exit_reason? ": " : ""), exit_reason, rsc->id,
rsc              3911 lib/pengine/unpack.c         update_resource_state(rsc, node, xml_op, task, target_rc, *last_failure,
rsc              3914 lib/pengine/unpack.c         pe__set_resource_flags(rsc, pe_rsc_failure_ignored);
rsc              3916 lib/pengine/unpack.c         record_failed_op(xml_op, node, rsc, data_set);
rsc              3924 lib/pengine/unpack.c         unpack_rsc_op_failure(rsc, node, rc, xml_op, last_failure, on_fail,
rsc              3948 lib/pengine/unpack.c     pe_rsc_trace(rsc, "Resource %s after %s: role=%s, next=%s",
rsc              3949 lib/pengine/unpack.c                  rsc->id, task, role2text(rsc->role),
rsc              3950 lib/pengine/unpack.c                  role2text(rsc->next_role));
rsc              4010 lib/pengine/unpack.c extract_operations(const char *node, const char *rsc, xmlNode * rsc_entry, gboolean active_filter)
rsc              4031 lib/pengine/unpack.c             crm_xml_add(rsc_op, "resource", rsc);
rsc              4074 lib/pengine/unpack.c find_operations(const char *rsc, const char *node, gboolean active_filter,
rsc              4128 lib/pengine/unpack.c                         if (rsc != NULL && !pcmk__str_eq(rsc_id, rsc, pcmk__str_casei)) {
rsc                30 lib/pengine/utils.c static xmlNode *find_rsc_op_entry_helper(pe_resource_t * rsc, const char *key,
rsc                95 lib/pengine/utils.c         pe_resource_t *rsc = node->details->remote_rsc->container;
rsc                97 lib/pengine/utils.c         for (GList *n = rsc->running_on; n != NULL; n = n->next) {
rsc               232 lib/pengine/utils.c pe__output_node_weights(pe_resource_t *rsc, const char *comment,
rsc               245 lib/pengine/utils.c         out->message(out, "node-weight", rsc, comment, node->details->uname, score);
rsc               263 lib/pengine/utils.c                      pe_resource_t *rsc, const char *comment, GHashTable *nodes)
rsc               275 lib/pengine/utils.c         if (rsc) {
rsc               279 lib/pengine/utils.c                                         comment, rsc->id,
rsc               304 lib/pengine/utils.c                          bool to_log, pe_resource_t *rsc, const char *comment,
rsc               307 lib/pengine/utils.c     if (rsc != NULL && pcmk_is_set(rsc->flags, pe_rsc_orphan)) {
rsc               317 lib/pengine/utils.c         pe__log_node_weights(file, function, line, rsc, comment, nodes);
rsc               319 lib/pengine/utils.c         pe__output_node_weights(rsc, comment, nodes, data_set);
rsc               323 lib/pengine/utils.c     if (rsc && rsc->children) {
rsc               324 lib/pengine/utils.c         for (GList *gIter = rsc->children; gIter != NULL; gIter = gIter->next) {
rsc               388 lib/pengine/utils.c effective_quorum_policy(pe_resource_t *rsc, pe_working_set_t *data_set)
rsc               396 lib/pengine/utils.c         switch (rsc->role) {
rsc               399 lib/pengine/utils.c                 if (rsc->next_role > RSC_ROLE_UNPROMOTED) {
rsc               400 lib/pengine/utils.c                     pe__set_next_role(rsc, RSC_ROLE_UNPROMOTED,
rsc               443 lib/pengine/utils.c find_existing_action(const char *key, pe_resource_t *rsc, pe_node_t *node,
rsc               452 lib/pengine/utils.c     matches = find_actions(((rsc == NULL)? data_set->actions : rsc->actions),
rsc               481 lib/pengine/utils.c new_action(char *key, const char *task, pe_resource_t *rsc, pe_node_t *node,
rsc               488 lib/pengine/utils.c     action->rsc = rsc;
rsc               510 lib/pengine/utils.c     if (rsc != NULL) {
rsc               513 lib/pengine/utils.c         action->op_entry = find_rsc_op_entry_helper(rsc, key, TRUE);
rsc               515 lib/pengine/utils.c         unpack_operation(action, action->op_entry, rsc->container, data_set,
rsc               520 lib/pengine/utils.c         pe_rsc_trace(rsc, "Created %s action %d (%s): %s for %s on %s",
rsc               523 lib/pengine/utils.c                      ((rsc == NULL)? "no resource" : rsc->id),
rsc               528 lib/pengine/utils.c         if (rsc == NULL) {
rsc               531 lib/pengine/utils.c             rsc->actions = g_list_prepend(rsc->actions, action);
rsc               577 lib/pengine/utils.c     if ((action->rsc != NULL) && (action->node != NULL)
rsc               579 lib/pengine/utils.c         && !pcmk_is_set(action->rsc->flags, pe_rsc_managed)
rsc               582 lib/pengine/utils.c             pe_rsc_debug(action->rsc, "%s on %s is optional (%s is unmanaged)",
rsc               584 lib/pengine/utils.c                          action->rsc->id);
rsc               613 lib/pengine/utils.c         pe_rsc_trace(action->rsc, "%s is unrunnable (unallocated)",
rsc               625 lib/pengine/utils.c         if (pcmk_is_set(action->rsc->flags, pe_rsc_managed)
rsc               648 lib/pengine/utils.c             pe_rsc_debug(action->rsc, "%s on %s is unrunnable "
rsc               653 lib/pengine/utils.c             pe_rsc_trace(action->rsc,
rsc               660 lib/pengine/utils.c         switch (effective_quorum_policy(action->rsc, data_set)) {
rsc               662 lib/pengine/utils.c                 pe_rsc_debug(action->rsc, "%s on %s is unrunnable (no quorum)",
rsc               669 lib/pengine/utils.c                 if (!action->rsc->fns->active(action->rsc, TRUE)
rsc               670 lib/pengine/utils.c                     || (action->rsc->next_role > action->rsc->role)) {
rsc               671 lib/pengine/utils.c                     pe_rsc_debug(action->rsc,
rsc               695 lib/pengine/utils.c update_resource_flags_for_action(pe_resource_t *rsc, pe_action_t *action)
rsc               701 lib/pengine/utils.c         pe__set_resource_flags(rsc, pe_rsc_stopping);
rsc               705 lib/pengine/utils.c             pe__set_resource_flags(rsc, pe_rsc_starting);
rsc               707 lib/pengine/utils.c             pe__clear_resource_flags(rsc, pe_rsc_starting);
rsc               730 lib/pengine/utils.c custom_action(pe_resource_t *rsc, char *key, const char *task,
rsc               739 lib/pengine/utils.c         action = find_existing_action(key, rsc, on_node, data_set);
rsc               743 lib/pengine/utils.c         action = new_action(key, task, rsc, on_node, optional, save_action,
rsc               751 lib/pengine/utils.c     if (rsc != NULL) {
rsc               759 lib/pengine/utils.c             update_resource_flags_for_action(rsc, action);
rsc               787 lib/pengine/utils.c                          "allowed for stop", action->rsc->id, value);
rsc               794 lib/pengine/utils.c         CRM_CHECK(action->rsc != NULL, return NULL);
rsc               796 lib/pengine/utils.c         for (operation = pcmk__xe_first_child(action->rsc->ops_xml);
rsc               841 lib/pengine/utils.c                              "allowed for it", action->rsc->id, name);
rsc               850 lib/pengine/utils.c find_min_interval_mon(pe_resource_t * rsc, gboolean include_disabled)
rsc               859 lib/pengine/utils.c     for (operation = pcmk__xe_first_child(rsc->ops_xml);
rsc               964 lib/pengine/utils.c pe_get_configured_timeout(pe_resource_t *rsc, const char *action, pe_working_set_t *data_set)
rsc               980 lib/pengine/utils.c     for (child = first_named_child(rsc->ops_xml, XML_ATTR_OP);
rsc              1075 lib/pengine/utils.c         .standard = crm_element_value(action->rsc->xml, XML_AGENT_ATTR_CLASS),
rsc              1076 lib/pengine/utils.c         .provider = crm_element_value(action->rsc->xml, XML_AGENT_ATTR_PROVIDER),
rsc              1077 lib/pengine/utils.c         .agent = crm_element_value(action->rsc->xml, XML_EXPR_ATTR_TYPE)
rsc              1094 lib/pengine/utils.c     CRM_CHECK(action && action->rsc, return);
rsc              1104 lib/pengine/utils.c         xmlNode *min_interval_mon = find_min_interval_mon(action->rsc, FALSE);
rsc              1177 lib/pengine/utils.c         GHashTable *params = pe_rsc_params(action->rsc, action->node, data_set);
rsc              1199 lib/pengine/utils.c     } else if (pcmk_is_set(action->rsc->flags, pe_rsc_needs_fencing)) {
rsc              1203 lib/pengine/utils.c     } else if (pcmk_is_set(action->rsc->flags, pe_rsc_needs_quorum)) {
rsc              1211 lib/pengine/utils.c     pe_rsc_trace(action->rsc, "%s requires %s", action->uuid, value);
rsc              1270 lib/pengine/utils.c         pe_err("Resource %s: Unknown failure type (%s)", action->rsc->id, value);
rsc              1287 lib/pengine/utils.c     } else if (((value == NULL) || !pcmk_is_set(action->rsc->flags, pe_rsc_managed))
rsc              1288 lib/pengine/utils.c                && pe__resource_is_remote_conn(action->rsc, data_set)
rsc              1293 lib/pengine/utils.c         if (!pcmk_is_set(action->rsc->flags, pe_rsc_managed)) {
rsc              1305 lib/pengine/utils.c             if (action->rsc->remote_reconnect_ms) {
rsc              1326 lib/pengine/utils.c     pe_rsc_trace(action->rsc, "%s failure handling: %s",
rsc              1348 lib/pengine/utils.c     pe_rsc_trace(action->rsc, "%s failure results in: %s",
rsc              1372 lib/pengine/utils.c find_rsc_op_entry_helper(pe_resource_t * rsc, const char *key, gboolean include_disabled)
rsc              1384 lib/pengine/utils.c     for (operation = pcmk__xe_first_child(rsc->ops_xml); operation != NULL;
rsc              1398 lib/pengine/utils.c             match_key = pcmk__op_key(rsc->id, name, interval_ms);
rsc              1404 lib/pengine/utils.c             if (rsc->clone_name) {
rsc              1405 lib/pengine/utils.c                 match_key = pcmk__op_key(rsc->clone_name, name, interval_ms);
rsc              1426 lib/pengine/utils.c         local_key = pcmk__op_key(rsc->id, "migrate", 0);
rsc              1431 lib/pengine/utils.c         local_key = pcmk__op_key(rsc->id, "notify", 0);
rsc              1440 lib/pengine/utils.c find_rsc_op_entry(pe_resource_t * rsc, const char *key)
rsc              1442 lib/pengine/utils.c     return find_rsc_op_entry_helper(rsc, key, FALSE);
rsc              1471 lib/pengine/utils.c     if (action->rsc) {
rsc              1518 lib/pengine/utils.c get_complex_task(pe_resource_t * rsc, const char *name, gboolean allow_non_atomic)
rsc              1522 lib/pengine/utils.c     if (rsc == NULL) {
rsc              1525 lib/pengine/utils.c     } else if (allow_non_atomic == FALSE || rsc->variant == pe_native) {
rsc              1531 lib/pengine/utils.c                 crm_trace("Folding %s back into its atomic counterpart for %s", name, rsc->id);
rsc              1644 lib/pengine/utils.c pe__resource_actions(const pe_resource_t *rsc, const pe_node_t *node,
rsc              1648 lib/pengine/utils.c     char *key = pcmk__op_key(rsc->id, task, 0);
rsc              1651 lib/pengine/utils.c         result = find_actions_exact(rsc->actions, key, node);
rsc              1653 lib/pengine/utils.c         result = find_actions(rsc->actions, key, node);
rsc              1660 lib/pengine/utils.c resource_node_score(pe_resource_t * rsc, pe_node_t * node, int score, const char *tag)
rsc              1664 lib/pengine/utils.c     if ((rsc->exclusive_discover || (node->rsc_discover_mode == pe_discover_never))
rsc              1672 lib/pengine/utils.c     } else if (rsc->children) {
rsc              1673 lib/pengine/utils.c         GList *gIter = rsc->children;
rsc              1682 lib/pengine/utils.c     pe_rsc_trace(rsc, "Setting %s for %s on %s: %d", tag, rsc->id, node->details->uname, score);
rsc              1683 lib/pengine/utils.c     match = pe_hash_table_lookup(rsc->allowed_nodes, node->details->id);
rsc              1686 lib/pengine/utils.c         g_hash_table_insert(rsc->allowed_nodes, (gpointer) match->details->id, match);
rsc              1692 lib/pengine/utils.c resource_location(pe_resource_t * rsc, pe_node_t * node, int score, const char *tag,
rsc              1696 lib/pengine/utils.c         resource_node_score(rsc, node, score, tag);
rsc              1704 lib/pengine/utils.c             resource_node_score(rsc, node_iter, score, tag);
rsc              1711 lib/pengine/utils.c         g_hash_table_iter_init(&iter, rsc->allowed_nodes);
rsc              1713 lib/pengine/utils.c             resource_node_score(rsc, node_iter, score, tag);
rsc              1718 lib/pengine/utils.c         if (rsc->allocated_to) {
rsc              1719 lib/pengine/utils.c             crm_info("Deallocating %s from %s", rsc->id, rsc->allocated_to->details->uname);
rsc              1720 lib/pengine/utils.c             free(rsc->allocated_to);
rsc              1721 lib/pengine/utils.c             rsc->allocated_to = NULL;
rsc              1868 lib/pengine/utils.c get_target_role(pe_resource_t * rsc, enum rsc_role_e * role)
rsc              1871 lib/pengine/utils.c     const char *value = g_hash_table_lookup(rsc->meta, XML_RSC_ATTR_TARGET_ROLE);
rsc              1883 lib/pengine/utils.c                          "because '%s' is not valid", rsc->id, value);
rsc              1887 lib/pengine/utils.c         if (pcmk_is_set(uber_parent(rsc)->flags, pe_rsc_promotable)) {
rsc              1896 lib/pengine/utils.c                              "clones", rsc->id, value);
rsc              2012 lib/pengine/utils.c const char *rsc_printable_id(pe_resource_t *rsc)
rsc              2014 lib/pengine/utils.c     if (!pcmk_is_set(rsc->flags, pe_rsc_unique)) {
rsc              2015 lib/pengine/utils.c         return ID(rsc->xml);
rsc              2017 lib/pengine/utils.c     return rsc->id;
rsc              2021 lib/pengine/utils.c pe__clear_resource_flags_recursive(pe_resource_t *rsc, uint64_t flags)
rsc              2023 lib/pengine/utils.c     pe__clear_resource_flags(rsc, flags);
rsc              2024 lib/pengine/utils.c     for (GList *gIter = rsc->children; gIter != NULL; gIter = gIter->next) {
rsc              2039 lib/pengine/utils.c pe__set_resource_flags_recursive(pe_resource_t *rsc, uint64_t flags)
rsc              2041 lib/pengine/utils.c     pe__set_resource_flags(rsc, flags);
rsc              2042 lib/pengine/utils.c     for (GList *gIter = rsc->children; gIter != NULL; gIter = gIter->next) {
rsc              2245 lib/pengine/utils.c     pe_resource_t * rsc, pe_node_t *node, const char *reason, pe_action_t *dependency, pe_working_set_t * data_set) 
rsc              2251 lib/pengine/utils.c     } else if ((rsc != NULL)
rsc              2252 lib/pengine/utils.c                && !pcmk_is_set(rsc->flags, pe_rsc_fence_device)) {
rsc              2266 lib/pengine/utils.c     } else if(rsc) {
rsc              2269 lib/pengine/utils.c         g_hash_table_iter_init(&iter, rsc->allowed_nodes);
rsc              2272 lib/pengine/utils.c                 trigger_unfencing(rsc, node, reason, dependency, data_set);
rsc              2344 lib/pengine/utils.c                              (action->rsc == NULL)? "" : " ",
rsc              2345 lib/pengine/utils.c                              (action->rsc == NULL)? "" : action->rsc->id,
rsc              2352 lib/pengine/utils.c         pe_rsc_trace(action->rsc, "Changing %s reason from '%s' to '%s'",
rsc              2355 lib/pengine/utils.c         pe_rsc_trace(action->rsc, "Set %s reason to '%s'",
rsc              2425 lib/pengine/utils.c pe__resource_is_disabled(pe_resource_t *rsc)
rsc              2429 lib/pengine/utils.c     CRM_CHECK(rsc != NULL, return false);
rsc              2430 lib/pengine/utils.c     target_role = g_hash_table_lookup(rsc->meta, XML_RSC_ATTR_TARGET_ROLE);
rsc              2436 lib/pengine/utils.c                 && pcmk_is_set(uber_parent(rsc)->flags, pe_rsc_promotable))) {
rsc              2453 lib/pengine/utils.c pe__clear_resource_history(pe_resource_t *rsc, pe_node_t *node,
rsc              2458 lib/pengine/utils.c     CRM_ASSERT(rsc && node);
rsc              2459 lib/pengine/utils.c     key = pcmk__op_key(rsc->id, CRM_OP_LRM_DELETE, 0);
rsc              2460 lib/pengine/utils.c     return custom_action(rsc, key, CRM_OP_LRM_DELETE, node, FALSE, TRUE,
rsc              2465 lib/pengine/utils.c pe__rsc_running_on_any(pe_resource_t *rsc, GList *node_list)
rsc              2467 lib/pengine/utils.c     for (GList *ele = rsc->running_on; ele; ele = ele->next) {
rsc              2479 lib/pengine/utils.c pcmk__rsc_filtered_by_node(pe_resource_t *rsc, GList *only_node)
rsc              2481 lib/pengine/utils.c     return (rsc->fns->active(rsc, FALSE) && !pe__rsc_running_on_any(rsc, only_node));
rsc              2490 lib/pengine/utils.c         pe_resource_t *rsc = (pe_resource_t *) gIter->data;
rsc              2495 lib/pengine/utils.c         if (pcmk__str_in_list(rsc_printable_id(rsc), filter, pcmk__str_star_matches) ||
rsc              2496 lib/pengine/utils.c             (rsc->parent && pcmk__str_in_list(rsc_printable_id(rsc->parent), filter, pcmk__str_star_matches))) {
rsc              2497 lib/pengine/utils.c             retval = g_list_prepend(retval, rsc);
rsc              2543 lib/pengine/utils.c         pe_resource_t *rsc = pe_find_resource_with_flags(data_set->resources, s,
rsc              2546 lib/pengine/utils.c         if (rsc) {
rsc              2553 lib/pengine/utils.c                 resources = g_list_prepend(resources, strdup(rsc->id));
rsc              2555 lib/pengine/utils.c                 resources = g_list_prepend(resources, strdup(rsc_printable_id(rsc)));
rsc              2570 lib/pengine/utils.c pe__failed_probe_for_rsc(pe_resource_t *rsc, const char *name)
rsc              2572 lib/pengine/utils.c     pe_resource_t *parent = uber_parent(rsc);
rsc              2573 lib/pengine/utils.c     const char *rsc_id = rsc->id;
rsc              2575 lib/pengine/utils.c     if (rsc->variant == pe_clone) {
rsc              2576 lib/pengine/utils.c         rsc_id = pe__clone_child_id(rsc);
rsc              2581 lib/pengine/utils.c     for (xmlNode *xml_op = pcmk__xml_first_child(rsc->cluster->failed); xml_op != NULL;
rsc                37 lib/pengine/variant.h #    define get_clone_variant_data(data, rsc)				\
rsc                38 lib/pengine/variant.h 	CRM_ASSERT(rsc != NULL);					\
rsc                39 lib/pengine/variant.h 	CRM_ASSERT(rsc->variant == pe_clone); \
rsc                40 lib/pengine/variant.h 	data = (clone_variant_data_t *)rsc->variant_opaque;
rsc               112 lib/pengine/variant.h #    define get_bundle_variant_data(data, rsc)                       \
rsc               113 lib/pengine/variant.h 	CRM_ASSERT(rsc != NULL);					\
rsc               114 lib/pengine/variant.h 	CRM_ASSERT(rsc->variant == pe_container);                       \
rsc               115 lib/pengine/variant.h 	CRM_ASSERT(rsc->variant_opaque != NULL);			\
rsc               116 lib/pengine/variant.h 	data = (pe__bundle_variant_data_t *)rsc->variant_opaque;		\
rsc               133 lib/pengine/variant.h #    define get_group_variant_data(data, rsc)				\
rsc               134 lib/pengine/variant.h 	CRM_ASSERT(rsc != NULL);					\
rsc               135 lib/pengine/variant.h 	CRM_ASSERT(rsc->variant == pe_group);				\
rsc               136 lib/pengine/variant.h 	CRM_ASSERT(rsc->variant_opaque != NULL);			\
rsc               137 lib/pengine/variant.h 	data = (group_variant_data_t *)rsc->variant_opaque;		\
rsc               145 lib/pengine/variant.h #    define get_native_variant_data(data, rsc)				\
rsc               146 lib/pengine/variant.h 	CRM_ASSERT(rsc != NULL);					\
rsc               147 lib/pengine/variant.h 	CRM_ASSERT(rsc->variant == pe_native);				\
rsc               148 lib/pengine/variant.h 	CRM_ASSERT(rsc->variant_opaque != NULL);			\
rsc               149 lib/pengine/variant.h 	data = (native_variant_data_t *)rsc->variant_opaque;
rsc               129 lib/services/services.c expand_resource_class(const char *rsc, const char *standard, const char *agent)
rsc               137 lib/services/services.c             crm_debug("Found %s agent %s for %s", found_class, agent, rsc);
rsc               141 lib/services/services.c                      agent, rsc);
rsc               220 lib/services/services.c     op->rsc = strdup(name);
rsc               221 lib/services/services.c     if (op->rsc == NULL) {
rsc               509 lib/services/services.c         crm_trace("Removing timer for call %s to %s", op->action, op->rsc);
rsc               619 lib/services/services.c     free(op->rsc);
rsc               844 lib/services/services.c     if (op->rsc) {
rsc               892 lib/services/services.c         && op->rsc && is_op_blocked(op->rsc)) {
rsc               910 lib/services/services.c is_op_blocked(const char *rsc)
rsc               917 lib/services/services.c         if (pcmk__str_eq(op->rsc, rsc, pcmk__str_casei)) {
rsc               943 lib/services/services.c         if (is_op_blocked(op->rsc)) {
rsc              1044 lib/services/services.c               op->rsc, op->action, op->interval_ms, op->opaque->exec, op->rc);
rsc               429 lib/services/services_linux.c     if (op->rsc) {
rsc               430 lib/services/services_linux.c         set_ocf_env("OCF_RESOURCE_INSTANCE", op->rsc, NULL);
rsc               955 lib/services/services_linux.c     rc = pcmk__substitute_secrets(op->rsc, op->params);
rsc               960 lib/services/services_linux.c                      op->rsc, pcmk_rc_str(rc));
rsc               964 lib/services/services_linux.c                     op->rsc, pcmk_rc_str(rc));
rsc                94 lib/services/services_private.h gboolean is_op_blocked(const char *rsc);
rsc               314 lib/services/systemd.c                       error->name, crm_str(op->rsc));
rsc               325 lib/services/systemd.c              op->action, op->agent, crm_str(op->rsc), error->message);
rsc               728 lib/services/systemd.c                  "return type was unexpected", op->action, crm_str(op->rsc));
rsc               739 lib/services/systemd.c                   op->action, crm_str(op->rsc), path);
rsc               893 lib/services/systemd.c               crm_str(op->rsc), name, crm_str(state));
rsc               977 lib/services/systemd.c               method, unit, crm_str(op->rsc));
rsc              1024 lib/services/systemd.c              op->action, op->agent, op->rsc);
rsc              1067 lib/services/systemd.c               crm_str(op->rsc));
rsc               418 lib/services/upstart.c                       error->name, crm_str(op->rsc));
rsc               430 lib/services/upstart.c                   error->name, crm_str(op->rsc));
rsc               436 lib/services/upstart.c              op->action, op->agent, crm_str(op->rsc), error->message);
rsc               466 lib/services/upstart.c         crm_debug("DBus request for stop of %s succeeded", crm_str(op->rsc));
rsc               472 lib/services/upstart.c                  "return type was unexpected", op->action, crm_str(op->rsc));
rsc               481 lib/services/upstart.c                   op->action, crm_str(op->rsc), path);
rsc               618 lib/services/upstart.c     crm_debug("Calling %s for %s on %s", action, crm_str(op->rsc), job);
rsc              1652 tools/crm_mon.c send_custom_trap(const char *node, const char *rsc, const char *task, int target_rc, int rc,
rsc              1664 tools/crm_mon.c     if(rsc) {
rsc              1665 tools/crm_mon.c         setenv("CRM_notify_rsc", rsc, 1);
rsc              1702 tools/crm_mon.c     char *rsc = NULL;
rsc              1740 tools/crm_mon.c     if (parse_op_key(id, &rsc, &task, NULL) == FALSE) {
rsc              1771 tools/crm_mon.c         crm_notice("%s of %s on %s completed: %s", task, rsc, node, desc);
rsc              1778 tools/crm_mon.c         crm_warn("%s of %s on %s failed: %s", task, rsc, node, desc);
rsc              1782 tools/crm_mon.c         crm_warn("%s of %s on %s failed: %s", task, rsc, node, desc);
rsc              1786 tools/crm_mon.c         send_custom_trap(node, rsc, task, target_rc, rc, status, desc);
rsc              1789 tools/crm_mon.c     free(rsc);
rsc               946 tools/crm_resource.c ban_or_move(pcmk__output_t *out, pe_resource_t *rsc, const char *move_lifetime)
rsc               952 tools/crm_resource.c     CRM_CHECK(rsc != NULL, return EINVAL);
rsc               954 tools/crm_resource.c     current = pe__find_active_requires(rsc, &nactive);
rsc               960 tools/crm_resource.c     } else if (pcmk_is_set(rsc->flags, pe_rsc_promotable)) {
rsc               965 tools/crm_resource.c         for(iter = rsc->children; iter; iter = iter->next) {
rsc              1003 tools/crm_resource.c cleanup(pcmk__output_t *out, pe_resource_t *rsc)
rsc              1008 tools/crm_resource.c         rsc = uber_parent(rsc);
rsc              1012 tools/crm_resource.c               rsc->id, options.rsc_id, (options.host_uname? options.host_uname: "all nodes"));
rsc              1013 tools/crm_resource.c     rc = cli_resource_delete(controld_api, options.host_uname, rsc, options.operation,
rsc              1018 tools/crm_resource.c         cli_resource_check(out, cib_conn, rsc);
rsc              1311 tools/crm_resource.c refresh_resource(pcmk__output_t *out, pe_resource_t *rsc)
rsc              1316 tools/crm_resource.c         rsc = uber_parent(rsc);
rsc              1320 tools/crm_resource.c               rsc->id, options.rsc_id, (options.host_uname? options.host_uname: "all nodes"));
rsc              1321 tools/crm_resource.c     rc = cli_resource_delete(controld_api, options.host_uname, rsc, NULL,
rsc              1326 tools/crm_resource.c         cli_resource_check(out, cib_conn, rsc);
rsc              1534 tools/crm_resource.c     pe_resource_t *rsc = NULL;
rsc              1751 tools/crm_resource.c         rsc = pe_find_resource_with_flags(data_set->resources, options.rsc_id,
rsc              1753 tools/crm_resource.c         if (rsc == NULL) {
rsc              1763 tools/crm_resource.c         if (strchr(options.rsc_id, ':') != NULL && pe_rsc_is_clone(rsc->parent) &&
rsc              1853 tools/crm_resource.c             rc = cli_resource_restart(out, rsc, node, options.move_lifetime,
rsc              1871 tools/crm_resource.c                 exit_code = cli_resource_execute(rsc, options.rsc_id,
rsc              1883 tools/crm_resource.c                 rc = pcmk__resource_digests(out, rsc, node,
rsc              1889 tools/crm_resource.c             rc = out->message(out, "stacks-constraints", rsc, data_set, false);
rsc              1893 tools/crm_resource.c             rc = out->message(out, "stacks-constraints", rsc, data_set, true);
rsc              1923 tools/crm_resource.c             GList *nodes = cli_resource_search(rsc, options.rsc_id, data_set);
rsc              1930 tools/crm_resource.c             rc = cli_resource_print(rsc, data_set, TRUE);
rsc              1934 tools/crm_resource.c             rc = cli_resource_print(rsc, data_set, FALSE);
rsc              1942 tools/crm_resource.c                                   data_set->resources, rsc, node);
rsc              1952 tools/crm_resource.c                 rc = ban_or_move(out, rsc, options.move_lifetime);
rsc              1954 tools/crm_resource.c                 rc = cli_resource_move(rsc, options.rsc_id, options.host_uname,
rsc              1970 tools/crm_resource.c                 rc = ban_or_move(out, rsc, options.move_lifetime);
rsc              1988 tools/crm_resource.c             rc = out->message(out, "property-list", rsc, options.prop_name);
rsc              2002 tools/crm_resource.c             pe_node_t *current = pe__find_active_on(rsc, &count, NULL);
rsc              2007 tools/crm_resource.c                          " returning the default value for %s", rsc->id, crm_str(options.prop_name));
rsc              2011 tools/crm_resource.c             crm_debug("Looking up %s in %s", options.prop_name, rsc->id);
rsc              2014 tools/crm_resource.c                 params = pe_rsc_params(rsc, current, data_set);
rsc              2019 tools/crm_resource.c                 get_meta_attributes(params, rsc, current, data_set);
rsc              2023 tools/crm_resource.c                 pe__unpack_dataset_nvpairs(rsc->xml, XML_TAG_UTILIZATION, NULL, params,
rsc              2027 tools/crm_resource.c             rc = out->message(out, "attribute-list", rsc, options.prop_name, params);
rsc              2043 tools/crm_resource.c             rc = cli_resource_update_attribute(rsc, options.rsc_id,
rsc              2056 tools/crm_resource.c             rc = cli_resource_delete_attribute(rsc, options.rsc_id,
rsc              2066 tools/crm_resource.c             if (rsc == NULL) {
rsc              2074 tools/crm_resource.c                 cleanup(out, rsc);
rsc              2079 tools/crm_resource.c             if (rsc == NULL) {
rsc              2082 tools/crm_resource.c                 refresh_resource(out, rsc);
rsc                38 tools/crm_resource.h     pe_resource_t *rsc;
rsc                43 tools/crm_resource.h resource_checks_t *cli_check_resource(pe_resource_t *rsc, char *role_s, char *managed);
rsc                55 tools/crm_resource.h                                    const char *rsc, const char *node, gboolean promoted_role_only);
rsc                58 tools/crm_resource.h void cli_resource_print_cts(pe_resource_t * rsc, pcmk__output_t *out);
rsc                61 tools/crm_resource.h int cli_resource_print(pe_resource_t *rsc, pe_working_set_t *data_set, bool expanded);
rsc                66 tools/crm_resource.h int cli_resource_check(pcmk__output_t *out, cib_t * cib, pe_resource_t *rsc);
rsc                69 tools/crm_resource.h GList *cli_resource_search(pe_resource_t *rsc, const char *requested_name,
rsc                72 tools/crm_resource.h                         pe_resource_t *rsc, const char *operation,
rsc                78 tools/crm_resource.h int cli_resource_restart(pcmk__output_t *out, pe_resource_t *rsc, pe_node_t *node,
rsc                81 tools/crm_resource.h int cli_resource_move(pe_resource_t *rsc, const char *rsc_id, const char *host_name,
rsc                91 tools/crm_resource.h crm_exit_t cli_resource_execute(pe_resource_t *rsc, const char *requested_name,
rsc                96 tools/crm_resource.h int cli_resource_update_attribute(pe_resource_t *rsc, const char *requested_name,
rsc               102 tools/crm_resource.h int cli_resource_delete_attribute(pe_resource_t *rsc, const char *requested_name,
rsc               111 tools/crm_resource.h bool resource_is_running_on(pe_resource_t *rsc, const char *host);
rsc               345 tools/crm_resource_ban.c build_clear_xpath_string(xmlNode *constraint_node, const char *rsc, const char *node, gboolean promoted_role_only)
rsc               367 tools/crm_resource_ban.c     if (node != NULL || rsc != NULL || promoted_role_only == TRUE) {
rsc               371 tools/crm_resource_ban.c             if (rsc != NULL || promoted_role_only == TRUE) {
rsc               378 tools/crm_resource_ban.c         if (rsc != NULL && promoted_role_only == TRUE) {
rsc               380 tools/crm_resource_ban.c                                                 rsc, promoted_role_name());
rsc               383 tools/crm_resource_ban.c                                rsc, promoted_role_name());
rsc               384 tools/crm_resource_ban.c         } else if (rsc != NULL) {
rsc               385 tools/crm_resource_ban.c             rsc_role_substr = crm_strdup_printf("@rsc='%s'", rsc);
rsc               386 tools/crm_resource_ban.c             offset += snprintf(first_half + offset, XPATH_MAX - offset, "@rsc='%s']", rsc);
rsc               419 tools/crm_resource_ban.c                                const char *rsc, const char *node, gboolean promoted_role_only)
rsc               436 tools/crm_resource_ban.c         xpath_string = build_clear_xpath_string(constraint_node, rsc, node, promoted_role_only);
rsc                59 tools/crm_resource_print.c cli_resource_print_cts(pe_resource_t * rsc, pcmk__output_t *out)
rsc                63 tools/crm_resource_print.c     const char *rtype = crm_element_value(rsc->xml, XML_ATTR_TYPE);
rsc                64 tools/crm_resource_print.c     const char *rprov = crm_element_value(rsc->xml, XML_AGENT_ATTR_PROVIDER);
rsc                65 tools/crm_resource_print.c     const char *rclass = crm_element_value(rsc->xml, XML_AGENT_ATTR_CLASS);
rsc                66 tools/crm_resource_print.c     pe_node_t *node = pe__current_node(rsc);
rsc                79 tools/crm_resource_print.c               crm_element_name(rsc->xml), rsc->id,
rsc                80 tools/crm_resource_print.c               rsc->clone_name ? rsc->clone_name : rsc->id, rsc->parent ? rsc->parent->id : "NA",
rsc                81 tools/crm_resource_print.c               rprov ? rprov : "NA", rclass, rtype, host ? host : "NA", needs_quorum, rsc->flags,
rsc                82 tools/crm_resource_print.c               rsc->flags);
rsc                84 tools/crm_resource_print.c     g_list_foreach(rsc->children, (GFunc) cli_resource_print_cts, out);
rsc               114 tools/crm_resource_print.c cli_resource_print(pe_resource_t *rsc, pe_working_set_t *data_set, bool expanded)
rsc               123 tools/crm_resource_print.c     out->message(out, crm_map_element_name(rsc->xml), show_opts, rsc, all, all);
rsc               124 tools/crm_resource_print.c     out->message(out, "resource-config", rsc, !expanded);
rsc               134 tools/crm_resource_print.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc               148 tools/crm_resource_print.c         out->err(out, "Attribute '%s' not found for '%s'", attr, rsc->id);
rsc               232 tools/crm_resource_print.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc               244 tools/crm_resource_print.c         out->err(out, "Attribute '%s' not found for '%s'", attr, rsc->id);
rsc               290 tools/crm_resource_print.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc               293 tools/crm_resource_print.c     const char *value = crm_element_value(rsc->xml, attr);
rsc               307 tools/crm_resource_print.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc               310 tools/crm_resource_print.c     const char *value = crm_element_value(rsc->xml, attr);
rsc               452 tools/crm_resource_print.c     pe_resource_t *parent = uber_parent(checks->rsc);
rsc               494 tools/crm_resource_print.c     pe_resource_t *parent = uber_parent(checks->rsc);
rsc               597 tools/crm_resource_print.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc               604 tools/crm_resource_print.c     if ((rsc == NULL) && (host_uname == NULL)) {
rsc               609 tools/crm_resource_print.c             pe_resource_t *rsc = (pe_resource_t *) lpc->data;
rsc               610 tools/crm_resource_print.c             rsc->fns->location(rsc, &hosts, TRUE);
rsc               613 tools/crm_resource_print.c                 out->list_item(out, "reason", "Resource %s is not running", rsc->id);
rsc               615 tools/crm_resource_print.c                 out->list_item(out, "reason", "Resource %s is running", rsc->id);
rsc               618 tools/crm_resource_print.c             cli_resource_check(out, cib_conn, rsc);
rsc               623 tools/crm_resource_print.c     } else if ((rsc != NULL) && (host_uname != NULL)) {
rsc               624 tools/crm_resource_print.c         if (resource_is_running_on(rsc, host_uname)) {
rsc               626 tools/crm_resource_print.c                            rsc->id, host_uname);
rsc               629 tools/crm_resource_print.c                            rsc->id, host_uname);
rsc               632 tools/crm_resource_print.c         cli_resource_check(out, cib_conn, rsc);
rsc               634 tools/crm_resource_print.c     } else if ((rsc == NULL) && (host_uname != NULL)) {
rsc               642 tools/crm_resource_print.c             pe_resource_t *rsc = (pe_resource_t *) lpc->data;
rsc               644 tools/crm_resource_print.c                            rsc->id, host_uname);
rsc               645 tools/crm_resource_print.c             cli_resource_check(out, cib_conn, rsc);
rsc               649 tools/crm_resource_print.c             pe_resource_t *rsc = (pe_resource_t *) lpc->data;
rsc               651 tools/crm_resource_print.c                            rsc->id, host_uname);
rsc               652 tools/crm_resource_print.c             cli_resource_check(out, cib_conn, rsc);
rsc               659 tools/crm_resource_print.c     } else if ((rsc != NULL) && (host_uname == NULL)) {
rsc               662 tools/crm_resource_print.c         rsc->fns->location(rsc, &hosts, TRUE);
rsc               664 tools/crm_resource_print.c                        rsc->id, (hosts? "" : "not "));
rsc               665 tools/crm_resource_print.c         cli_resource_check(out, cib_conn, rsc);
rsc               680 tools/crm_resource_print.c     pe_resource_t *rsc = va_arg(args, pe_resource_t *);
rsc               687 tools/crm_resource_print.c     if ((rsc == NULL) && (host_uname == NULL)) {
rsc               694 tools/crm_resource_print.c             pe_resource_t *rsc = (pe_resource_t *) lpc->data;
rsc               696 tools/crm_resource_print.c             rsc->fns->location(rsc, &hosts, TRUE);
rsc               699 tools/crm_resource_print.c                                            "id", rsc->id,
rsc               703 tools/crm_resource_print.c             cli_resource_check(out, cib_conn, rsc);
rsc               711 tools/crm_resource_print.c     } else if ((rsc != NULL) && (host_uname != NULL)) {
rsc               712 tools/crm_resource_print.c         if (resource_is_running_on(rsc, host_uname)) {
rsc               716 tools/crm_resource_print.c         cli_resource_check(out, cib_conn, rsc);
rsc               718 tools/crm_resource_print.c     } else if ((rsc == NULL) && (host_uname != NULL)) {
rsc               728 tools/crm_resource_print.c             pe_resource_t *rsc = (pe_resource_t *) lpc->data;
rsc               731 tools/crm_resource_print.c                                            "id", rsc->id,
rsc               736 tools/crm_resource_print.c             cli_resource_check(out, cib_conn, rsc);
rsc               741 tools/crm_resource_print.c             pe_resource_t *rsc = (pe_resource_t *) lpc->data;
rsc               744 tools/crm_resource_print.c                                            "id", rsc->id,
rsc               749 tools/crm_resource_print.c             cli_resource_check(out, cib_conn, rsc);
rsc               758 tools/crm_resource_print.c     } else if ((rsc != NULL) && (host_uname == NULL)) {
rsc               761 tools/crm_resource_print.c         rsc->fns->location(rsc, &hosts, TRUE);
rsc               763 tools/crm_resource_print.c         cli_resource_check(out, cib_conn, rsc);
rsc               771 tools/crm_resource_print.c add_resource_name(pe_resource_t *rsc, pcmk__output_t *out) {
rsc               772 tools/crm_resource_print.c     if (rsc->children == NULL) {
rsc               773 tools/crm_resource_print.c         out->list_item(out, "resource", "%s", rsc->id);
rsc               775 tools/crm_resource_print.c         g_list_foreach(rsc->children, (GFunc) add_resource_name, out);
rsc                18 tools/crm_resource_runtime.c cli_check_resource(pe_resource_t *rsc, char *role_s, char *managed)
rsc                20 tools/crm_resource_runtime.c     pe_resource_t *parent = uber_parent(rsc);
rsc                38 tools/crm_resource_runtime.c     if (rsc->lock_node) {
rsc                39 tools/crm_resource_runtime.c         rc->lock_node = rsc->lock_node->details->uname;
rsc                42 tools/crm_resource_runtime.c     rc->rsc = rsc;
rsc                47 tools/crm_resource_runtime.c build_node_info_list(pe_resource_t *rsc)
rsc                51 tools/crm_resource_runtime.c     for (GList *iter = rsc->children; iter != NULL; iter = iter->next) {
rsc                58 tools/crm_resource_runtime.c             ni->promoted = pcmk_is_set(rsc->flags, pe_rsc_promotable) &&
rsc                69 tools/crm_resource_runtime.c cli_resource_search(pe_resource_t *rsc, const char *requested_name,
rsc                73 tools/crm_resource_runtime.c     pe_resource_t *parent = uber_parent(rsc);
rsc                75 tools/crm_resource_runtime.c     if (pe_rsc_is_clone(rsc)) {
rsc                76 tools/crm_resource_runtime.c         retval = build_node_info_list(rsc);
rsc                80 tools/crm_resource_runtime.c                && !pcmk_is_set(rsc->flags, pe_rsc_unique)
rsc                81 tools/crm_resource_runtime.c                && rsc->clone_name
rsc                82 tools/crm_resource_runtime.c                && pcmk__str_eq(requested_name, rsc->clone_name, pcmk__str_casei)
rsc                83 tools/crm_resource_runtime.c                && !pcmk__str_eq(requested_name, rsc->id, pcmk__str_casei)) {
rsc                87 tools/crm_resource_runtime.c     } else if (rsc->running_on != NULL) {
rsc                88 tools/crm_resource_runtime.c         for (GList *iter = rsc->running_on; iter != NULL; iter = iter->next) {
rsc                92 tools/crm_resource_runtime.c             ni->promoted = (rsc->fns->state(rsc, TRUE) == RSC_ROLE_PROMOTED);
rsc               106 tools/crm_resource_runtime.c                    const char *rsc, const char *attr_set_type, const char *set_name,
rsc               133 tools/crm_resource_runtime.c     offset += snprintf(xpath_string + offset, XPATH_MAX - offset, "//*[@id=\"%s\"]", rsc);
rsc               192 tools/crm_resource_runtime.c                                        pe_resource_t * rsc, const char * rsc_id,
rsc               198 tools/crm_resource_runtime.c     char *lookup_id = clone_strip(rsc->id);
rsc               202 tools/crm_resource_runtime.c     for(GList *gIter = rsc->children; gIter; gIter = gIter->next) {
rsc               207 tools/crm_resource_runtime.c         if(pe_clone == rsc->variant) {
rsc               218 tools/crm_resource_runtime.c         *result = g_list_append(*result, rsc);
rsc               228 tools/crm_resource_runtime.c find_matching_attr_resources(pcmk__output_t *out, pe_resource_t * rsc,
rsc               242 tools/crm_resource_runtime.c         return g_list_append(result, rsc);
rsc               244 tools/crm_resource_runtime.c     if(rsc->parent && pe_clone == rsc->parent->variant) {
rsc               252 tools/crm_resource_runtime.c             rsc = rsc->parent;
rsc               254 tools/crm_resource_runtime.c                       cmd, attr_name, rsc->id, rsc_id);
rsc               256 tools/crm_resource_runtime.c         return g_list_append(result, rsc);
rsc               257 tools/crm_resource_runtime.c     } else if(rsc->parent == NULL && rsc->children && pe_clone == rsc->variant) {
rsc               258 tools/crm_resource_runtime.c         pe_resource_t *child = rsc->children->data;
rsc               266 tools/crm_resource_runtime.c                 rsc = child;
rsc               274 tools/crm_resource_runtime.c         return g_list_append(result, rsc);
rsc               277 tools/crm_resource_runtime.c     find_matching_attr_resources_recursive(out, &result, rsc, rsc_id, attr_set,
rsc               285 tools/crm_resource_runtime.c cli_resource_update_attribute(pe_resource_t *rsc, const char *requested_name,
rsc               303 tools/crm_resource_runtime.c         find_resource_attr (out, cib, XML_ATTR_ID, uber_parent(rsc)->id, NULL,
rsc               309 tools/crm_resource_runtime.c             rc = find_resource_attr(out, cib, XML_ATTR_ID, uber_parent(rsc)->id,
rsc               314 tools/crm_resource_runtime.c                          uber_parent(rsc)->id, attr_name, local_attr_id);
rsc               323 tools/crm_resource_runtime.c         resources = g_list_append(resources, rsc);
rsc               326 tools/crm_resource_runtime.c         resources = find_matching_attr_resources(out, rsc, requested_name, attr_set, attr_set_type,
rsc               342 tools/crm_resource_runtime.c         rsc = (pe_resource_t*)gIter->data;
rsc               345 tools/crm_resource_runtime.c         lookup_id = clone_strip(rsc->id); /* Could be a cloned group! */
rsc               360 tools/crm_resource_runtime.c             const char *tag = crm_element_name(rsc->xml);
rsc               410 tools/crm_resource_runtime.c             crm_debug("Looking for dependencies %p", rsc->rsc_cons_lhs);
rsc               411 tools/crm_resource_runtime.c             pe__set_resource_flags(rsc, pe_rsc_allocating);
rsc               412 tools/crm_resource_runtime.c             for (lpc = rsc->rsc_cons_lhs; lpc != NULL; lpc = lpc->next) {
rsc               437 tools/crm_resource_runtime.c cli_resource_delete_attribute(pe_resource_t *rsc, const char *requested_name,
rsc               448 tools/crm_resource_runtime.c         find_resource_attr(out, cib, XML_ATTR_ID, uber_parent(rsc)->id, NULL,
rsc               453 tools/crm_resource_runtime.c         resources = find_matching_attr_resources(out, rsc, requested_name, attr_set, attr_set_type,
rsc               456 tools/crm_resource_runtime.c         resources = g_list_append(resources, rsc);
rsc               464 tools/crm_resource_runtime.c         rsc = (pe_resource_t*)gIter->data;
rsc               466 tools/crm_resource_runtime.c         lookup_id = clone_strip(rsc->id);
rsc               519 tools/crm_resource_runtime.c     pe_resource_t *rsc = pe_find_resource(data_set->resources, rsc_id);
rsc               521 tools/crm_resource_runtime.c     if (rsc == NULL) {
rsc               525 tools/crm_resource_runtime.c     } else if (rsc->variant != pe_native) {
rsc               530 tools/crm_resource_runtime.c     rsc_class = crm_element_value(rsc->xml, XML_AGENT_ATTR_CLASS);
rsc               531 tools/crm_resource_runtime.c     rsc_provider = crm_element_value(rsc->xml, XML_AGENT_ATTR_PROVIDER),
rsc               532 tools/crm_resource_runtime.c     rsc_type = crm_element_value(rsc->xml, XML_ATTR_TYPE);
rsc               565 tools/crm_resource_runtime.c     if (rsc->clone_name) {
rsc               566 tools/crm_resource_runtime.c         rsc_api_id = rsc->clone_name;
rsc               567 tools/crm_resource_runtime.c         rsc_long_id = rsc->id;
rsc               569 tools/crm_resource_runtime.c         rsc_api_id = rsc->id;
rsc               592 tools/crm_resource_runtime.c rsc_fail_name(pe_resource_t *rsc)
rsc               594 tools/crm_resource_runtime.c     const char *name = (rsc->clone_name? rsc->clone_name : rsc->id);
rsc               596 tools/crm_resource_runtime.c     return pcmk_is_set(rsc->flags, pe_rsc_unique)? strdup(name) : clone_strip(name);
rsc               708 tools/crm_resource_runtime.c clear_rsc_fail_attrs(pe_resource_t *rsc, const char *operation,
rsc               713 tools/crm_resource_runtime.c     char *rsc_name = rsc_fail_name(rsc);
rsc               728 tools/crm_resource_runtime.c                     pe_resource_t *rsc, const char *operation,
rsc               736 tools/crm_resource_runtime.c     if (rsc == NULL) {
rsc               739 tools/crm_resource_runtime.c     } else if (rsc->children) {
rsc               742 tools/crm_resource_runtime.c         for (lpc = rsc->children; lpc != NULL; lpc = lpc->next) {
rsc               756 tools/crm_resource_runtime.c         GList *nodes = g_hash_table_get_values(rsc->known_on);
rsc               761 tools/crm_resource_runtime.c         } else if(nodes == NULL && rsc->exclusive_discover) {
rsc               765 tools/crm_resource_runtime.c             g_hash_table_iter_init(&iter, rsc->allowed_nodes);
rsc               773 tools/crm_resource_runtime.c             nodes = g_hash_table_get_values(rsc->allowed_nodes);
rsc               781 tools/crm_resource_runtime.c                                          rsc, operation, interval_spec,
rsc               798 tools/crm_resource_runtime.c                  rsc->id, host_uname);
rsc               804 tools/crm_resource_runtime.c                  rsc->id, host_uname);
rsc               810 tools/crm_resource_runtime.c                  rsc->id, host_uname);
rsc               814 tools/crm_resource_runtime.c     rc = clear_rsc_fail_attrs(rsc, operation, interval_spec, node);
rsc               817 tools/crm_resource_runtime.c                  rsc->id, host_uname, pcmk_rc_str(rc));
rsc               822 tools/crm_resource_runtime.c         rc = clear_rsc_failures(out, controld_api, host_uname, rsc->id, operation,
rsc               825 tools/crm_resource_runtime.c         rc = clear_rsc_history(controld_api, host_uname, rsc->id, data_set);
rsc               829 tools/crm_resource_runtime.c                  rsc->id, host_uname, pcmk_strerror(rc));
rsc               831 tools/crm_resource_runtime.c         out->info(out, "Cleaned up %s on %s", rsc->id, host_uname);
rsc               900 tools/crm_resource_runtime.c cli_resource_check(pcmk__output_t *out, cib_t * cib_conn, pe_resource_t *rsc)
rsc               904 tools/crm_resource_runtime.c     pe_resource_t *parent = uber_parent(rsc);
rsc               914 tools/crm_resource_runtime.c     checks = cli_check_resource(rsc, role_s, managed);
rsc               936 tools/crm_resource_runtime.c generate_resource_params(pe_resource_t *rsc, pe_node_t *node,
rsc               948 tools/crm_resource_runtime.c     params = pe_rsc_params(rsc, node, data_set);
rsc               957 tools/crm_resource_runtime.c     get_meta_attributes(meta, rsc, node, data_set);
rsc               971 tools/crm_resource_runtime.c bool resource_is_running_on(pe_resource_t *rsc, const char *host)
rsc               977 tools/crm_resource_runtime.c     if (rsc == NULL) {
rsc               981 tools/crm_resource_runtime.c     rsc->fns->location(rsc, &hosts, TRUE);
rsc               986 tools/crm_resource_runtime.c             crm_trace("Resource %s is running on %s\n", rsc->id, host);
rsc               992 tools/crm_resource_runtime.c         crm_trace("Resource %s is not running on: %s\n", rsc->id, host);
rsc               996 tools/crm_resource_runtime.c         crm_trace("Resource %s is not running\n", rsc->id);
rsc              1021 tools/crm_resource_runtime.c         pe_resource_t *rsc = (pe_resource_t *) rIter->data;
rsc              1027 tools/crm_resource_runtime.c         if (rsc->variant == pe_group) {
rsc              1029 tools/crm_resource_runtime.c                                    get_active_resources(host, rsc->children));
rsc              1030 tools/crm_resource_runtime.c         } else if (resource_is_running_on(rsc, host)) {
rsc              1031 tools/crm_resource_runtime.c             active = g_list_append(active, strdup(rsc->id));
rsc              1193 tools/crm_resource_runtime.c max_delay_for_resource(pe_working_set_t * data_set, pe_resource_t *rsc) 
rsc              1198 tools/crm_resource_runtime.c     if(rsc && rsc->children) {
rsc              1201 tools/crm_resource_runtime.c         for(iter = rsc->children; iter; iter = iter->next) {
rsc              1212 tools/crm_resource_runtime.c     } else if(rsc) {
rsc              1213 tools/crm_resource_runtime.c         char *key = crm_strdup_printf("%s_%s_0", rsc->id, RSC_STOP);
rsc              1214 tools/crm_resource_runtime.c         pe_action_t *stop = custom_action(rsc, key, RSC_STOP, NULL, TRUE, FALSE, data_set);
rsc              1238 tools/crm_resource_runtime.c         pe_resource_t *rsc = pe_find_resource(data_set->resources, (const char *)item->data);
rsc              1240 tools/crm_resource_runtime.c         delay = max_delay_for_resource(data_set, rsc);
rsc              1244 tools/crm_resource_runtime.c             crm_trace("Calculated new delay of %.1fs due to %s", seconds, rsc->id);
rsc              1270 tools/crm_resource_runtime.c cli_resource_restart(pcmk__output_t *out, pe_resource_t *rsc, pe_node_t *node,
rsc              1292 tools/crm_resource_runtime.c     pe_resource_t *parent = uber_parent(rsc);
rsc              1295 tools/crm_resource_runtime.c     const char *id = rsc->clone_name ? rsc->clone_name : rsc->id;
rsc              1301 tools/crm_resource_runtime.c     if (pe_rsc_is_bundled(rsc)) {
rsc              1302 tools/crm_resource_runtime.c         rsc = parent->parent;
rsc              1305 tools/crm_resource_runtime.c     running = resource_is_running_on(rsc, host);
rsc              1309 tools/crm_resource_runtime.c             lookup_id = strdup(rsc->id);
rsc              1311 tools/crm_resource_runtime.c             lookup_id = clone_strip(rsc->id);
rsc              1314 tools/crm_resource_runtime.c         rsc = parent->fns->find_rsc(parent, lookup_id, node, pe_find_any|pe_find_current);
rsc              1316 tools/crm_resource_runtime.c         running = resource_is_running_on(rsc, host);
rsc              1328 tools/crm_resource_runtime.c     rsc_id = strdup(rsc->id);
rsc              1331 tools/crm_resource_runtime.c         lookup_id = strdup(rsc->id);
rsc              1333 tools/crm_resource_runtime.c         lookup_id = clone_strip(rsc->id);
rsc              1337 tools/crm_resource_runtime.c         if (pe_rsc_is_clone(rsc) || pe_bundle_replicas(rsc)) {
rsc              1398 tools/crm_resource_runtime.c         rc = cli_resource_update_attribute(rsc, rsc_id, NULL, XML_TAG_META_SETS,
rsc              1476 tools/crm_resource_runtime.c         rc = cli_resource_update_attribute(rsc, rsc_id, NULL, XML_TAG_META_SETS,
rsc              1483 tools/crm_resource_runtime.c         rc = cli_resource_delete_attribute(rsc, rsc_id, NULL, XML_TAG_META_SETS,
rsc              1503 tools/crm_resource_runtime.c     while (waiting_for_starts(list_delta, rsc, host)) {
rsc              1510 tools/crm_resource_runtime.c         for (lpc = 0; (lpc < step_timeout_s) && waiting_for_starts(list_delta, rsc, host); lpc++) {
rsc              1556 tools/crm_resource_runtime.c         cli_resource_update_attribute(rsc, rsc_id, NULL, XML_TAG_META_SETS, NULL,
rsc              1561 tools/crm_resource_runtime.c         cli_resource_delete_attribute(rsc, rsc_id, NULL, XML_TAG_META_SETS, NULL,
rsc              1876 tools/crm_resource_runtime.c cli_resource_execute(pe_resource_t *rsc, const char *requested_name,
rsc              1891 tools/crm_resource_runtime.c         if(pe_rsc_is_clone(rsc)) {
rsc              1892 tools/crm_resource_runtime.c             GList *nodes = cli_resource_search(rsc, requested_name, data_set);
rsc              1895 tools/crm_resource_runtime.c                          rsc_action, rsc->id);
rsc              1905 tools/crm_resource_runtime.c     if(pe_rsc_is_clone(rsc)) {
rsc              1907 tools/crm_resource_runtime.c         rsc = rsc->children->data;
rsc              1910 tools/crm_resource_runtime.c     if(rsc->variant == pe_group) {
rsc              1913 tools/crm_resource_runtime.c     } else if (rsc->variant == pe_container || pe_rsc_is_bundled(rsc)) {
rsc              1918 tools/crm_resource_runtime.c     rclass = crm_element_value(rsc->xml, XML_AGENT_ATTR_CLASS);
rsc              1919 tools/crm_resource_runtime.c     rprov = crm_element_value(rsc->xml, XML_AGENT_ATTR_PROVIDER);
rsc              1920 tools/crm_resource_runtime.c     rtype = crm_element_value(rsc->xml, XML_ATTR_TYPE);
rsc              1922 tools/crm_resource_runtime.c     params = generate_resource_params(rsc, NULL /* @TODO use local node */,
rsc              1926 tools/crm_resource_runtime.c         timeout_ms = pe_get_configured_timeout(rsc, get_action(rsc_action), data_set);
rsc              1929 tools/crm_resource_runtime.c     rid = pe_rsc_is_anon_clone(rsc->parent)? requested_name : rsc->id;
rsc              1939 tools/crm_resource_runtime.c cli_resource_move(pe_resource_t *rsc, const char *rsc_id, const char *host_name,
rsc              1955 tools/crm_resource_runtime.c     if (promoted_role_only && !pcmk_is_set(rsc->flags, pe_rsc_promotable)) {
rsc              1956 tools/crm_resource_runtime.c         pe_resource_t *p = uber_parent(rsc);
rsc              1959 tools/crm_resource_runtime.c             out->info(out, "Using parent '%s' for move instead of '%s'.", rsc->id, rsc_id);
rsc              1961 tools/crm_resource_runtime.c             rsc = p;
rsc              1969 tools/crm_resource_runtime.c     current = pe__find_active_requires(rsc, &count);
rsc              1971 tools/crm_resource_runtime.c     if (pcmk_is_set(rsc->flags, pe_rsc_promotable)) {
rsc              1976 tools/crm_resource_runtime.c         for(iter = rsc->children; iter; iter = iter->next) {
rsc              1981 tools/crm_resource_runtime.c                 rsc = child;
rsc              1994 tools/crm_resource_runtime.c         if (pe_rsc_is_clone(rsc)) {
rsc              2023 tools/crm_resource_runtime.c               rsc->id, (promoted_role_only? " (promoted)" : ""),