pcmk_children 49 daemons/pacemakerd/pcmkd_subdaemons.c static pcmk_child_t pcmk_children[] = { pcmk_children 135 daemons/pacemakerd/pcmkd_subdaemons.c int rc = child_liveness(&pcmk_children[next_child]); pcmk_children 138 daemons/pacemakerd/pcmkd_subdaemons.c pcmk_children[next_child].name, pcmk_children 139 daemons/pacemakerd/pcmkd_subdaemons.c (long long) PCMK__SPECIAL_PID_AS_0(pcmk_children[next_child].pid), pcmk_children 144 daemons/pacemakerd/pcmkd_subdaemons.c pcmk_children[next_child].check_count = 0; pcmk_children 148 daemons/pacemakerd/pcmkd_subdaemons.c pcmk_children[next_child].check_count++; pcmk_children 149 daemons/pacemakerd/pcmkd_subdaemons.c if (pcmk_children[next_child].check_count >= PCMK_PROCESS_CHECK_RETRIES) { pcmk_children 152 daemons/pacemakerd/pcmkd_subdaemons.c pcmk_children[next_child].name, pcmk_children 154 daemons/pacemakerd/pcmkd_subdaemons.c pcmk_children[next_child].pid), pcmk_children 155 daemons/pacemakerd/pcmkd_subdaemons.c pcmk_children[next_child].check_count); pcmk_children 156 daemons/pacemakerd/pcmkd_subdaemons.c stop_child(&pcmk_children[next_child], SIGKILL); pcmk_children 157 daemons/pacemakerd/pcmkd_subdaemons.c if (pcmk_children[next_child].respawn) { pcmk_children 161 daemons/pacemakerd/pcmkd_subdaemons.c pcmk_children[next_child].check_count = 0; pcmk_children 165 daemons/pacemakerd/pcmkd_subdaemons.c pcmk_children[next_child].name, pcmk_children 167 daemons/pacemakerd/pcmkd_subdaemons.c pcmk_children[next_child].pid), pcmk_children 168 daemons/pacemakerd/pcmkd_subdaemons.c pcmk_children[next_child].check_count); pcmk_children 169 daemons/pacemakerd/pcmkd_subdaemons.c if (pcmk_children[next_child].respawn) { pcmk_children 183 daemons/pacemakerd/pcmkd_subdaemons.c if (!pcmk_children[next_child].respawn) { pcmk_children 190 daemons/pacemakerd/pcmkd_subdaemons.c if (pcmk_children[next_child].respawn_count <= MAX_RESPAWN) { pcmk_children 194 daemons/pacemakerd/pcmkd_subdaemons.c if (!pcmk_children[next_child].active_before_startup) { pcmk_children 197 daemons/pacemakerd/pcmkd_subdaemons.c pcmk_children[next_child].name, pcmk_children 199 daemons/pacemakerd/pcmkd_subdaemons.c pcmk_children[next_child].pid)); pcmk_children 202 daemons/pacemakerd/pcmkd_subdaemons.c if (pcmk_children[next_child].respawn) { pcmk_children 204 daemons/pacemakerd/pcmkd_subdaemons.c pcmk_children[next_child].name, pcmk_children 206 daemons/pacemakerd/pcmkd_subdaemons.c pcmk_children[next_child].pid)); pcmk_children 210 daemons/pacemakerd/pcmkd_subdaemons.c pcmk_children[next_child].name, pcmk_children 212 daemons/pacemakerd/pcmkd_subdaemons.c pcmk_children[next_child].pid)); pcmk_children 214 daemons/pacemakerd/pcmkd_subdaemons.c pcmk_process_exit(&(pcmk_children[next_child])); pcmk_children 222 daemons/pacemakerd/pcmkd_subdaemons.c if (next_child >= PCMK__NELEM(pcmk_children)) { pcmk_children 334 daemons/pacemakerd/pcmkd_subdaemons.c static int phase = PCMK__NELEM(pcmk_children) - 1; pcmk_children 337 daemons/pacemakerd/pcmkd_subdaemons.c if (phase == PCMK__NELEM(pcmk_children) - 1) { pcmk_children 343 daemons/pacemakerd/pcmkd_subdaemons.c pcmk_child_t *child = &(pcmk_children[phase]); pcmk_children 700 daemons/pacemakerd/pcmkd_subdaemons.c for (i = 0; i < PCMK__NELEM(pcmk_children); i++) { pcmk_children 702 daemons/pacemakerd/pcmkd_subdaemons.c if ((pcmk_children[i].endpoint == NULL) pcmk_children 703 daemons/pacemakerd/pcmkd_subdaemons.c || (pcmk_children[i].respawn_count < 0)) { pcmk_children 707 daemons/pacemakerd/pcmkd_subdaemons.c rc = child_liveness(&pcmk_children[i]); pcmk_children 717 daemons/pacemakerd/pcmkd_subdaemons.c pcmk_children[i].respawn_count = rounds; pcmk_children 720 daemons/pacemakerd/pcmkd_subdaemons.c if (pcmk_children[i].pid == PCMK__SPECIAL_PID) { pcmk_children 726 daemons/pacemakerd/pcmkd_subdaemons.c pcmk_children[i].endpoint); pcmk_children 728 daemons/pacemakerd/pcmkd_subdaemons.c } else if (pcmk_children[i].respawn_count == WAIT_TRIES) { pcmk_children 737 daemons/pacemakerd/pcmkd_subdaemons.c pcmk_children[i].name, WAIT_TRIES - 1); pcmk_children 745 daemons/pacemakerd/pcmkd_subdaemons.c pcmk_children[i].name, pcmk_children 752 daemons/pacemakerd/pcmkd_subdaemons.c " attempt(s)", pcmk_children[i].endpoint, pcmk_children 753 daemons/pacemakerd/pcmkd_subdaemons.c WAIT_TRIES - pcmk_children[i].respawn_count); pcmk_children 758 daemons/pacemakerd/pcmkd_subdaemons.c pcmk_children[i].name, pcmk_children 760 daemons/pacemakerd/pcmkd_subdaemons.c pcmk_children[i].pid)); pcmk_children 761 daemons/pacemakerd/pcmkd_subdaemons.c pcmk_children[i].respawn_count = -1; /* 0~keep watching */ pcmk_children 762 daemons/pacemakerd/pcmkd_subdaemons.c pcmk_children[i].active_before_startup = true; pcmk_children 765 daemons/pacemakerd/pcmkd_subdaemons.c if (pcmk_children[i].respawn_count == WAIT_TRIES) { pcmk_children 768 daemons/pacemakerd/pcmkd_subdaemons.c pcmk_children[i].endpoint, pcmk_children 770 daemons/pacemakerd/pcmkd_subdaemons.c pcmk_children[i].pid)); pcmk_children 777 daemons/pacemakerd/pcmkd_subdaemons.c pcmk_children[i].endpoint, pcmk_children 779 daemons/pacemakerd/pcmkd_subdaemons.c pcmk_children[i].pid), pcmk_children 780 daemons/pacemakerd/pcmkd_subdaemons.c WAIT_TRIES - pcmk_children[i].respawn_count); pcmk_children 784 daemons/pacemakerd/pcmkd_subdaemons.c pcmk_children[i].name, pcmk_rc_str(rc), rc); pcmk_children 793 daemons/pacemakerd/pcmkd_subdaemons.c for (i = 0; i < PCMK__NELEM(pcmk_children); i++) { pcmk_children 794 daemons/pacemakerd/pcmkd_subdaemons.c pcmk_children[i].respawn_count = 0; /* restore pristine state */ pcmk_children 814 daemons/pacemakerd/pcmkd_subdaemons.c for (int i = 0; i < PCMK__NELEM(pcmk_children); i++) { pcmk_children 815 daemons/pacemakerd/pcmkd_subdaemons.c if (pcmk_children[i].pid != 0) { pcmk_children 820 daemons/pacemakerd/pcmkd_subdaemons.c start_child(&(pcmk_children[i])); pcmk_children 845 daemons/pacemakerd/pcmkd_subdaemons.c for (int i = 0; i < PCMK__NELEM(pcmk_children); i++) { pcmk_children 846 daemons/pacemakerd/pcmkd_subdaemons.c if (!pcmk_children[i].needs_retry || pcmk_children[i].pid != 0) { pcmk_children 850 daemons/pacemakerd/pcmkd_subdaemons.c crm_notice("Respawning cluster-based subdaemon: %s", pcmk_children[i].name); pcmk_children 851 daemons/pacemakerd/pcmkd_subdaemons.c if (start_child(&pcmk_children[i])) { pcmk_children 852 daemons/pacemakerd/pcmkd_subdaemons.c pcmk_children[i].needs_retry = false;