Add a cpuset exit function
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
diff --git a/fio.c b/fio.c
index a11f2bb..2a468b1 100644
--- a/fio.c
+++ b/fio.c
@@ -970,10 +970,6 @@
* thread from this job
*/
if (td->o.gtod_cpu) {
- if (fio_getaffinity(td->pid, &td->o.cpumask) == -1) {
- td_verror(td, errno, "cpu_get_affinity");
- goto err;
- }
fio_cpu_clear(&td->o.cpumask, td->o.gtod_cpu);
if (fio_setaffinity(td) == -1) {
td_verror(td, errno, "cpu_set_affinity");
@@ -1120,6 +1116,9 @@
close_ioengine(td);
cleanup_io_u(td);
+ if (td->o.cpumask_set)
+ fio_cpuset_exit(td);
+
/*
* do this very late, it will log file closing as well
*/
diff --git a/os/os-linux.h b/os/os-linux.h
index ea2db9b..3338046 100644
--- a/os/os-linux.h
+++ b/os/os-linux.h
@@ -35,11 +35,8 @@
#define CLOCK_MONOTONIC 1
#endif
-#ifdef FIO_HAVE_CPU_AFFINITY
typedef cpu_set_t os_cpu_mask_t;
-#else
-typedef int os_cpu_mask_t;
-#endif
+
typedef struct drand48_data os_random_state_t;
/*
@@ -69,6 +66,7 @@
#define fio_cpu_clear(mask, cpu) CPU_CLR((cpu), (mask))
#define fio_cpu_set(mask, cpu) CPU_SET((cpu), (mask))
#define fio_cpuset_init(td) CPU_ZERO(&(td)->o.cpumask)
+#define fio_cpuset_exit(td) do { } while (0)
#define FIO_MAX_CPUS CPU_SETSIZE