Re: [PATCH 04/10] block: avoid unpinning/freeing the bio_vec incase of cloned bio

Christoph Hellwig
2024-04-29T17:09:33Z

On Mon, Apr 29, 2024 at 05:10:59PM +0530, Kanchan Joshi wrote:
> > This feels wrong. I suspect the problem is that BIP_COPY_USER is
> > inherited for clone bios while it shouldn't.
> >
>
> But BIP_COPY_USER flag is really required in the clone bio. So that we
> can copy the subset of the metadata back (from kernel bounce buffer to
> user space pinned buffer) in case of read io.
>
> Overall, copy-back will happen in installments (for each cloned bio),
> while the unpin will happen in one shot (for the source bio).

That seems a bit odd compared to the bio data path. If you think this
is better than the version used in the data path let's convert the
data path to this scheme first to make sure we don't diverge and get
the far better testing on the main data map side.