pcmk_children 96 lib/ais/plugin.c static crm_child_t pcmk_children[] = { pcmk_children 155 lib/ais/plugin.c for (lpc = 0; lpc < SIZEOF(pcmk_children); lpc++) { pcmk_children 156 lib/ais/plugin.c if (pcmk_children[lpc].pid != 0) { pcmk_children 157 lib/ais/plugin.c procs |= pcmk_children[lpc].flag; pcmk_children 426 lib/ais/plugin.c for (; lpc < SIZEOF(pcmk_children); lpc++) { pcmk_children 427 lib/ais/plugin.c if (crm_proc_mgmtd & pcmk_children[lpc].flag) { pcmk_children 429 lib/ais/plugin.c pcmk_children[lpc].start_seq = 0; pcmk_children 455 lib/ais/plugin.c for (; lpc < SIZEOF(pcmk_children); lpc++) { pcmk_children 456 lib/ais/plugin.c if (pcmk_children[lpc].pid > 0) { pcmk_children 458 lib/ais/plugin.c pid_t pid = wait4(pcmk_children[lpc].pid, &status, WNOHANG, NULL); pcmk_children 464 lib/ais/plugin.c ais_perror("Call to wait4(%s) failed", pcmk_children[lpc].name); pcmk_children 469 lib/ais/plugin.c pcmk_children[lpc].pid = 0; pcmk_children 470 lib/ais/plugin.c pcmk_children[lpc].conn = NULL; pcmk_children 471 lib/ais/plugin.c pcmk_children[lpc].async_conn = NULL; pcmk_children 478 lib/ais/plugin.c pcmk_children[lpc].name, sig, pid, pcmk_children 485 lib/ais/plugin.c "Child process %s exited (pid=%d, rc=%d)", pcmk_children[lpc].name, pcmk_children 490 lib/ais/plugin.c " to be respawned", pcmk_children[lpc].name); pcmk_children 491 lib/ais/plugin.c pcmk_children[lpc].respawn = FALSE; pcmk_children 505 lib/ais/plugin.c pcmk_children[lpc].respawn_count += 1; pcmk_children 506 lib/ais/plugin.c if (pcmk_children[lpc].respawn_count > MAX_RESPAWN) { pcmk_children 507 lib/ais/plugin.c ais_err("Child respawn count exceeded by %s", pcmk_children[lpc].name); pcmk_children 508 lib/ais/plugin.c pcmk_children[lpc].respawn = FALSE; pcmk_children 510 lib/ais/plugin.c if (pcmk_children[lpc].respawn) { pcmk_children 511 lib/ais/plugin.c ais_notice("Respawning failed child process: %s", pcmk_children[lpc].name); pcmk_children 512 lib/ais/plugin.c spawn_child(&(pcmk_children[lpc])); pcmk_children 580 lib/ais/plugin.c static int max = SIZEOF(pcmk_children); pcmk_children 668 lib/ais/plugin.c if (start_seq == pcmk_children[lpc].start_seq) { pcmk_children 669 lib/ais/plugin.c spawn_child(&(pcmk_children[lpc])); pcmk_children 832 lib/ais/plugin.c for (; lpc < SIZEOF(pcmk_children); lpc++) { pcmk_children 833 lib/ais/plugin.c if (pcmk_children[lpc].conn == conn) { pcmk_children 836 lib/ais/plugin.c pcmk_children[lpc].pid = 0; pcmk_children 838 lib/ais/plugin.c pcmk_children[lpc].conn = NULL; pcmk_children 839 lib/ais/plugin.c pcmk_children[lpc].async_conn = NULL; pcmk_children 840 lib/ais/plugin.c client = pcmk_children[lpc].name; pcmk_children 1006 lib/ais/plugin.c type, mutable->host.local, pcmk_children[type].conn, mutable->host.type, crm_msg_ais, pcmk_children 1007 lib/ais/plugin.c mutable->sender.pid, pcmk_children[type].pid, ((int)SIZEOF(pcmk_children))); pcmk_children 1009 lib/ais/plugin.c if (type > crm_msg_none && type < SIZEOF(pcmk_children)) { pcmk_children 1017 lib/ais/plugin.c AIS_CHECK(transient || mutable->sender.pid == pcmk_children[type].pid, pcmk_children 1019 lib/ais/plugin.c pcmk_children[type].pid); pcmk_children 1027 lib/ais/plugin.c && pcmk_children[type].conn == NULL && mutable->host.type == crm_msg_ais) { pcmk_children 1032 lib/ais/plugin.c conn, pcmk_children[type].name, pcmk_children[type].pid); pcmk_children 1033 lib/ais/plugin.c pcmk_children[type].conn = conn; pcmk_children 1034 lib/ais/plugin.c pcmk_children[type].async_conn = async_conn; pcmk_children 1037 lib/ais/plugin.c if (pcmk_children[type].flags & crm_flag_members) { pcmk_children 1042 lib/ais/plugin.c membership_seq, pcmk_children[type].name); pcmk_children 1070 lib/ais/plugin.c static int max = SIZEOF(pcmk_children); pcmk_children 1073 lib/ais/plugin.c if (pcmk_children[crm_msg_crmd].conn || pcmk_children[crm_msg_stonith_ng].conn) { pcmk_children 1098 lib/ais/plugin.c if (phase != pcmk_children[lpc].start_seq) { pcmk_children 1102 lib/ais/plugin.c if (pcmk_children[lpc].pid) { pcmk_children 1107 lib/ais/plugin.c if (pcmk_children[lpc].respawn) { pcmk_children 1110 lib/ais/plugin.c pcmk_children[lpc].respawn = FALSE; pcmk_children 1111 lib/ais/plugin.c stop_child(&(pcmk_children[lpc]), SIGTERM); pcmk_children 1114 lib/ais/plugin.c pid = wait4(pcmk_children[lpc].pid, &status, WNOHANG, NULL); pcmk_children 1117 lib/ais/plugin.c pcmk_children[lpc].name, pcmk_children[lpc].pid); pcmk_children 1124 lib/ais/plugin.c pcmk_children[lpc].name, pcmk_children[lpc].pid, pcmk_children 1125 lib/ais/plugin.c pcmk_children[lpc].start_seq); pcmk_children 1126 lib/ais/plugin.c if (max_wait <= 0 && phase < pcmk_children[crm_msg_crmd].start_seq) { pcmk_children 1128 lib/ais/plugin.c pcmk_children[lpc].name); pcmk_children 1129 lib/ais/plugin.c stop_child(&(pcmk_children[lpc]), SIGKILL); pcmk_children 1138 lib/ais/plugin.c ais_notice("%s confirmed stopped", pcmk_children[lpc].name); pcmk_children 1139 lib/ais/plugin.c pcmk_children[lpc].async_conn = NULL; pcmk_children 1140 lib/ais/plugin.c pcmk_children[lpc].conn = NULL; pcmk_children 1141 lib/ais/plugin.c pcmk_children[lpc].pid = 0; pcmk_children 1496 lib/ais/plugin.c } else if (dest >= SIZEOF(pcmk_children)) { pcmk_children 1521 lib/ais/plugin.c if (dest == crm_msg_pe && ais_str_eq(pcmk_children[7].name, lookup)) { pcmk_children 1528 lib/ais/plugin.c conn = pcmk_children[children_index].async_conn; pcmk_children 67 mcp/pacemaker.c static pcmk_child_t pcmk_children[] = { pcmk_children 90 mcp/pacemaker.c pcmk_children[pcmk_child_crmd].uid = NULL; pcmk_children 92 mcp/pacemaker.c pcmk_children[pcmk_child_crmd].uid = CRM_DAEMON_USER; pcmk_children 100 mcp/pacemaker.c pcmk_children[pcmk_child_mgmtd].start_seq = 7; pcmk_children 102 mcp/pacemaker.c pcmk_children[pcmk_child_mgmtd].start_seq = 0; pcmk_children 112 mcp/pacemaker.c for (lpc = 0; lpc < SIZEOF(pcmk_children); lpc++) { pcmk_children 113 mcp/pacemaker.c if (pcmk_children[lpc].pid != 0) { pcmk_children 114 mcp/pacemaker.c procs |= pcmk_children[lpc].flag; pcmk_children 374 mcp/pacemaker.c static int max = SIZEOF(pcmk_children); pcmk_children 390 mcp/pacemaker.c pcmk_child_t *child = &(pcmk_children[lpc]); pcmk_children 403 mcp/pacemaker.c if (phase < pcmk_children[pcmk_child_crmd].start_seq) { pcmk_children 693 mcp/pacemaker.c static int max = SIZEOF(pcmk_children); pcmk_children 698 mcp/pacemaker.c if (pcmk_children[lpc].active_before_startup == FALSE) { pcmk_children 701 mcp/pacemaker.c } else if (start_seq != pcmk_children[lpc].start_seq) { pcmk_children 704 mcp/pacemaker.c const char *name = pcmk_children[lpc].name; pcmk_children 705 mcp/pacemaker.c if (pcmk_children[lpc].flag == crm_proc_stonith_ng) { pcmk_children 709 mcp/pacemaker.c if (crm_pid_active(pcmk_children[lpc].pid, name) != 1) { pcmk_children 711 mcp/pacemaker.c name, pcmk_children[lpc].pid); pcmk_children 712 mcp/pacemaker.c pcmk_process_exit(&(pcmk_children[lpc])); pcmk_children 742 mcp/pacemaker.c int max = SIZEOF(pcmk_children); pcmk_children 749 mcp/pacemaker.c const char *name = pcmk_children[i].name; pcmk_children 751 mcp/pacemaker.c if (pcmk_children[i].start_seq == 0) { pcmk_children 754 mcp/pacemaker.c if (pcmk_children[i].flag == crm_proc_stonith_ng) { pcmk_children 759 mcp/pacemaker.c pcmk_children[i].pid = pid; pcmk_children 760 mcp/pacemaker.c pcmk_children[i].active_before_startup = TRUE; pcmk_children 780 mcp/pacemaker.c static int max = SIZEOF(pcmk_children); pcmk_children 786 mcp/pacemaker.c if (pcmk_children[lpc].pid) { pcmk_children 791 mcp/pacemaker.c if (start_seq == pcmk_children[lpc].start_seq) { pcmk_children 792 mcp/pacemaker.c start_child(&(pcmk_children[lpc]));