On Mon, Apr 24, 2023 at 2:55 PM Jens Axboe <axboe@xxxxxxxxx> wrote: > > I took another look at this, and the main issue is in fact splice > confirming buffers. So I do think that we can make this work by simply > having the non-block nature of it being passed down the ->confirm() > callback as that's the one that'll be waiting for IO. If we have that, > then we can disregard the pipe locking as we won't be holding it over > IO. Ok, that part looks fine to me. The pipe_buf_confirm() part of the series I don't find problematic, it's really conditional locking that I absolutely detest and has always been a sign of problems elsewhere. Linus