rsc_rh 31 include/pcmki/pcmki_sched_utils.h pe_resource_t *rsc_lh, pe_resource_t *rsc_rh, rsc_rh 72 include/pcmki/pcmki_sched_utils.h filter_colocation_constraint(pe_resource_t * rsc_lh, pe_resource_t * rsc_rh, rsc_rh 43 include/pcmki/pcmki_scheduler.h pe_resource_t *rsc_rh; rsc_rh 125 include/pcmki/pcmki_scheduler.h rsc = colocation->rsc_rh; rsc_rh 49 lib/pacemaker/pcmk_output.c "with-rsc", cons->rsc_rh->id, rsc_rh 368 lib/pacemaker/pcmk_output.c if (pcmk_is_set(cons->rsc_rh->flags, pe_rsc_allocating)) { rsc_rh 369 lib/pacemaker/pcmk_output.c out->list_item(out, NULL, "%s (id=%s - loop)", cons->rsc_rh->id, cons->id); rsc_rh 373 lib/pacemaker/pcmk_output.c hdr = colocations_header(cons->rsc_rh, cons, FALSE); rsc_rh 380 lib/pacemaker/pcmk_output.c out->message(out, "locations-list", cons->rsc_rh); rsc_rh 382 lib/pacemaker/pcmk_output.c out->message(out, "rsc-is-colocated-with-list", cons->rsc_rh, recursive); rsc_rh 408 lib/pacemaker/pcmk_output.c if (pcmk_is_set(cons->rsc_rh->flags, pe_rsc_allocating)) { rsc_rh 409 lib/pacemaker/pcmk_output.c colocations_xml_node(out, cons->rsc_rh, cons); rsc_rh 413 lib/pacemaker/pcmk_output.c colocations_xml_node(out, cons->rsc_rh, cons); rsc_rh 414 lib/pacemaker/pcmk_output.c do_locations_list_xml(out, cons->rsc_rh, false); rsc_rh 417 lib/pacemaker/pcmk_output.c out->message(out, "rsc-is-colocated-with-list", cons->rsc_rh, recursive); rsc_rh 431 lib/pacemaker/pcmk_sched_bundle.c pcmk__bundle_rsc_colocation_lh(pe_resource_t *rsc, pe_resource_t *rsc_rh, rsc_rh 127 lib/pacemaker/pcmk_sched_clone.c hash1 = pcmk__native_merge_weights(constraint->rsc_rh, rsc1->id, hash1, rsc_rh 157 lib/pacemaker/pcmk_sched_clone.c hash2 = pcmk__native_merge_weights(constraint->rsc_rh, rsc2->id, hash2, rsc_rh 707 lib/pacemaker/pcmk_sched_clone.c rsc->id, constraint->rsc_rh->id); rsc_rh 708 lib/pacemaker/pcmk_sched_clone.c constraint->rsc_rh->cmds->allocate(constraint->rsc_rh, prefer, data_set); rsc_rh 1111 lib/pacemaker/pcmk_sched_clone.c clone_rsc_colocation_lh(pe_resource_t *rsc_lh, pe_resource_t *rsc_rh, rsc_rh 1123 lib/pacemaker/pcmk_sched_clone.c clone_rsc_colocation_rh(pe_resource_t *rsc_lh, pe_resource_t *rsc_rh, rsc_rh 1133 lib/pacemaker/pcmk_sched_clone.c CRM_CHECK(rsc_rh != NULL, pe_err("rsc_rh was NULL for %s", constraint->id); return); rsc_rh 1136 lib/pacemaker/pcmk_sched_clone.c pe_rsc_trace(rsc_rh, "Processing constraint %s: %s -> %s %d", rsc_rh 1137 lib/pacemaker/pcmk_sched_clone.c constraint->id, rsc_lh->id, rsc_rh->id, constraint->score); rsc_rh 1139 lib/pacemaker/pcmk_sched_clone.c if (pcmk_is_set(rsc_rh->flags, pe_rsc_promotable)) { rsc_rh 1140 lib/pacemaker/pcmk_sched_clone.c if (pcmk_is_set(rsc_rh->flags, pe_rsc_provisional)) { rsc_rh 1141 lib/pacemaker/pcmk_sched_clone.c pe_rsc_trace(rsc_rh, "%s is still provisional", rsc_rh->id); rsc_rh 1144 lib/pacemaker/pcmk_sched_clone.c pe_rsc_trace(rsc_rh, "Handling %s as a clone colocation", constraint->id); rsc_rh 1146 lib/pacemaker/pcmk_sched_clone.c promotable_colocation_rh(rsc_lh, rsc_rh, constraint, data_set); rsc_rh 1155 lib/pacemaker/pcmk_sched_clone.c if (copies_per_node(constraint->rsc_lh) != copies_per_node(constraint->rsc_rh)) { rsc_rh 1158 lib/pacemaker/pcmk_sched_clone.c constraint->rsc_lh->id, constraint->rsc_rh->id); rsc_rh 1165 lib/pacemaker/pcmk_sched_clone.c if (pcmk_is_set(rsc_rh->flags, pe_rsc_provisional)) { rsc_rh 1166 lib/pacemaker/pcmk_sched_clone.c pe_rsc_trace(rsc_rh, "%s is still provisional", rsc_rh->id); rsc_rh 1172 lib/pacemaker/pcmk_sched_clone.c rh_child = find_compatible_child(rsc_lh, rsc_rh, RSC_ROLE_UNKNOWN, rsc_rh 1176 lib/pacemaker/pcmk_sched_clone.c pe_rsc_debug(rsc_rh, "Pairing %s with %s", rsc_lh->id, rh_child->id); rsc_rh 1181 lib/pacemaker/pcmk_sched_clone.c crm_notice("Cannot pair %s with instance of %s", rsc_lh->id, rsc_rh->id); rsc_rh 1185 lib/pacemaker/pcmk_sched_clone.c pe_rsc_debug(rsc_rh, "Cannot pair %s with instance of %s", rsc_lh->id, rsc_rh->id); rsc_rh 1193 lib/pacemaker/pcmk_sched_clone.c gIter = rsc_rh->children; rsc_rh 1199 lib/pacemaker/pcmk_sched_clone.c pe_rsc_trace(rsc_rh, "Allowing %s: %s %d", constraint->id, chosen->details->uname, chosen->weight); rsc_rh 1209 lib/pacemaker/pcmk_sched_clone.c gIter = rsc_rh->children; rsc_rh 1223 lib/pacemaker/pcmk_sched_constraints.c CRM_ASSERT(rsc_constraint1->rsc_rh != NULL); rsc_rh 1271 lib/pacemaker/pcmk_sched_constraints.c CRM_ASSERT(rsc_constraint1->rsc_rh != NULL); rsc_rh 1273 lib/pacemaker/pcmk_sched_constraints.c if (rsc_constraint1->rsc_rh->priority > rsc_constraint2->rsc_rh->priority) { rsc_rh 1277 lib/pacemaker/pcmk_sched_constraints.c if (rsc_constraint1->rsc_rh->priority < rsc_constraint2->rsc_rh->priority) { rsc_rh 1282 lib/pacemaker/pcmk_sched_constraints.c if (rsc_constraint1->rsc_rh->variant > rsc_constraint2->rsc_rh->variant) { rsc_rh 1284 lib/pacemaker/pcmk_sched_constraints.c } else if (rsc_constraint1->rsc_rh->variant < rsc_constraint2->rsc_rh->variant) { rsc_rh 1292 lib/pacemaker/pcmk_sched_constraints.c if (rsc_constraint1->rsc_rh->variant == pe_clone) { rsc_rh 1293 lib/pacemaker/pcmk_sched_constraints.c if (pcmk_is_set(rsc_constraint1->rsc_rh->flags, pe_rsc_promotable) rsc_rh 1294 lib/pacemaker/pcmk_sched_constraints.c && !pcmk_is_set(rsc_constraint2->rsc_rh->flags, pe_rsc_promotable)) { rsc_rh 1296 lib/pacemaker/pcmk_sched_constraints.c } else if (!pcmk_is_set(rsc_constraint1->rsc_rh->flags, pe_rsc_promotable) rsc_rh 1297 lib/pacemaker/pcmk_sched_constraints.c && pcmk_is_set(rsc_constraint2->rsc_rh->flags, pe_rsc_promotable)) { rsc_rh 1302 lib/pacemaker/pcmk_sched_constraints.c return strcmp(rsc_constraint1->rsc_rh->id, rsc_constraint2->rsc_rh->id); rsc_rh 1349 lib/pacemaker/pcmk_sched_constraints.c pe_resource_t *rsc_lh, pe_resource_t *rsc_rh, rsc_rh 1359 lib/pacemaker/pcmk_sched_constraints.c if ((rsc_lh == NULL) || (rsc_rh == NULL)) { rsc_rh 1380 lib/pacemaker/pcmk_sched_constraints.c new_con->rsc_rh = rsc_rh; rsc_rh 1391 lib/pacemaker/pcmk_sched_constraints.c pe_rsc_trace(rsc_lh, "%s ==> %s (%s %d)", rsc_lh->id, rsc_rh->id, node_attr, score); rsc_rh 1395 lib/pacemaker/pcmk_sched_constraints.c rsc_rh->rsc_cons_lhs = rsc_rh 1396 lib/pacemaker/pcmk_sched_constraints.c g_list_insert_sorted(rsc_rh->rsc_cons_lhs, new_con, sort_cons_priority_lh); rsc_rh 1401 lib/pacemaker/pcmk_sched_constraints.c anti_colocation_order(rsc_lh, new_con->role_lh, rsc_rh, new_con->role_rh, data_set); rsc_rh 1402 lib/pacemaker/pcmk_sched_constraints.c anti_colocation_order(rsc_rh, new_con->role_rh, rsc_lh, new_con->role_lh, data_set); rsc_rh 2551 lib/pacemaker/pcmk_sched_constraints.c pe_resource_t *rsc_rh = pe_find_constraint_resource(data_set->resources, id_rh); rsc_rh 2558 lib/pacemaker/pcmk_sched_constraints.c } else if (rsc_rh == NULL) { rsc_rh 2569 lib/pacemaker/pcmk_sched_constraints.c } else if (instance_rh && pe_rsc_is_clone(rsc_rh) == FALSE) { rsc_rh 2587 lib/pacemaker/pcmk_sched_constraints.c rsc_rh = find_clone_instance(rsc_rh, instance_rh, data_set); rsc_rh 2588 lib/pacemaker/pcmk_sched_constraints.c if (rsc_rh == NULL) { rsc_rh 2606 lib/pacemaker/pcmk_sched_constraints.c pcmk__new_colocation(id, attr, score_i, rsc_lh, rsc_rh, state_lh, state_rh, rsc_rh 2620 lib/pacemaker/pcmk_sched_constraints.c pe_resource_t *rsc_rh = NULL; rsc_rh 2662 lib/pacemaker/pcmk_sched_constraints.c if (valid_resource_or_tag(data_set, id_rh, &rsc_rh, &tag_rh) == FALSE) { rsc_rh 2668 lib/pacemaker/pcmk_sched_constraints.c if (rsc_lh && rsc_rh) { rsc_rh 290 lib/pacemaker/pcmk_sched_group.c group_rsc_colocation_lh(pe_resource_t *rsc_lh, pe_resource_t *rsc_rh, rsc_rh 301 lib/pacemaker/pcmk_sched_group.c } else if (rsc_rh == NULL) { rsc_rh 313 lib/pacemaker/pcmk_sched_group.c rsc_rh, constraint, rsc_rh 320 lib/pacemaker/pcmk_sched_group.c rsc_lh->id, rsc_rh->id); rsc_rh 327 lib/pacemaker/pcmk_sched_group.c child_rsc->cmds->rsc_colocation_lh(child_rsc, rsc_rh, constraint, rsc_rh 333 lib/pacemaker/pcmk_sched_group.c group_rsc_colocation_rh(pe_resource_t *rsc_lh, pe_resource_t *rsc_rh, rsc_rh 337 lib/pacemaker/pcmk_sched_group.c GList *gIter = rsc_rh->children; rsc_rh 340 lib/pacemaker/pcmk_sched_group.c get_group_variant_data(group_data, rsc_rh); rsc_rh 343 lib/pacemaker/pcmk_sched_group.c pe_rsc_trace(rsc_rh, "Processing RH %s of constraint %s (LH is %s)", rsc_rh 344 lib/pacemaker/pcmk_sched_group.c rsc_rh->id, constraint->id, rsc_lh->id); rsc_rh 346 lib/pacemaker/pcmk_sched_group.c if (pcmk_is_set(rsc_rh->flags, pe_rsc_provisional)) { rsc_rh 368 lib/pacemaker/pcmk_sched_group.c " non-colocated group %s", rsc_lh->id, rsc_rh->id); rsc_rh 444 lib/pacemaker/pcmk_sched_native.c other = constraint->rsc_rh; rsc_rh 453 lib/pacemaker/pcmk_sched_native.c constraint->rsc_rh->id); rsc_rh 534 lib/pacemaker/pcmk_sched_native.c pe_resource_t *rsc_rh = constraint->rsc_rh; rsc_rh 543 lib/pacemaker/pcmk_sched_native.c rsc->id, rsc_rh->id, constraint->id, rsc_rh 545 lib/pacemaker/pcmk_sched_native.c rsc_rh->cmds->allocate(rsc_rh, NULL, data_set); rsc_rh 546 lib/pacemaker/pcmk_sched_native.c rsc->cmds->rsc_colocation_lh(rsc, rsc_rh, constraint, data_set); rsc_rh 548 lib/pacemaker/pcmk_sched_native.c pe_rsc_info(rsc, "%s: Rolling back scores from %s", rsc->id, rsc_rh->id); rsc_rh 568 lib/pacemaker/pcmk_sched_native.c constraint->rsc_rh->id); rsc_rh 1717 lib/pacemaker/pcmk_sched_native.c native_rsc_colocation_lh(pe_resource_t *rsc_lh, pe_resource_t *rsc_rh, rsc_rh 1725 lib/pacemaker/pcmk_sched_native.c } else if (constraint->rsc_rh == NULL) { rsc_rh 1731 lib/pacemaker/pcmk_sched_native.c rsc_rh->id); rsc_rh 1733 lib/pacemaker/pcmk_sched_native.c rsc_rh->cmds->rsc_colocation_rh(rsc_lh, rsc_rh, constraint, data_set); rsc_rh 1737 lib/pacemaker/pcmk_sched_native.c filter_colocation_constraint(pe_resource_t * rsc_lh, pe_resource_t * rsc_rh, rsc_rh 1741 lib/pacemaker/pcmk_sched_native.c if (!preview && pcmk_is_set(rsc_rh->flags, pe_rsc_provisional)) { rsc_rh 1756 lib/pacemaker/pcmk_sched_native.c const pe_node_t *rh_node = rsc_rh->allocated_to; rsc_rh 1769 lib/pacemaker/pcmk_sched_native.c rsc_lh->id, rsc_rh->id, rsc_rh 1781 lib/pacemaker/pcmk_sched_native.c rsc_lh->id, rsc_rh->id, rh_node->details->uname); rsc_rh 1795 lib/pacemaker/pcmk_sched_native.c && constraint->role_rh != RSC_ROLE_UNKNOWN && constraint->role_rh != rsc_rh->next_role) { rsc_rh 1808 lib/pacemaker/pcmk_sched_native.c && constraint->role_rh != RSC_ROLE_UNKNOWN && constraint->role_rh == rsc_rh->next_role) { rsc_rh 1818 lib/pacemaker/pcmk_sched_native.c influence_priority(pe_resource_t *rsc_lh, pe_resource_t *rsc_rh, rsc_rh 1826 lib/pacemaker/pcmk_sched_native.c if (!rsc_rh->allocated_to || !rsc_lh->allocated_to) { rsc_rh 1835 lib/pacemaker/pcmk_sched_native.c rh_value = pe_node_attribute_raw(rsc_rh->allocated_to, attribute); rsc_rh 1845 lib/pacemaker/pcmk_sched_native.c if (constraint->role_rh && (constraint->role_rh != rsc_rh->next_role)) { rsc_rh 1858 lib/pacemaker/pcmk_sched_native.c colocation_match(pe_resource_t *rsc_lh, pe_resource_t *rsc_rh, rsc_rh 1871 lib/pacemaker/pcmk_sched_native.c if (rsc_rh->allocated_to) { rsc_rh 1872 lib/pacemaker/pcmk_sched_native.c value = pe_node_attribute_raw(rsc_rh->allocated_to, attribute); rsc_rh 1883 lib/pacemaker/pcmk_sched_native.c if (rsc_rh->allocated_to == NULL) { rsc_rh 1886 lib/pacemaker/pcmk_sched_native.c constraint->score, rsc_rh->id); rsc_rh 1914 lib/pacemaker/pcmk_sched_native.c rsc_lh->id, rsc_rh->id); rsc_rh 1923 lib/pacemaker/pcmk_sched_native.c native_rsc_colocation_rh(pe_resource_t *rsc_lh, pe_resource_t *rsc_rh, rsc_rh 1930 lib/pacemaker/pcmk_sched_native.c CRM_ASSERT(rsc_rh); rsc_rh 1931 lib/pacemaker/pcmk_sched_native.c filter_results = filter_colocation_constraint(rsc_lh, rsc_rh, constraint, FALSE); rsc_rh 1934 lib/pacemaker/pcmk_sched_native.c rsc_lh->id, rsc_rh->id, constraint->id, constraint->score, filter_results); rsc_rh 1938 lib/pacemaker/pcmk_sched_native.c influence_priority(rsc_lh, rsc_rh, constraint); rsc_rh 1941 lib/pacemaker/pcmk_sched_native.c colocation_match(rsc_lh, rsc_rh, constraint); rsc_rh 336 lib/pacemaker/pcmk_sched_promotable.c pe_rsc_trace(rsc, "RHS: %s with %s: %d", constraint->rsc_lh->id, constraint->rsc_rh->id, rsc_rh 339 lib/pacemaker/pcmk_sched_promotable.c constraint->rsc_rh->cmds->merge_weights(constraint->rsc_rh, rsc->id, rsc_rh 358 lib/pacemaker/pcmk_sched_promotable.c pe_rsc_trace(rsc, "LHS: %s with %s: %d", constraint->rsc_lh->id, constraint->rsc_rh->id, rsc_rh 739 lib/pacemaker/pcmk_sched_promotable.c child_rsc->cmds->rsc_colocation_lh(child_rsc, cons->rsc_rh, cons, rsc_rh 974 lib/pacemaker/pcmk_sched_promotable.c promotable_colocation_rh(pe_resource_t *rsc_lh, pe_resource_t *rsc_rh, rsc_rh 983 lib/pacemaker/pcmk_sched_promotable.c for (gIter = rsc_rh->children; gIter != NULL; gIter = gIter->next) { rsc_rh 988 lib/pacemaker/pcmk_sched_promotable.c pe_rsc_trace(rsc_rh, "Processing: %s", child_rsc->id); rsc_rh 990 lib/pacemaker/pcmk_sched_promotable.c pe_rsc_trace(rsc_rh, "Applying: %s %s %s %d", child_rsc->id, rsc_rh 1014 lib/pacemaker/pcmk_sched_promotable.c pe_resource_t *rh_child = find_compatible_child(rsc_lh, rsc_rh, rsc_rh 295 lib/pacemaker/pcmk_sched_utilization.c pe_resource_t *rsc_rh = constraint->rsc_rh; rsc_rh 298 lib/pacemaker/pcmk_sched_utilization.c if (rsc_rh == orig_rsc) { rsc_rh 303 lib/pacemaker/pcmk_sched_utilization.c && filter_colocation_constraint(rsc, rsc_rh, constraint, TRUE) == influence_rsc_location) { rsc_rh 305 lib/pacemaker/pcmk_sched_utilization.c if (rsc_rh->variant == pe_group) { rsc_rh 307 lib/pacemaker/pcmk_sched_utilization.c colocated_rscs = group_find_colocated_rscs(colocated_rscs, rsc_rh, orig_rsc); rsc_rh 310 lib/pacemaker/pcmk_sched_utilization.c colocated_rscs = find_colocated_rscs(colocated_rscs, rsc_rh, orig_rsc);