From: Jens Axboe Date: Sat, 5 Mar 2016 02:50:41 +0000 (-0700) Subject: Fix double free of td zone state index X-Git-Tag: fio-2.7~10 X-Git-Url: https://git.kernel.dk/?p=fio.git;a=commitdiff_plain;h=7c4d0fb7e9e038000978b43b5674f9ad049d36b9 Fix double free of td zone state index Signed-off-by: Jens Axboe --- diff --git a/backend.c b/backend.c index 6083a51e..7f57c65a 100644 --- a/backend.c +++ b/backend.c @@ -1711,6 +1711,15 @@ err: cgroup_shutdown(td, &cgroup_mnt); verify_free_state(td); + if (td->zone_state_index) { + int i; + + for (i = 0; i < DDIR_RWDIR_CNT; i++) + free(td->zone_state_index[i]); + free(td->zone_state_index); + td->zone_state_index = NULL; + } + if (fio_option_is_set(o, cpumask)) { ret = fio_cpuset_exit(&o->cpumask); if (ret) diff --git a/options.c b/options.c index 3ae09064..bc2d0ed6 100644 --- a/options.c +++ b/options.c @@ -4417,14 +4417,6 @@ void fio_options_free(struct thread_data *td) free(td->eo); td->eo = NULL; } - if (td->zone_state_index) { - int i; - - for (i = 0; i < DDIR_RWDIR_CNT; i++) - free(td->zone_state_index[i]); - free(td->zone_state_index); - td->zone_state_index = NULL; - } } struct fio_option *fio_option_find(const char *name)