/**************************************************************************\ * To test for memory leaks, set MEMORY_LEAK_DEBUG to 1 using * "configure --enable-memory-leak-debug" then execute * $ valgrind --tool=memcheck --leak-check=yes --num-callers=8 \ * --leak-resolution=med ./slurmd -Dc >valg.slurmd.out 2>&1 * * Then exercise the slurmd functionality before executing * > scontrol shutdown * * All allocated memory should be freed \**************************************************************************/ static int _slurmd_fini(void) { switch_g_node_fini(); jobacct_gather_fini(); acct_gather_profile_fini(); save_cred_state(conf->vctx); switch_fini(); slurmd_task_fini(); slurm_conf_destroy(); slurm_proctrack_fini(); slurm_auth_fini(); node_fini2(); gres_plugin_fini(); slurm_topo_fini(); slurmd_req(NULL); /* purge memory allocated by slurmd_req() */ fini_setproctitle(); slurm_select_fini(); spank_slurmd_exit(); cpu_freq_fini(); job_container_fini(); acct_gather_conf_destroy(); return SLURM_SUCCESS; }
int main(int argc, char **argv) { int status = 1; slurm_ctl_conf_t *slurm_ctl_conf_ptr = slurm_conf_lock(); slurm_ctl_conf_ptr->msg_timeout = 3; slurm_conf_unlock(); #if SLURM_VERSION_NUMBER < SLURM_VERSION_NUM(18,8,0) for (uint32_t i = 1; i < 2; i++) { #else for (uint32_t i = 0; i < slurm_ctl_conf_ptr->control_cnt; i++) { #endif printf("slurm_ping(%i) == %i\n", i, slurm_ping(i)); if (slurm_ping(i) == SLURM_SUCCESS) { status = 0; break; } } slurm_conf_destroy(); return status; }