Bug#382788: [Yaird-devel] Bug#382788: yaird does not uses the kernel command like to find out the root partition

Jonas Smedegaard dr at jones.dk
Mon Aug 14 14:03:31 UTC 2006


On Mon, 14 Aug 2006 14:57:21 +0200 Sven Luther wrote:

> On Mon, Aug 14, 2006 at 01:58:47PM +0200, maximilian attems wrote:
> > severity 382788 serious
> > stop see justification below
> > 
> > On Mon, Aug 14, 2006 at 02:39:09AM +0200, Jonas Smedegaard wrote:
> > > On Sun, 13 Aug 2006 13:17:55 +0200 Pierre Habouzit wrote:
> > > 
> > > >   Instead, it uses a hardcoded value he takes from /etc/fstab
> > > > presumably, that makes a system where you rearraged the
> > > > partition completely impossible to boot, if you didn't faked
> > > > the next /etc/fstab and regenerated the initrd.
> > > > 
> > > >   Since I use grub, and if I do forget to change the menu.lst
> > > > it has a console to do so, I can always boot. the preliminary
> > > > extraction of the initrd then works, but the switch root just
> > > > fails because it does not finds the correct root, whereas it on
> > > > the damn kernel command line !
> > > 
> > > Correct. That's a limitation in the yaird design: An abolute
> > > minimal initrd image is composed, based on your current setup.
> > > Only kernel modules required to access your root filesystem is
> > > included on the image, and only the devices needed are created.
> > 
> > even initrd-tools parses the boot cmdline.
> > initrd-tools allowed to hardcode the root, but a different root
> > bootarg would override that.
> >  
> > ignoring /proc/cmdline root bootarg is a critical rc bug for any
> > init of an initrd/initramfs generator. filed at severity serious
> > to raise awareness of that bug.
> 
> Jonas, i agree on this with maks and pierre, being able to override
> root= is a very essential feature. Furthermore, it is not all that
> difficult to implement (just check for an existing root= command line
> before providing your own copy), probably 3 lines of perl or so,
> since the comand line is available as /proc/cmdline. I am no perl
> expert though.

There's a difference between being able to read the root option
provided on commandline and actually supporting it.

The fundamental design of yaird causes it to not be able to support
changing root at boot time. It may happen to work for some specific
cases, but not in general.

 * Only kernel modules specifically needed to reach the default root
   is included with the image.

 * Only device files specifically needed to reach the default root
   is created while in the pre-root boot stage.

I consider it a pretty damn good feature to have. But not essential.

Please provide pointers to official statements supporting the claim
that this is a release-critical issue.


 - Jonas

-- 
* Jonas Smedegaard - idealist og Internet-arkitekt
* Tlf.: +45 40843136  Website: http://dr.jones.dk/

 - Enden er nær: http://www.shibumi.org/eoti.htm
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://lists.alioth.debian.org/pipermail/yaird-devel/attachments/20060814/b0d96cd8/attachment.pgp


More information about the Yaird-devel mailing list