On 04/07, Jens Axboe wrote: > > --- a/fs/io_uring.c > +++ b/fs/io_uring.c > @@ -7293,10 +7293,15 @@ static void io_ring_ctx_wait_and_kill(struct io_ring_ctx *ctx) > io_wq_cancel_all(ctx->io_wq); > > io_iopoll_reap_events(ctx); > + idr_for_each(&ctx->personality_idr, io_remove_personalities, ctx); > + > + if (current->task_works != &task_work_exited) > + task_work_run(); this is still wrong, please see the email I sent a minute ago. Oleg.