Wire up SIGUSR2 to kill blocking threads
Get rid of io engine ops SIGTERM flag, it didn't really
work.
Signed-off-by: Jens Axboe <axboe@kernel.dk>
diff --git a/engines/net.c b/engines/net.c
index 8957545..81e173c 100644
--- a/engines/net.c
+++ b/engines/net.c
@@ -881,6 +881,11 @@
return 0;
}
+static void fio_netio_terminate(struct thread_data *td)
+{
+ kill(td->pid, SIGUSR2);
+}
+
#ifdef FIO_HAVE_SPLICE
static int fio_netio_setup_splice(struct thread_data *td)
{
@@ -909,11 +914,12 @@
.init = fio_netio_init,
.cleanup = fio_netio_cleanup,
.open_file = fio_netio_open_file,
- .close_file = generic_close_file,
+ .close_file = fio_netio_close_file,
+ .terminate = fio_netio_terminate,
.options = options,
.option_struct_size = sizeof(struct netio_options),
.flags = FIO_SYNCIO | FIO_DISKLESSIO | FIO_UNIDIR |
- FIO_SIGTERM | FIO_PIPEIO,
+ FIO_PIPEIO,
};
#endif
@@ -927,10 +933,11 @@
.cleanup = fio_netio_cleanup,
.open_file = fio_netio_open_file,
.close_file = fio_netio_close_file,
+ .terminate = fio_netio_terminate,
.options = options,
.option_struct_size = sizeof(struct netio_options),
.flags = FIO_SYNCIO | FIO_DISKLESSIO | FIO_UNIDIR |
- FIO_SIGTERM | FIO_PIPEIO,
+ FIO_PIPEIO,
};
static int str_hostname_cb(void *data, const char *input)