Re: [PATCH AUTOSEL 4.20 42/77] dm: fix clone_bio() to trigger blk_recount_segments()

From: Mike Snitzer
Date: Wed Feb 27 2019 - 13:48:37 EST


On Wed, Feb 27 2019 at 12:38pm -0500,
Sasha Levin <sashal@xxxxxxxxxx> wrote:

> On Thu, Feb 14, 2019 at 10:49:09PM -0500, Mike Snitzer wrote:
> >On Thu, Feb 14 2019 at 9:08pm -0500,
> >Sasha Levin <sashal@xxxxxxxxxx> wrote:
> >
> >>From: Mike Snitzer <snitzer@xxxxxxxxxx>
> >>
> >>[ Upstream commit 57c36519e4b949f89381053f7283f5d605595b42 ]
> >>
> >>DM's clone_bio() now benefits from using bio_trim() by fixing the fact
> >>that clone_bio() wasn't clearing BIO_SEG_VALID like bio_trim() does;
> >>which triggers blk_recount_segments() via bio_phys_segments().
> >>
> >>Reviewed-by: Ming Lei <ming.lei@xxxxxxxxxx>
> >>Signed-off-by: Mike Snitzer <snitzer@xxxxxxxxxx>
> >>Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>
> >
> >Please no, I later effectively reverted this change with commit
> >fa8db4948f522 ("dm: don't use bio_trim() afterall")
>
> I've dropped it, thank you.
>
> >(As and aside, I really shouldn't have to defend against stable@ bots
> >picking up a commit, like 57c36519e4b949f, that wasn't marked for
> >stable@.)
>
> Is it the case that this commit isn't appropriate for stable for some
> reason, or was it just buggy?

Commit 57c36519e4b9 exposed a bug elsewhere, as fixed by a truly
"stable" fix:
ff0c129d3b5ec ("dm crypt: don't overallocate the integrity tag space")

So the end result is commit 57c36519e4b9 is just bad to bring to a
"stable" kernel. It unlocks another bug for no meaningful benefit.

Mike