From: Neil Brown <neilb@suse.de>
To: Michael Tokarev <mjt@tls.msk.ru>
Cc: linux-raid <linux-raid@vger.kernel.org>,
martin f krafft <madduck@madduck.net>
Subject: Re: md[adm] device names
Date: Mon, 2 Nov 2009 13:15:37 +1100 [thread overview]
Message-ID: <19182.16585.929763.745870@notabene.brown> (raw)
In-Reply-To: message from Michael Tokarev on Saturday October 31
On Saturday October 31, mjt@tls.msk.ru wrote:
> Hello.
>
> Mdadm 3.x introduced a subdirectory for all md-related
> deice nodes, /dev/md/. (To be exact, that directory were
> introduced earlier, but starting with 3.x it's the default
> location).
sort of...
Devices still get created as '/dev/mdXX', but symlinks are created
with more meaningful names in /dev/md/, and those names are preferred.
>
> The question is, the short form: can we get the naming back?
> Or, at least, some plan for migration (with a justification
> as of _why_ the move)?
Numbers are meaningless. I would much rather have "/dev/md/home" or
"/dev/md/backup" or whatever. But as I said, old names should still
work.
>
> I tried new mdadm package on a Debian system. And what
> I ended up is a complete mess.
That is unfortunate. Hopefully we can sort it out.
>
> The system boots with root=UUID=xyz parameter, even if
> my /etc/fstab lists /dev/md1p1 as root device.
I don't understand what "even if" means here... it seems to imply a
cause and an effect, but I don't see where either cause of effect is
in the statement. Please help me understand.
>
> When it boots (during initramfs), the array gets assembled in
> /dev/md/d1, even if mdadm.conf lists /dev/md1. So the
> mount(8) command lists root on /dev/md/d1p1.
/dev/md/d1 and /dev/md1 a definitely differ, not just different names
for the same thing.
/dev/md1 (which can also be named /dev/md/1) has a major number of 9
and cannot be partitioned before 2.6.28.
/dev/md/d1 (or /dev/md_d1) has a major number of around 253 and has
always been partitionable. Normally mdadm will prefer the first style
and will only create the 'partitionable' style if explicitly asked to
by e.g "--auto=part" or "CREATE part=yes" in mdadm.conf, or something
similar.
Is there a 'CREATE' line in your mdadm.conf?
>
> When udevd is re-scanning device nodes from real root, it
> creates /dev/md1 and not /dev/md/d1.
So the device must have a major number of 9.... something strange
there.
>
> When update-initramfs script runs, mdadm-related parts
> complains that there's no definition found for array
> /dev/md/1_0.
/dev/md/1_0 would be a name that might be assigned to an array that
was auto assembled in mdadm couldn't be sure that it belonged to
'this' host....
It would probably help a lot if you could report the contents of
/etc/mdadm/mdadm.conf, and the result of
mdadm -Evvs
>
> I understand that some of that are Debian-specific, probably
> broken workarounds for the name change. But the root cause
> is the renaming, it looks like.
>
> So the question is, the long form:
>
> Why the rename to start with? The kernel already knows
> its devices by name, and uses _plain_ naming, without any
> subdirectory: like /sys/block/md1, /proc/partitions and
> so on. I expect to find the names which are used by
> kernel in /dev as-is. Other tools expexts the same,
> and some even complains and errors out if they can't
> (notable lilo). If we want subdirectory, how about
> renaming them in the kernel? But there aren't that
> many md devices to justify the subdirectory, IMHO.
>
> I understand about symbolic names (home, volume0,
> backup etc) - those may go to /dev/md/home and so
> on. But can we please, pretty please, make these
> a sumlinks to the real device nodes as kernel sees
> them? Like all the /dev/disk/by-xx/* symlinks are?
> Since these are really just _aliases_ for the kernel
> device names...
They should be symlinks to the real devices...
Maybe if you also report:
ls -l /dev/md*
NeilBrown
>
> I can hear the famous "policy does not belong to the
> kernel" thing here, the same way as with udev. But
> it didn't work out for several years of udev already,
> and what we have now with mdadm is a _lack_ of policy
> instead of _some_ policy, which is nothing more than
> a big mess.
>
> This is getting out of control.
>
> /mjt
> --
> To unsubscribe from this list: send the line "unsubscribe linux-raid" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2009-11-02 2:15 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-10-31 12:54 md[adm] device names Michael Tokarev
2009-11-02 2:15 ` Neil Brown [this message]
2009-11-02 8:24 ` martin f krafft
2009-11-02 11:21 ` Michael Tokarev
2009-11-02 11:14 ` Michael Tokarev
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=19182.16585.929763.745870@notabene.brown \
--to=neilb@suse.de \
--cc=linux-raid@vger.kernel.org \
--cc=madduck@madduck.net \
--cc=mjt@tls.msk.ru \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).