pacemaker  2.1.7-0f7f88312f
Scalable High-Availability cluster resource manager
Macros | Functions
pcmk_sched_colocation.c File Reference
#include <crm_internal.h>
#include <stdbool.h>
#include <glib.h>
#include <crm/crm.h>
#include <crm/common/scheduler_internal.h>
#include <crm/pengine/status.h>
#include <pacemaker-internal.h>
#include "crm/common/util.h"
#include "crm/common/xml_internal.h"
#include "crm/msg_xml.h"
#include "libpacemaker_private.h"
Include dependency graph for pcmk_sched_colocation.c:

Go to the source code of this file.

Macros

#define INFINITY_HACK   (INFINITY * -100)
 

Functions

void pcmk__add_this_with (GList **list, const pcmk__colocation_t *colocation, const pcmk_resource_t *rsc)
 
void pcmk__add_this_with_list (GList **list, GList *addition, const pcmk_resource_t *rsc)
 
void pcmk__add_with_this (GList **list, const pcmk__colocation_t *colocation, const pcmk_resource_t *rsc)
 
void pcmk__add_with_this_list (GList **list, GList *addition, const pcmk_resource_t *rsc)
 
void pcmk__new_colocation (const char *id, const char *node_attr, int score, pcmk_resource_t *dependent, pcmk_resource_t *primary, const char *dependent_role, const char *primary_role, uint32_t flags)
 
void pcmk__unpack_colocation (xmlNode *xml_obj, pcmk_scheduler_t *scheduler)
 
void pcmk__block_colocation_dependents (pcmk_action_t *action)
 
enum pcmk__coloc_affects pcmk__colocation_affects (const pcmk_resource_t *dependent, const pcmk_resource_t *primary, const pcmk__colocation_t *colocation, bool preview)
 
void pcmk__apply_coloc_to_scores (pcmk_resource_t *dependent, const pcmk_resource_t *primary, const pcmk__colocation_t *colocation)
 
void pcmk__apply_coloc_to_priority (pcmk_resource_t *dependent, const pcmk_resource_t *primary, const pcmk__colocation_t *colocation)
 
void pcmk__add_colocated_node_scores (pcmk_resource_t *source_rsc, const pcmk_resource_t *target_rsc, const char *log_id, GHashTable **nodes, const pcmk__colocation_t *colocation, float factor, uint32_t flags)
 
void pcmk__add_dependent_scores (gpointer data, gpointer user_data)
 
void pcmk__colocation_intersect_nodes (pcmk_resource_t *dependent, const pcmk_resource_t *primary, const pcmk__colocation_t *colocation, const GList *primary_nodes, bool merge_scores)
 
GList * pcmk__with_this_colocations (const pcmk_resource_t *rsc)
 
GList * pcmk__this_with_colocations (const pcmk_resource_t *rsc)
 

Macro Definition Documentation

◆ INFINITY_HACK

#define INFINITY_HACK   (INFINITY * -100)

Definition at line 26 of file pcmk_sched_colocation.c.

Function Documentation

◆ pcmk__add_colocated_node_scores()

void pcmk__add_colocated_node_scores ( pcmk_resource_t source_rsc,
const pcmk_resource_t target_rsc,
const char *  log_id,
GHashTable **  nodes,
const pcmk__colocation_t colocation,
float  factor,
uint32_t  flags 
)

Definition at line 1666 of file pcmk_sched_colocation.c.

◆ pcmk__add_dependent_scores()

void pcmk__add_dependent_scores ( gpointer  data,
gpointer  user_data 
)

Definition at line 1790 of file pcmk_sched_colocation.c.

◆ pcmk__add_this_with()

void pcmk__add_this_with ( GList **  list,
const pcmk__colocation_t colocation,
const pcmk_resource_t rsc 
)

Definition at line 173 of file pcmk_sched_colocation.c.

◆ pcmk__add_this_with_list()

void pcmk__add_this_with_list ( GList **  list,
GList *  addition,
const pcmk_resource_t rsc 
)

Definition at line 200 of file pcmk_sched_colocation.c.

◆ pcmk__add_with_this()

void pcmk__add_with_this ( GList **  list,
const pcmk__colocation_t colocation,
const pcmk_resource_t rsc 
)

Definition at line 233 of file pcmk_sched_colocation.c.

◆ pcmk__add_with_this_list()

void pcmk__add_with_this_list ( GList **  list,
GList *  addition,
const pcmk_resource_t rsc 
)

Definition at line 260 of file pcmk_sched_colocation.c.

◆ pcmk__apply_coloc_to_priority()

void pcmk__apply_coloc_to_priority ( pcmk_resource_t dependent,
const pcmk_resource_t primary,
const pcmk__colocation_t colocation 
)

Definition at line 1381 of file pcmk_sched_colocation.c.

◆ pcmk__apply_coloc_to_scores()

void pcmk__apply_coloc_to_scores ( pcmk_resource_t dependent,
const pcmk_resource_t primary,
const pcmk__colocation_t colocation 
)

Definition at line 1280 of file pcmk_sched_colocation.c.

◆ pcmk__block_colocation_dependents()

void pcmk__block_colocation_dependents ( pcmk_action_t action)

Definition at line 1051 of file pcmk_sched_colocation.c.

◆ pcmk__colocation_affects()

enum pcmk__coloc_affects pcmk__colocation_affects ( const pcmk_resource_t dependent,
const pcmk_resource_t primary,
const pcmk__colocation_t colocation,
bool  preview 
)

Definition at line 1178 of file pcmk_sched_colocation.c.

◆ pcmk__colocation_intersect_nodes()

void pcmk__colocation_intersect_nodes ( pcmk_resource_t dependent,
const pcmk_resource_t primary,
const pcmk__colocation_t colocation,
const GList *  primary_nodes,
bool  merge_scores 
)

Definition at line 1833 of file pcmk_sched_colocation.c.

◆ pcmk__new_colocation()

void pcmk__new_colocation ( const char *  id,
const char *  node_attr,
int  score,
pcmk_resource_t dependent,
pcmk_resource_t primary,
const char *  dependent_role,
const char *  primary_role,
uint32_t  flags 
)

Definition at line 348 of file pcmk_sched_colocation.c.

◆ pcmk__this_with_colocations()

GList* pcmk__this_with_colocations ( const pcmk_resource_t rsc)

Definition at line 1901 of file pcmk_sched_colocation.c.

◆ pcmk__unpack_colocation()

void pcmk__unpack_colocation ( xmlNode *  xml_obj,
pcmk_scheduler_t scheduler 
)

Definition at line 937 of file pcmk_sched_colocation.c.

◆ pcmk__with_this_colocations()

GList* pcmk__with_this_colocations ( const pcmk_resource_t rsc)

Definition at line 1882 of file pcmk_sched_colocation.c.