X-Git-Url: https://git.kernel.dk/?p=fio.git;a=blobdiff_plain;f=backend.c;h=e1dc0ac8b154a662866eea6ecc381921f5000cf0;hp=ec42a5cd23cc7e6e90c7c21206bcf8ff4f206c7a;hb=25460cf6350fb90b8a7943bb649a51d81bac13a4;hpb=a5e371a61c9e37a2389f7473d65e35b29dec1ccd diff --git a/backend.c b/backend.c index ec42a5cd..e1dc0ac8 100644 --- a/backend.c +++ b/backend.c @@ -87,6 +87,11 @@ static void sig_int(int sig) } } +static void sig_show_status(int sig) +{ + show_running_run_stats(); +} + static void set_sig_handlers(void) { struct sigaction act; @@ -101,6 +106,11 @@ static void set_sig_handlers(void) act.sa_flags = SA_RESTART; sigaction(SIGTERM, &act, NULL); + memset(&act, 0, sizeof(act)); + act.sa_handler = sig_show_status; + act.sa_flags = SA_RESTART; + sigaction(SIGUSR1, &act, NULL); + if (is_backend) { memset(&act, 0, sizeof(act)); act.sa_handler = sig_int; @@ -1045,7 +1055,7 @@ static void *thread_main(void *data) } } - if (td->o.cgroup_weight && cgroup_setup(td, cgroup_list, &cgroup_mnt)) + if (td->o.cgroup && cgroup_setup(td, cgroup_list, &cgroup_mnt)) goto err; errno = 0; @@ -1663,6 +1673,7 @@ int fio_backend(void) for_each_td(td, i) fio_options_free(td); + free_disk_util(); cgroup_kill(cgroup_list); sfree(cgroup_list); sfree(cgroup_mnt);