tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: amd64 kernel, i386 userland



On Sat, 25 Jan 2014, Emmanuel Dreyfus wrote:
Alan Barrett <apb%cequrux.com@localhost> wrote:
I see the following differences from this mtree comparison:

As I said, if your only filesystem is root on raid0a and your swap is on sd0b/wd0b, you boot to multiuser without touching /dev

Perhaps you are thinking of some other scenario, but I am talking about the scenario that exists if you follow the steps in my first message, and do not follow the steps in my second message, and use a kernel that does not have options MAGICLINKS. In such a case, any attempt to cd /dev or open /dev/console will fail, because /dev will be a dangling symlink.

It doesn't matter how similar the i386 and amd64 versions of /dev are; if /dev is a dangling symlink then nothing really works.

Try it yourself:

    mkdir /dev.i386
    mkdir /dev.amd64
    copy the i386 version of MAKEDEV to /dev.i386/MAKEDEV
    copy the amd64 version of MAKEDEV to /dev.amd64/MAKEDEV
    ( cd /dev.i386 && sh ./MAKEDEV all )
    ( cd /dev.amd64 && sh ./MAKEDEV all )
    mv /dev /dev.old && ln -sf dev.@machine /dev

and then boot a kernel that does *NOT* have options MAGICLINKS.
/dev will be a dangling symlink, and /dev/console will not be found,
and init(8)'s attempt to (cd /dev/&& sh ./MAKEDEV init) will fail.

--apb (Alan Barrett)


Home | Main Index | Thread Index | Old Index