On 2021/11/23 16:13, Christoph Hellwig wrote:
On Tue, Nov 23, 2021 at 04:10:35PM +0800, Qu Wenruo wrote:
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