Fix segfault race on exit for platforms that don't have disk util support
We still need to quisce the disk util thread, as it also functions
as the runtime ETA status printer.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
diff --git a/backend.c b/backend.c
index c31d22a..b5501c6 100644
--- a/backend.c
+++ b/backend.c
@@ -67,6 +67,7 @@
int shm_id = 0;
int temp_stall_ts;
unsigned long done_secs = 0;
+volatile int disk_util_exit = 0;
#define PAGE_ALIGN(buf) \
(char *) (((uintptr_t) (buf) + page_mask) & ~page_mask)
@@ -1610,6 +1611,13 @@
fio_mutex_down(disk_thread_mutex);
}
+static void free_disk_util(void)
+{
+ disk_util_start_exit();
+ wait_for_disk_thread_exit();
+ disk_util_prune_entries();
+}
+
static void *disk_thread_main(void *data)
{
int ret = 0;