dependent 23 include/pcmki/pcmki_scheduler.h pcmk_resource_t *dependent; // The resource being colocated dependent 135 lib/pacemaker/libpacemaker_private.h int (*apply_coloc_score)(pcmk_resource_t *dependent, dependent 530 lib/pacemaker/libpacemaker_private.h *dependent, dependent 538 lib/pacemaker/libpacemaker_private.h void pcmk__apply_coloc_to_scores(pcmk_resource_t *dependent, dependent 543 lib/pacemaker/libpacemaker_private.h int pcmk__apply_coloc_to_priority(pcmk_resource_t *dependent, dependent 558 lib/pacemaker/libpacemaker_private.h void pcmk__colocation_intersect_nodes(pcmk_resource_t *dependent, dependent 591 lib/pacemaker/libpacemaker_private.h pcmk_resource_t *dependent, pcmk_resource_t *primary, dependent 630 lib/pacemaker/libpacemaker_private.h if (pcmk_is_set(colocation->dependent->flags, dependent 726 lib/pacemaker/libpacemaker_private.h pcmk_resource_t *dependent, dependent 732 lib/pacemaker/libpacemaker_private.h pcmk_resource_t *dependent, dependent 778 lib/pacemaker/libpacemaker_private.h int pcmk__primitive_apply_coloc_score(pcmk_resource_t *dependent, dependent 822 lib/pacemaker/libpacemaker_private.h int pcmk__group_apply_coloc_score(pcmk_resource_t *dependent, dependent 891 lib/pacemaker/libpacemaker_private.h int pcmk__clone_apply_coloc_score(pcmk_resource_t *dependent, dependent 944 lib/pacemaker/libpacemaker_private.h int pcmk__bundle_apply_coloc_score(pcmk_resource_t *dependent, dependent 49 lib/pacemaker/pcmk_output.c PCMK_XA_RSC, cons->dependent->id, dependent 477 lib/pacemaker/pcmk_output.c if (pcmk_is_set(cons->dependent->flags, pcmk_rsc_detect_loop)) { dependent 479 lib/pacemaker/pcmk_output.c cons->dependent->id, cons->id); dependent 483 lib/pacemaker/pcmk_output.c hdr = colocations_header(cons->dependent, cons, true); dependent 490 lib/pacemaker/pcmk_output.c out->message(out, "locations-list", cons->dependent); dependent 493 lib/pacemaker/pcmk_output.c cons->dependent, recursive); dependent 523 lib/pacemaker/pcmk_output.c if (pcmk_is_set(cons->dependent->flags, pcmk_rsc_detect_loop)) { dependent 524 lib/pacemaker/pcmk_output.c colocations_xml_node(out, cons->dependent, cons); dependent 528 lib/pacemaker/pcmk_output.c colocations_xml_node(out, cons->dependent, cons); dependent 529 lib/pacemaker/pcmk_output.c do_locations_list_xml(out, cons->dependent, false); dependent 533 lib/pacemaker/pcmk_output.c cons->dependent, recursive); dependent 418 lib/pacemaker/pcmk_sched_bundle.c compatible_container(const pcmk_resource_t *dependent, dependent 425 lib/pacemaker/pcmk_sched_bundle.c match_data.node = dependent->fns->location(dependent, NULL, 0); dependent 434 lib/pacemaker/pcmk_sched_bundle.c scratch = g_hash_table_get_values(dependent->allowed_nodes); dependent 455 lib/pacemaker/pcmk_sched_bundle.c pcmk_resource_t *dependent; dependent 478 lib/pacemaker/pcmk_sched_bundle.c replica->container->cmds->apply_coloc_score(coloc_data->dependent, dependent 525 lib/pacemaker/pcmk_sched_bundle.c pcmk__bundle_apply_coloc_score(pcmk_resource_t *dependent, dependent 530 lib/pacemaker/pcmk_sched_bundle.c struct coloc_data coloc_data = { colocation, dependent, NULL, 0 }; dependent 536 lib/pacemaker/pcmk_sched_bundle.c CRM_ASSERT(pcmk__is_bundle(primary) && pcmk__is_primitive(dependent) dependent 547 lib/pacemaker/pcmk_sched_bundle.c colocation->id, dependent->id, primary->id, dependent 553 lib/pacemaker/pcmk_sched_bundle.c if (colocation->dependent->variant > pcmk_rsc_variant_group) { dependent 556 lib/pacemaker/pcmk_sched_bundle.c primary_container = compatible_container(dependent, primary); dependent 559 lib/pacemaker/pcmk_sched_bundle.c dependent->id, primary_container->id); dependent 561 lib/pacemaker/pcmk_sched_bundle.c return dependent->cmds->apply_coloc_score(dependent, dependent 570 lib/pacemaker/pcmk_sched_bundle.c dependent->id, primary->id); dependent 571 lib/pacemaker/pcmk_sched_bundle.c pcmk__assign_resource(dependent, NULL, true, true); dependent 576 lib/pacemaker/pcmk_sched_bundle.c dependent->id, primary->id); dependent 585 lib/pacemaker/pcmk_sched_bundle.c pcmk__colocation_intersect_nodes(dependent, primary, colocation, dependent 204 lib/pacemaker/pcmk_sched_clone.c const pcmk_resource_t *dependent = colocation->dependent; dependent 207 lib/pacemaker/pcmk_sched_clone.c if (dependent->variant <= pcmk_rsc_variant_group) { dependent 212 lib/pacemaker/pcmk_sched_clone.c if (!crm_is_true(g_hash_table_lookup(dependent->meta, dependent 220 lib/pacemaker/pcmk_sched_clone.c if (dependent->fns->max_per_node(dependent) dependent 224 lib/pacemaker/pcmk_sched_clone.c dependent->id, colocation->primary->id); dependent 247 lib/pacemaker/pcmk_sched_clone.c pcmk__clone_apply_coloc_score(pcmk_resource_t *dependent, dependent 262 lib/pacemaker/pcmk_sched_clone.c && pcmk__is_primitive(dependent)); dependent 273 lib/pacemaker/pcmk_sched_clone.c colocation->id, dependent->id, primary->id, dependent 280 lib/pacemaker/pcmk_sched_clone.c if (pcmk_is_set(dependent->flags, pcmk_rsc_unassigned)) { dependent 282 lib/pacemaker/pcmk_sched_clone.c pcmk__update_dependent_with_promotable(primary, dependent, dependent 290 lib/pacemaker/pcmk_sched_clone.c dependent, dependent 299 lib/pacemaker/pcmk_sched_clone.c primary_instance = pcmk__find_compatible_instance(dependent, primary, dependent 304 lib/pacemaker/pcmk_sched_clone.c dependent->id, primary_instance->id); dependent 306 lib/pacemaker/pcmk_sched_clone.c return dependent->cmds->apply_coloc_score(dependent, dependent 313 lib/pacemaker/pcmk_sched_clone.c "any instance of %s", dependent->id, primary->id); dependent 314 lib/pacemaker/pcmk_sched_clone.c pcmk__assign_resource(dependent, NULL, true, true); dependent 320 lib/pacemaker/pcmk_sched_clone.c dependent->id, primary->id); dependent 343 lib/pacemaker/pcmk_sched_clone.c pcmk__colocation_intersect_nodes(dependent, primary, colocation, dependent 352 lib/pacemaker/pcmk_sched_clone.c int instance_delta = instance->cmds->apply_coloc_score(dependent, dependent 53 lib/pacemaker/pcmk_sched_colocation.c const pcmk__colocation_t *colocation2, bool dependent) dependent 65 lib/pacemaker/pcmk_sched_colocation.c if (dependent) { dependent 66 lib/pacemaker/pcmk_sched_colocation.c rsc1 = colocation1->dependent; dependent 67 lib/pacemaker/pcmk_sched_colocation.c rsc2 = colocation2->dependent; dependent 72 lib/pacemaker/pcmk_sched_colocation.c CRM_ASSERT(colocation1->dependent != NULL); dependent 181 lib/pacemaker/pcmk_sched_colocation.c colocation->id, colocation->dependent->id, dependent 241 lib/pacemaker/pcmk_sched_colocation.c colocation->id, colocation->dependent->id, dependent 349 lib/pacemaker/pcmk_sched_colocation.c pcmk_resource_t *dependent, pcmk_resource_t *primary, dependent 357 lib/pacemaker/pcmk_sched_colocation.c if ((dependent == NULL) || (primary == NULL)) { dependent 364 lib/pacemaker/pcmk_sched_colocation.c pcmk__rsc_trace(dependent, dependent 366 lib/pacemaker/pcmk_sched_colocation.c id, dependent->id, primary->id); dependent 383 lib/pacemaker/pcmk_sched_colocation.c new_con->dependent = dependent; dependent 391 lib/pacemaker/pcmk_sched_colocation.c pcmk__add_this_with(&(dependent->rsc_cons), new_con, dependent); dependent 394 lib/pacemaker/pcmk_sched_colocation.c dependent->cluster->colocation_constraints = g_list_prepend( dependent 395 lib/pacemaker/pcmk_sched_colocation.c dependent->cluster->colocation_constraints, new_con); dependent 398 lib/pacemaker/pcmk_sched_colocation.c anti_colocation_order(dependent, new_con->dependent_role, primary, dependent 400 lib/pacemaker/pcmk_sched_colocation.c anti_colocation_order(primary, new_con->primary_role, dependent, dependent 745 lib/pacemaker/pcmk_sched_colocation.c pcmk_resource_t *dependent = NULL; dependent 748 lib/pacemaker/pcmk_sched_colocation.c dependent = pcmk__find_constraint_resource(scheduler->resources, dependent 765 lib/pacemaker/pcmk_sched_colocation.c if (dependent == NULL) { dependent 775 lib/pacemaker/pcmk_sched_colocation.c } else if ((dependent_instance != NULL) && !pcmk__is_clone(dependent)) { dependent 789 lib/pacemaker/pcmk_sched_colocation.c dependent = find_clone_instance(dependent, dependent_instance); dependent 790 lib/pacemaker/pcmk_sched_colocation.c if (dependent == NULL) { dependent 818 lib/pacemaker/pcmk_sched_colocation.c flags = pcmk__coloc_explicit | unpack_influence(id, dependent, influence_s); dependent 819 lib/pacemaker/pcmk_sched_colocation.c pcmk__new_colocation(id, attr, score_i, dependent, primary, dependent 834 lib/pacemaker/pcmk_sched_colocation.c pcmk_resource_t *dependent = NULL; dependent 868 lib/pacemaker/pcmk_sched_colocation.c if (!pcmk__valid_resource_or_tag(scheduler, dependent_id, &dependent, dependent 882 lib/pacemaker/pcmk_sched_colocation.c if ((dependent != NULL) && (primary != NULL)) { dependent 1140 lib/pacemaker/pcmk_sched_colocation.c mark_action_blocked(colocation->dependent, PCMK_ACTION_PROMOTE, dependent 1143 lib/pacemaker/pcmk_sched_colocation.c mark_action_blocked(colocation->dependent, PCMK_ACTION_START, dependent 1200 lib/pacemaker/pcmk_sched_colocation.c pcmk__colocation_affects(const pcmk_resource_t *dependent, dependent 1207 lib/pacemaker/pcmk_sched_colocation.c CRM_ASSERT((dependent != NULL) && (primary != NULL) dependent 1215 lib/pacemaker/pcmk_sched_colocation.c dependent_role_rsc = get_resource_for_role(dependent); dependent 1230 lib/pacemaker/pcmk_sched_colocation.c if (!preview && !pcmk_is_set(dependent->flags, pcmk_rsc_unassigned)) { dependent 1238 lib/pacemaker/pcmk_sched_colocation.c if (dependent->allocated_to == NULL) { dependent 1240 lib/pacemaker/pcmk_sched_colocation.c colocation->id, dependent->id); dependent 1245 lib/pacemaker/pcmk_sched_colocation.c if (!pcmk__same_node(primary_node, dependent->allocated_to)) { dependent 1248 lib/pacemaker/pcmk_sched_colocation.c dependent->id, primary->id, dependent 1249 lib/pacemaker/pcmk_sched_colocation.c pcmk__node_name(dependent->allocated_to), dependent 1256 lib/pacemaker/pcmk_sched_colocation.c if (pcmk__same_node(dependent->allocated_to, primary_node)) { dependent 1259 lib/pacemaker/pcmk_sched_colocation.c dependent->id, primary->id, dependent 1304 lib/pacemaker/pcmk_sched_colocation.c pcmk__apply_coloc_to_scores(pcmk_resource_t *dependent, dependent 1323 lib/pacemaker/pcmk_sched_colocation.c work = pcmk__copy_node_table(dependent->allowed_nodes); dependent 1329 lib/pacemaker/pcmk_sched_colocation.c pcmk__rsc_trace(dependent, dependent 1332 lib/pacemaker/pcmk_sched_colocation.c colocation->id, dependent->id, dependent 1339 lib/pacemaker/pcmk_sched_colocation.c if (pcmk__str_eq(pcmk__colocation_node_attr(node, attr, dependent), dependent 1351 lib/pacemaker/pcmk_sched_colocation.c pcmk__rsc_trace(dependent, dependent 1354 lib/pacemaker/pcmk_sched_colocation.c colocation->id, dependent->id, dependent 1369 lib/pacemaker/pcmk_sched_colocation.c pcmk__rsc_trace(dependent, dependent 1372 lib/pacemaker/pcmk_sched_colocation.c dependent->id, pcmk__node_name(node), dependent 1381 lib/pacemaker/pcmk_sched_colocation.c g_hash_table_destroy(dependent->allowed_nodes); dependent 1382 lib/pacemaker/pcmk_sched_colocation.c dependent->allowed_nodes = work; dependent 1386 lib/pacemaker/pcmk_sched_colocation.c pcmk__rsc_info(dependent, dependent 1388 lib/pacemaker/pcmk_sched_colocation.c dependent->id, primary->id); dependent 1410 lib/pacemaker/pcmk_sched_colocation.c pcmk__apply_coloc_to_priority(pcmk_resource_t *dependent, dependent 1420 lib/pacemaker/pcmk_sched_colocation.c CRM_ASSERT((dependent != NULL) && (primary != NULL) dependent 1423 lib/pacemaker/pcmk_sched_colocation.c if (dependent->allocated_to == NULL) { dependent 1444 lib/pacemaker/pcmk_sched_colocation.c dependent_value = pcmk__colocation_node_attr(dependent->allocated_to, attr, dependent 1445 lib/pacemaker/pcmk_sched_colocation.c dependent); dependent 1472 lib/pacemaker/pcmk_sched_colocation.c dependent->priority = pcmk__add_scores(priority_delta, dependent->priority); dependent 1473 lib/pacemaker/pcmk_sched_colocation.c pcmk__rsc_trace(dependent, dependent 1475 lib/pacemaker/pcmk_sched_colocation.c colocation->id, dependent->id, dependent 1476 lib/pacemaker/pcmk_sched_colocation.c pcmk_readable_score(dependent->priority), dependent 1503 lib/pacemaker/pcmk_sched_colocation.c if ((colocation != NULL) && (rsc == colocation->dependent) dependent 1666 lib/pacemaker/pcmk_sched_colocation.c || !allowed_on_one(colocation->dependent)) { dependent 1825 lib/pacemaker/pcmk_sched_colocation.c other = constraint->dependent; dependent 1831 lib/pacemaker/pcmk_sched_colocation.c constraint->id, constraint->dependent->id, dependent 1882 lib/pacemaker/pcmk_sched_colocation.c pcmk_resource_t *source_rsc = colocation->dependent; dependent 1920 lib/pacemaker/pcmk_sched_colocation.c pcmk__colocation_intersect_nodes(pcmk_resource_t *dependent, dependent 1928 lib/pacemaker/pcmk_sched_colocation.c CRM_ASSERT((dependent != NULL) && (primary != NULL) dependent 1931 lib/pacemaker/pcmk_sched_colocation.c g_hash_table_iter_init(&iter, dependent->allowed_nodes); dependent 1939 lib/pacemaker/pcmk_sched_colocation.c pcmk__rsc_trace(dependent, dependent 1941 lib/pacemaker/pcmk_sched_colocation.c dependent->id, pcmk__node_name(dependent_node), dependent 1947 lib/pacemaker/pcmk_sched_colocation.c pcmk__rsc_trace(dependent, dependent 1951 lib/pacemaker/pcmk_sched_colocation.c dependent->id, pcmk__node_name(dependent_node), dependent 353 lib/pacemaker/pcmk_sched_group.c colocate_group_with(pcmk_resource_t *dependent, const pcmk_resource_t *primary, dependent 358 lib/pacemaker/pcmk_sched_group.c if (dependent->children == NULL) { dependent 363 lib/pacemaker/pcmk_sched_group.c colocation->id, dependent->id, primary->id); dependent 365 lib/pacemaker/pcmk_sched_group.c if (pe__group_flag_is_set(dependent, pcmk__group_colocated)) { dependent 367 lib/pacemaker/pcmk_sched_group.c pcmk_resource_t *member = dependent->children->data; dependent 376 lib/pacemaker/pcmk_sched_group.c dependent->id, primary->id); dependent 381 lib/pacemaker/pcmk_sched_group.c for (GList *iter = dependent->children; iter != NULL; dependent 401 lib/pacemaker/pcmk_sched_group.c dependent->priority = pcmk__add_scores(priority_delta, dependent 402 lib/pacemaker/pcmk_sched_group.c dependent->priority); dependent 404 lib/pacemaker/pcmk_sched_group.c pcmk__rsc_trace(dependent, dependent 407 lib/pacemaker/pcmk_sched_group.c colocation->id, dependent->id, dependent 408 lib/pacemaker/pcmk_sched_group.c pcmk_readable_score(dependent->priority), dependent 430 lib/pacemaker/pcmk_sched_group.c colocate_with_group(pcmk_resource_t *dependent, const pcmk_resource_t *primary, dependent 438 lib/pacemaker/pcmk_sched_group.c colocation->id, dependent->id, primary->id); dependent 463 lib/pacemaker/pcmk_sched_group.c return member->cmds->apply_coloc_score(dependent, member, colocation, dependent 470 lib/pacemaker/pcmk_sched_group.c dependent->id, primary->id); dependent 481 lib/pacemaker/pcmk_sched_group.c instance_delta = member->cmds->apply_coloc_score(dependent, member, dependent 504 lib/pacemaker/pcmk_sched_group.c pcmk__group_apply_coloc_score(pcmk_resource_t *dependent, dependent 509 lib/pacemaker/pcmk_sched_group.c CRM_ASSERT((dependent != NULL) && (primary != NULL) dependent 513 lib/pacemaker/pcmk_sched_group.c return colocate_group_with(dependent, primary, colocation); dependent 517 lib/pacemaker/pcmk_sched_group.c CRM_ASSERT(pcmk__is_primitive(dependent)); dependent 519 lib/pacemaker/pcmk_sched_group.c return colocate_with_group(dependent, primary, colocation); dependent 163 lib/pacemaker/pcmk_sched_instances.c pcmk_resource_t *other = colocation->dependent; dependent 1098 lib/pacemaker/pcmk_sched_primitive.c pcmk__primitive_apply_coloc_score(pcmk_resource_t *dependent, dependent 1105 lib/pacemaker/pcmk_sched_primitive.c CRM_ASSERT((dependent != NULL) && (primary != NULL) dependent 1110 lib/pacemaker/pcmk_sched_primitive.c return primary->cmds->apply_coloc_score(dependent, primary, colocation, dependent 1114 lib/pacemaker/pcmk_sched_primitive.c filter_results = pcmk__colocation_affects(dependent, primary, colocation, dependent 1116 lib/pacemaker/pcmk_sched_primitive.c pcmk__rsc_trace(dependent, "%s %s with %s (%s, score=%d, filter=%d)", dependent 1118 lib/pacemaker/pcmk_sched_primitive.c dependent->id, primary->id, colocation->id, dependent 1124 lib/pacemaker/pcmk_sched_primitive.c return pcmk__apply_coloc_to_priority(dependent, primary, dependent 1128 lib/pacemaker/pcmk_sched_primitive.c pcmk__apply_coloc_to_scores(dependent, primary, colocation); dependent 355 lib/pacemaker/pcmk_sched_promotable.c pcmk_resource_t *dependent = colocation->dependent; dependent 366 lib/pacemaker/pcmk_sched_promotable.c colocation->id, colocation->dependent->id, dependent 369 lib/pacemaker/pcmk_sched_promotable.c dependent->cmds->add_colocated_node_scores(dependent, clone, clone->id, dependent 1156 lib/pacemaker/pcmk_sched_promotable.c update_dependent_allowed_nodes(pcmk_resource_t *dependent, dependent 1174 lib/pacemaker/pcmk_sched_promotable.c colocation->id, colocation->dependent->id, dependent 1176 lib/pacemaker/pcmk_sched_promotable.c attr, colocation->score, dependent->id); dependent 1178 lib/pacemaker/pcmk_sched_promotable.c g_hash_table_iter_init(&iter, dependent->allowed_nodes); dependent 1181 lib/pacemaker/pcmk_sched_promotable.c dependent); dependent 1204 lib/pacemaker/pcmk_sched_promotable.c pcmk_resource_t *dependent, dependent 1221 lib/pacemaker/pcmk_sched_promotable.c update_dependent_allowed_nodes(dependent, primary, node, dependent 1240 lib/pacemaker/pcmk_sched_promotable.c colocation->id, colocation->dependent->id, dependent 1241 lib/pacemaker/pcmk_sched_promotable.c colocation->primary->id, dependent->id); dependent 1242 lib/pacemaker/pcmk_sched_promotable.c pcmk__colocation_intersect_nodes(dependent, primary, colocation, dependent 1260 lib/pacemaker/pcmk_sched_promotable.c pcmk_resource_t *dependent, dependent 1266 lib/pacemaker/pcmk_sched_promotable.c primary_instance = pcmk__find_compatible_instance(dependent, primary, dependent 1272 lib/pacemaker/pcmk_sched_promotable.c int new_priority = pcmk__add_scores(dependent->priority, dependent 1278 lib/pacemaker/pcmk_sched_promotable.c colocation->id, colocation->dependent->id, dependent 1279 lib/pacemaker/pcmk_sched_promotable.c colocation->primary->id, dependent->id, dependent 1280 lib/pacemaker/pcmk_sched_promotable.c pcmk_readable_score(dependent->priority), dependent 1283 lib/pacemaker/pcmk_sched_promotable.c dependent->priority = new_priority; dependent 1291 lib/pacemaker/pcmk_sched_promotable.c colocation->id, colocation->dependent->id, dependent 1292 lib/pacemaker/pcmk_sched_promotable.c colocation->primary->id, dependent->id); dependent 1293 lib/pacemaker/pcmk_sched_promotable.c dependent->priority = -PCMK_SCORE_INFINITY; dependent 283 lib/pacemaker/pcmk_sched_resource.c const pcmk_resource_t *dependent = constraint->dependent; dependent 285 lib/pacemaker/pcmk_sched_resource.c if (dependent == orig_rsc) { dependent 289 lib/pacemaker/pcmk_sched_resource.c if (pcmk__is_clone(rsc) && !pcmk__is_clone(dependent)) { dependent 294 lib/pacemaker/pcmk_sched_resource.c (pcmk__colocation_affects(dependent, rsc, constraint, dependent 296 lib/pacemaker/pcmk_sched_resource.c add_colocated_resources(dependent, orig_rsc, &colocated_rscs); dependent 479 tools/crm_resource_runtime.c if (pcmk_is_set(cons->dependent->flags, pcmk_rsc_detect_loop) dependent 485 tools/crm_resource_runtime.c attr_name, attr_value, cons->dependent->id); dependent 486 tools/crm_resource_runtime.c update_attribute(cons->dependent, cons->dependent->id, NULL,