client/server: add support for passing disk_util structures
[fio.git] / fio.c
diff --git a/fio.c b/fio.c
index 212b72e8706ac84b3ebe8c4fbaadc46b58eec688..e5d3bbf3c204790e7f98b2b36b749f870acdac22 100644 (file)
--- a/fio.c
+++ b/fio.c
@@ -62,6 +62,13 @@ int shm_id = 0;
 int temp_stall_ts;
 unsigned long done_secs = 0;
 
+/*
+ * Just expose an empty list, if the OS does not support disk util stats
+ */
+#ifndef FIO_HAVE_DISK_UTIL
+FLIST_HEAD(disk_list);
+#endif
+
 static struct fio_mutex *startup_mutex;
 static struct fio_mutex *writeout_mutex;
 static volatile int fio_abort;
@@ -165,10 +172,14 @@ void fio_terminate_threads(int group_id)
 static void sig_int(int sig)
 {
        if (threads) {
-               log_info("\nfio: terminating on signal %d\n", sig);
-               exit_backend = 1;
-               fflush(stdout);
-               exit_value = 128;
+               if (is_backend)
+                       fio_server_got_signal(sig);
+               else {
+                       log_info("\nfio: terminating on signal %d\n", sig);
+                       fflush(stdout);
+                       exit_value = 128;
+               }
+
                fio_terminate_threads(TERMINATE_ALL);
        }
 }
@@ -183,9 +194,7 @@ static void *disk_thread_main(void *data)
                        break;
                update_io_ticks();
 
-               if (is_backend)
-                       fio_server_send_status();
-               else
+               if (!is_backend)
                        print_thread_status();
        }