On 5/21/24 12:29 PM, Jens Axboe wrote: > On 5/21/24 12:25 PM, Jens Axboe wrote: >> Outside of that, only other thing I can think of is that the final >> close would be punted to task_work by fput(), which means there's also >> a dependency on the task having run its kernel task_work before it's >> fully closed. > > Yep I think that's it, the below should fix it. Sent it out and also wrote a test case to catch this: https://git.kernel.dk/cgit/liburing/commit/?id=06c22ef6637284ab1f31ee64f1ee48a829958816 just in case we ever regress in that manner again. This will go into the 6.10-rc1 release, will ship it to Linus in a day or two. And then it'll land in the next stable release of 6.9 as well. Thanks for the report! -- Jens Axboe