Messages in this thread | | | Date | Wed, 08 Feb 2012 09:36:32 -0800 | From | "H. Peter Anvin" <> | Subject | Re: No /dev/root with devtmpfs? |
| |
On 02/08/2012 09:25 AM, Kay Sievers wrote: > On Wed, Feb 8, 2012 at 18:20, H. Peter Anvin <hpa@zytor.com> wrote: >> On 02/08/2012 08:44 AM, Paul Parsons wrote: >>> >>> Could you simply use /etc/fstab to identify the root partition? >>> >> >> That's not a very good thing, as it is much more likely to be wrong. >> >> It would be a good thing to have the /dev/root symlink *IF* a valid root >> device exists (defined as a device node appearing which has the same >> device number as reported by stat on the root directory), if nothing >> else because we have had one available for a very long time and this is >> needless breakage. >> >> Obviously, if such a device doesn't exist (btrfs, NFS, tmpfs) then don't. > > Tools should just do the equivalent of: > $ ls -l /sys/dev/block/$(mountpoint -d /) > /sys/dev/block/8:1 -> > ../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda1 > > and all is fine. I'm convinced, that determining the root device is a > job for *running code* not to expect a symlink to be around. > > Kay
Okay, first of all, this is a service (you can think of it as such) which has been provided for a long time. It can be done with minimal effort as devices appear, so you don't need to scan the /dev directory to find the device node that corresponds to the above (as you know, there are deliberately no device nodes in /sys, although *most* of the time you obviously have the name right there.)
I'm not saying you're wrong, I'm saying you should consider it a backwards compatibility solution for an interface which has been provided for a long time already.
-hpa
-- H. Peter Anvin, Intel Open Source Technology Center I work for Intel. I don't speak on their behalf.
| |