Thread (15 messages) 15 messages, 4 authors, 2021-11-26

Re: Any bio_clone_slow() implementation which doesn't share bi_io_vec?

From: Qu Wenruo <hidden>
Date: 2021-11-26 12:35:23
Also in: dm-devel, linux-fsdevel


On 2021/11/23 16:13, Christoph Hellwig wrote:
On Tue, Nov 23, 2021 at 04:10:35PM +0800, Qu Wenruo wrote:
quoted
Without bio_chain() sounds pretty good, as we can still utilize
bi_end_io and bi_private.

But this also means, we're now responsible not to release the source bio
since it has the real bi_io_vec.
Just call bio_inc_remaining before submitting the cloned bio, and then
call bio_endio on the root bio every time a clone completes.
Does this also mean, we need to save a bi_iter before bio submission, so
that at endio time, we can iterate only the split part of the bio?

Or we have to go back to bio_chain() method, and rely on the parent bio
to iterate all bvecs...

Thanks,
Qu
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help