Re: [PATCH] io_uring/io-wq: Use set_bit() and test_bit() at worker->flags

From: Christophe JAILLET
Date: Fri May 03 2024 - 15:24:55 EST


Le 03/05/2024 à 20:41, Jens Axboe a écrit :
On 5/3/24 11:37 AM, Breno Leitao wrote:
@@ -631,7 +631,8 @@ static int io_wq_worker(void *data)
bool exit_mask = false, last_timeout = false;
char buf[TASK_COMM_LEN];
- worker->flags |= (IO_WORKER_F_UP | IO_WORKER_F_RUNNING);
+ set_bit(IO_WORKER_F_UP, &worker->flags);
+ set_bit(IO_WORKER_F_RUNNING, &worker->flags);

You could probably just use WRITE_ONCE() here with the mask, as it's
setup side.


Or simply:
set_mask_bits(&worker->flags, 0, IO_WORKER_F_UP | IO_WORKER_F_RUNNING);

CJ