On Mon, 19 May 2025, Yu Kuai wrote:
> Hi,
>
> 在 2025/05/19 19:19, Yu Kuai 写道:
> > > The commit e879a0d9cb08 ("md/raid1,raid10: don't ignore IO flags") breaks
> > > the lvm2 test shell/lvcreate-large-raid.sh. The commit changes raid1 and
> > > raid10 to pass down all the flags from the incoming bio. The problem is
> > > when we pass down the REQ_RAHEAD flag - bios with this flag may fail
> > > anytime and md-raid is not prepared to handle this failure.
> >
> > Can dm-raid handle this falg? At least from md-raid array, for read
> > ahead IO, it doesn't make sense to kill that flag.
> >
> > If we want to fall back to old behavior, can we kill that flag from
> > dm-raid?
>
> Please ignore the last reply, I misunderstand your commit message, I
> thought you said dm-raid, actually you said mdraid, and it's correct,
> if read_bio faild raid1/10 will set badblocks which is not expected.
>
> Then for reada head IO, I still think don't kill REQ_RAHEAD for
> underlying disks is better, what do you think about skip handling IO
> error for ead ahead IO?
I presume that md-raid will report an error and kick the disk out of the
array if a bio with REQ_RAHEAD fails - could this be the explanation of
this bug?
Mikulas