static int set_cpu_affinity(struct idle_prof_thread *ipt) { #if defined(FIO_HAVE_CPU_AFFINITY) os_cpu_mask_t cpu_mask; memset(&cpu_mask, 0, sizeof(cpu_mask)); fio_cpu_set(&cpu_mask, ipt->cpu); if (fio_setaffinity(gettid(), cpu_mask)) { log_err("fio: fio_setaffinity failed\n"); return -1; } return 0; #else log_err("fio: fio_setaffinity not supported\n"); return -1; #endif }
static int set_cpu_affinity(struct idle_prof_thread *ipt) { #if defined(FIO_HAVE_CPU_AFFINITY) if (fio_cpuset_init(&ipt->cpu_mask)) { log_err("fio: cpuset init failed\n"); return -1; } fio_cpu_set(&ipt->cpu_mask, ipt->cpu); if (fio_setaffinity(gettid(), ipt->cpu_mask)) { log_err("fio: fio_setaffinity failed\n"); fio_cpuset_exit(&ipt->cpu_mask); return -1; } return 0; #else log_err("fio: fio_setaffinity not supported\n"); return -1; #endif }
void fio_gtod_set_cpu(unsigned int cpu) { #ifdef FIO_HAVE_CPU_AFFINITY fio_cpu_set(&fio_gtod_cpumask, cpu); #endif }