Skip to content

Commit

Permalink
mxqd: free structures to remove leftover memory in reaper process
Browse files Browse the repository at this point in the history
  • Loading branch information
mariux committed Nov 3, 2015
1 parent 9d57ac3 commit 7699dae
Showing 1 changed file with 19 additions and 4 deletions.
23 changes: 19 additions & 4 deletions mxqd.c
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,7 @@ volatile sig_atomic_t global_sigterm_cnt=0;
volatile sig_atomic_t global_sigquit_cnt=0;

int mxq_redirect_output(char *stdout_fname, char *stderr_fname);
void server_free(struct mxq_server *server);

static void print_usage(void)
{
Expand Down Expand Up @@ -1060,8 +1061,15 @@ unsigned long start_job(struct mxq_group_list *glist)
getpgrp());

mx_log_info("starting reaper process.");
mx_mysql_finish(&server->mysql);

res = reaper_process(server, glist, job);

mxq_job_free_content(job);

mx_log_info("shutting down reaper, bye bye.");
mx_log_finish();
server_free(server);
_exit(res<0 ? EX__MAX+1 : 0);
}

Expand Down Expand Up @@ -1365,7 +1373,7 @@ void server_dump(struct mxq_server *server)
mx_log_info("====================== SERVER DUMP END ======================");
}

void server_close(struct mxq_server *server)
void server_free(struct mxq_server *server)
{
struct mxq_user_list *ulist, *unext;
struct mxq_group_list *glist, *gnext;
Expand All @@ -1386,14 +1394,21 @@ void server_close(struct mxq_server *server)
mx_free_null(ulist);
}

mx_free_null(server->boot_id);
mx_free_null(server->host_id);
mx_free_null(server->finished_jobsdir);
mx_flock_free(server->flock);
}

void server_close(struct mxq_server *server)
{
if (server->pidfilename)
unlink(server->pidfilename);

mx_funlock(server->flock);
server->flock = NULL;

mx_free_null(server->boot_id);
mx_free_null(server->host_id);
mx_free_null(server->finished_jobsdir);
server_free(server);
}

int killall(struct mxq_server *server, int sig, unsigned int pgrp)
Expand Down

0 comments on commit 7699dae

Please sign in to comment.