pacemaker  2.1.7-0f7f88312f
Scalable High-Availability cluster resource manager
Macros | Typedefs | Functions
clone.c File Reference
#include <crm_internal.h>
#include <stdint.h>
#include <crm/pengine/rules.h>
#include <crm/pengine/status.h>
#include <crm/pengine/internal.h>
#include <pe_status_private.h>
#include <crm/msg_xml.h>
#include <crm/common/output.h>
#include <crm/common/xml_internal.h>
#include <crm/common/scheduler_internal.h>
Include dependency graph for clone.c:

Go to the source code of this file.

Macros

#define PROMOTED_INSTANCES   PCMK__ROLE_PROMOTED
 
#define UNPROMOTED_INSTANCES   PCMK__ROLE_UNPROMOTED
 
#define get_clone_variant_data(data, rsc)
 

Typedefs

typedef struct clone_variant_data_s clone_variant_data_t
 

Functions

int pe__clone_max (const pcmk_resource_t *clone)
 
int pe__clone_node_max (const pcmk_resource_t *clone)
 
int pe__clone_promoted_max (const pcmk_resource_t *clone)
 
int pe__clone_promoted_node_max (const pcmk_resource_t *clone)
 
void pe__force_anon (const char *standard, pcmk_resource_t *rsc, const char *rid, pcmk_scheduler_t *scheduler)
 
pcmk_resource_tfind_clone_instance (const pcmk_resource_t *rsc, const char *sub_id)
 
pcmk_resource_tpe__create_clone_child (pcmk_resource_t *rsc, pcmk_scheduler_t *scheduler)
 
gboolean clone_unpack (pcmk_resource_t *rsc, pcmk_scheduler_t *scheduler)
 
gboolean clone_active (pcmk_resource_t *rsc, gboolean all)
 
bool is_set_recursive (const pcmk_resource_t *rsc, long long flag, bool any)
 
void clone_print (pcmk_resource_t *rsc, const char *pre_text, long options, void *print_data)
 
 PCMK__OUTPUT_ARGS ("clone", "uint32_t", "pcmk_resource_t *", "GList *", "GList *")
 
void clone_free (pcmk_resource_t *rsc)
 
enum rsc_role_e clone_resource_state (const pcmk_resource_t *rsc, gboolean current)
 
bool pe__is_universal_clone (const pcmk_resource_t *rsc, const pcmk_scheduler_t *scheduler)
 
gboolean pe__clone_is_filtered (const pcmk_resource_t *rsc, GList *only_rsc, gboolean check_parent)
 
const char * pe__clone_child_id (const pcmk_resource_t *rsc)
 
bool pe__clone_is_ordered (const pcmk_resource_t *clone)
 
int pe__set_clone_flag (pcmk_resource_t *clone, enum pcmk__clone_flags flag)
 
bool pe__clone_flag_is_set (const pcmk_resource_t *clone, uint32_t flags)
 
void pe__create_promotable_pseudo_ops (pcmk_resource_t *clone, bool any_promoting, bool any_demoting)
 
void pe__create_clone_notifications (pcmk_resource_t *clone)
 
void pe__free_clone_notification_data (pcmk_resource_t *clone)
 
void pe__create_clone_notif_pseudo_ops (pcmk_resource_t *clone, pcmk_action_t *start, pcmk_action_t *started, pcmk_action_t *stop, pcmk_action_t *stopped)
 
unsigned int pe__clone_max_per_node (const pcmk_resource_t *rsc)
 

Macro Definition Documentation

◆ get_clone_variant_data

#define get_clone_variant_data (   data,
  rsc 
)
Value:
CRM_ASSERT((rsc != NULL) && (rsc->variant == pcmk_rsc_variant_clone)); \
data = (clone_variant_data_t *) rsc->variant_opaque;
struct clone_variant_data_s clone_variant_data_t
#define CRM_ASSERT(expr)
Definition: results.h:42
Clone resource.
Definition: resources.h:36

Definition at line 50 of file clone.c.

◆ PROMOTED_INSTANCES

#define PROMOTED_INSTANCES   PCMK__ROLE_PROMOTED

Definition at line 27 of file clone.c.

◆ UNPROMOTED_INSTANCES

#define UNPROMOTED_INSTANCES   PCMK__ROLE_UNPROMOTED

Definition at line 28 of file clone.c.

Typedef Documentation

◆ clone_variant_data_t

typedef struct clone_variant_data_s clone_variant_data_t

Function Documentation

◆ clone_active()

gboolean clone_active ( pcmk_resource_t rsc,
gboolean  all 
)

Definition at line 442 of file clone.c.

◆ clone_free()

void clone_free ( pcmk_resource_t rsc)

Definition at line 1180 of file clone.c.

◆ clone_print()

void clone_print ( pcmk_resource_t rsc,
const char *  pre_text,
long  options,
void *  print_data 
)
Deprecated:
This function will be removed in a future release

Definition at line 593 of file clone.c.

◆ clone_resource_state()

enum rsc_role_e clone_resource_state ( const pcmk_resource_t rsc,
gboolean  current 
)

Definition at line 1214 of file clone.c.

◆ clone_unpack()

gboolean clone_unpack ( pcmk_resource_t rsc,
pcmk_scheduler_t scheduler 
)

Definition at line 325 of file clone.c.

◆ find_clone_instance()

pcmk_resource_t* find_clone_instance ( const pcmk_resource_t rsc,
const char *  sub_id 
)

Definition at line 227 of file clone.c.

◆ is_set_recursive()

bool is_set_recursive ( const pcmk_resource_t rsc,
long long  flag,
bool  any 
)

Definition at line 558 of file clone.c.

◆ PCMK__OUTPUT_ARGS()

PCMK__OUTPUT_ARGS ( "clone"  ,
"uint32_t"  ,
"pcmk_resource_t *"  ,
"GList *"  ,
"GList *"   
)

Definition at line 817 of file clone.c.

◆ pe__clone_child_id()

const char* pe__clone_child_id ( const pcmk_resource_t rsc)

Definition at line 1284 of file clone.c.

◆ pe__clone_flag_is_set()

bool pe__clone_flag_is_set ( const pcmk_resource_t clone,
uint32_t  flags 
)

Definition at line 1343 of file clone.c.

◆ pe__clone_is_filtered()

gboolean pe__clone_is_filtered ( const pcmk_resource_t rsc,
GList *  only_rsc,
gboolean  check_parent 
)

Definition at line 1254 of file clone.c.

◆ pe__clone_is_ordered()

bool pe__clone_is_ordered ( const pcmk_resource_t clone)

Definition at line 1300 of file clone.c.

◆ pe__clone_max()

int pe__clone_max ( const pcmk_resource_t clone)

Definition at line 63 of file clone.c.

◆ pe__clone_max_per_node()

unsigned int pe__clone_max_per_node ( const pcmk_resource_t rsc)

Definition at line 1510 of file clone.c.

◆ pe__clone_node_max()

int pe__clone_node_max ( const pcmk_resource_t clone)

Definition at line 80 of file clone.c.

◆ pe__clone_promoted_max()

int pe__clone_promoted_max ( const pcmk_resource_t clone)

Definition at line 97 of file clone.c.

◆ pe__clone_promoted_node_max()

int pe__clone_promoted_node_max ( const pcmk_resource_t clone)

Definition at line 114 of file clone.c.

◆ pe__create_clone_child()

pcmk_resource_t* pe__create_clone_child ( pcmk_resource_t rsc,
pcmk_scheduler_t scheduler 
)

Definition at line 245 of file clone.c.

◆ pe__create_clone_notif_pseudo_ops()

void pe__create_clone_notif_pseudo_ops ( pcmk_resource_t clone,
pcmk_action_t start,
pcmk_action_t started,
pcmk_action_t stop,
pcmk_action_t stopped 
)

Definition at line 1475 of file clone.c.

◆ pe__create_clone_notifications()

void pe__create_clone_notifications ( pcmk_resource_t clone)

Definition at line 1426 of file clone.c.

◆ pe__create_promotable_pseudo_ops()

void pe__create_promotable_pseudo_ops ( pcmk_resource_t clone,
bool  any_promoting,
bool  any_demoting 
)

Definition at line 1362 of file clone.c.

◆ pe__force_anon()

void pe__force_anon ( const char *  standard,
pcmk_resource_t rsc,
const char *  rid,
pcmk_scheduler_t scheduler 
)

Definition at line 210 of file clone.c.

◆ pe__free_clone_notification_data()

void pe__free_clone_notification_data ( pcmk_resource_t clone)

Definition at line 1445 of file clone.c.

◆ pe__is_universal_clone()

bool pe__is_universal_clone ( const pcmk_resource_t rsc,
const pcmk_scheduler_t scheduler 
)

Definition at line 1240 of file clone.c.

◆ pe__set_clone_flag()

int pe__set_clone_flag ( pcmk_resource_t clone,
enum pcmk__clone_flags  flag 
)

Definition at line 1319 of file clone.c.