Don't call into the affinity functions, unless the user has
specified a mask.
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
if (init_io_u(td))
goto err;
- if (fio_setaffinity(td) == -1) {
+ if (td->o.cpumask_set && fio_setaffinity(td) == -1) {
td_verror(td, errno, "cpu_set_affinity");
goto err;
}
unsigned int new_group;
unsigned int numjobs;
os_cpu_mask_t cpumask;
+ unsigned int cpumask_set;
unsigned int iolog;
unsigned int rwmixcycle;
unsigned int rwmix[2];
{
memset(&def_thread, 0, sizeof(def_thread));
- if (fio_getaffinity(getpid(), &def_thread.o.cpumask) == -1) {
- perror("sched_getaffinity");
- return 1;
- }
+ fio_getaffinity(getpid(), &def_thread.o.cpumask);
/*
* fill default options
struct thread_data *td = data;
fill_cpu_mask(td->o.cpumask, *val);
+ td->o.cpumask_set = 1;
return 0;
}