[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-id: <167822843274.8008.1142380266687607670@noble.neil.brown.name>
Date: Wed, 08 Mar 2023 09:33:52 +1100
From: "NeilBrown" <neilb@...e.de>
To: "Mariusz Tkaczyk" <mariusz.tkaczyk@...ux.intel.com>
Cc: "Song Liu" <song@...nel.org>,
"Linux regressions mailing list" <regressions@...ts.linux.dev>,
Jes.Sorensen@...il.com, "linux-raid" <linux-raid@...r.kernel.org>,
"LKML" <linux-kernel@...r.kernel.org>,
"Nikolay Kichukov" <hijacker@...um.net>
Subject: Re: [regression] Bug 217074 - upgrading to kernel 6.1.12 from 5.15.x
can no longer assemble software raid0
On Tue, 07 Mar 2023, Mariusz Tkaczyk wrote:
> On Mon, 06 Mar 2023 08:21:07 +1100
> "NeilBrown" <neilb@...e.de> wrote:
>
> > On Sat, 04 Mar 2023, Song Liu wrote:
> > > + Jes.
> > >
> > > It appeared to me that we can assemble the array if we have any of the
> > > following:
> > > 1. Enable CONFIG_BLOCK_LEGACY_AUTOLOAD;
> > > 2. Have a valid /etc/mdadm.conf;
> > > 3. Update mdadm to handle this case. (I tried some ugly hacks, which worked
> > > but weren't clean).
> > >
> > > Since we eventually would like to get rid of CONFIG_BLOCK_LEGACY_AUTOLOAD, I
> > > think we need mdadm to handle this properly. But the logistics might
> > > be complicated, as
> > > mdadm are shipped separately.
> > >
> > > Jes, what do you think about this? AFAICT, we need to update the logic in
> > > mdopen.c:create_mddev().
> >
> > mdadm already handles this, but only if
> > CREATE names=yes
> > is present in /etc/mdadm.conf
>
> Hi,
>
> "CREATE names=yes" enforces creation of /dev/md_name arrays instead of
> /dev/mdXXX. It is a large change for users, too aggressive IMO. It will destroy
> many setups.
>
> To resolve it, we need is to use create_named_array() but respect old naming
> convention. We already have find_free_devnm(), and we are able to keep
> consistency because we can create 'mdXXX':
>
> /sys/module/md_mod/parameters # echo md125 > new_array
>
> /sys/module/md_mod/parameters # ll /sys/block/md125
> lrwxrwxrwx 1 root root 0 Mar 7 10:54 /sys/block/md125 ->
> ../devices/virtual/block/md125
>
> That will require adjustments in mdadm, but I think that we can keep
> names the same way. I created the test for verification of base creation flows,
> we can use it to avoid regression:
> https://git.kernel.org/pub/scm/utils/mdadm/mdadm.git/tree/tests/00createnames
>
> Thoughts?
Yes, that is probably sensible.
It would be nice to have a way to expose the "names=yes" functionality
more obviously. I think people would generally prefer it (/proc/mdstat
becomes more meaningful) but I agree that forcing it on people is the
the best approach.
Maybe a super-block flag that enables it for that array, and we start
setting that flag when creating new arrays?
NeilBrown
>
> BTW. I wanted to get rid of this legacy "create_on_open" from mdadm anyway but
> never had time to. If you agree, I can proceed with fixing it.
>
> Thanks,
> Mariusz
>
Powered by blists - more mailing lists