From: Jens Axboe Date: Tue, 24 Oct 2006 07:33:42 +0000 (+0200) Subject: [PATCH] Revert some of the leak fixes X-Git-Tag: fio-1.8~52 X-Git-Url: https://git.kernel.dk/?a=commitdiff_plain;h=56f9498d8588d42df2a41a7eb7ebcffef013a339;p=fio.git [PATCH] Revert some of the leak fixes If the options are given as part of the global thread, the others inherit the memory and thus cannot free it. Since it doesn't matter a lot (we are talking a few hundred bytes), just leave the memory as-is. Signed-off-by: Jens Axboe --- diff --git a/fio.c b/fio.c index f81aec59..5673d9ef 100644 --- a/fio.c +++ b/fio.c @@ -586,14 +586,8 @@ static void *thread_main(void *data) if (init_random_state(td)) goto err; - if (td->ioscheduler) { - int ret = switch_ioscheduler(td); - - free(td->ioscheduler); - free(td->sysfs_root); - if (ret) - goto err; - } + if (td->ioscheduler && switch_ioscheduler(td)) + goto err; td_set_runstate(td, TD_INITIALIZED); fio_sem_up(&startup_sem); @@ -604,10 +598,8 @@ static void *thread_main(void *data) gettimeofday(&td->epoch, NULL); - if (td->exec_prerun) { + if (td->exec_prerun) system(td->exec_prerun); - free(td->exec_prerun); - } while (td->loops--) { getrusage(RUSAGE_SELF, &td->ru_start); @@ -656,10 +648,8 @@ static void *thread_main(void *data) finish_log(td, td->clat_log, "clat"); if (td->write_iolog) write_iolog_close(td); - if (td->exec_postrun) { + if (td->exec_postrun) system(td->exec_postrun); - free(td->exec_postrun); - } if (exitall_on_terminate) terminate_threads(td->groupid); diff --git a/log.c b/log.c index 91ac0830..17a4cdf7 100644 --- a/log.c +++ b/log.c @@ -177,8 +177,6 @@ int init_iolog(struct thread_data *td) else if (td->write_iolog) ret = init_iolog_write(td); - free(td->iolog_file); - td->iolog_file = NULL; return 0; }