On 9/6/24 7:44 AM, Felix Moessbauer wrote: > diff --git a/io_uring/sqpoll.c b/io_uring/sqpoll.c > index 3b50dc9586d1..4681b2c41a96 100644 > --- a/io_uring/sqpoll.c > +++ b/io_uring/sqpoll.c > @@ -289,7 +289,7 @@ static int io_sq_thread(void *data) > if (sqd->sq_cpu != -1) { > set_cpus_allowed_ptr(current, cpumask_of(sqd->sq_cpu)); > } else { > - set_cpus_allowed_ptr(current, cpu_online_mask); > + set_cpus_allowed_ptr(current, sqd->thread->cpus_ptr); > sqd->sq_cpu = raw_smp_processor_id(); > } On second thought, why are we even setting this in the first place? sqd->thread == current here, it should be a no-op to do: set_cpus_allowed_ptr(current, current->cpus_ptr); IOW, the line should just get deleted. Can you send out a v2? -- Jens Axboe