grub-devel
[Top][All Lists]
Advanced

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

Re: [PATCH] don't abort with error if realpath fails


From: Robert Millan
Subject: Re: [PATCH] don't abort with error if realpath fails
Date: Fri, 22 Sep 2006 08:49:10 +0200
User-agent: Mutt/1.5.13 (2006-08-11)

On Fri, Sep 22, 2006 at 08:44:10AM +0200, Robert Millan wrote:
> On Fri, Sep 22, 2006 at 07:42:38AM +0200, Yoshinori K. Okuji wrote:
> > On Thursday 21 September 2006 19:34, Robert Millan wrote:
> > > Sure.  The purpose of realpath here isn't really to verify device
> > > existance; that ought to happen later if (and only if) we're actualy going
> > > to use that device.
> > >
> > > Suppose this device.map:
> > >
> > > (hd0)     /dev/hda
> > > (xxx)     /dev/idontexist
> > >
> > > Theoricaly, when grub-setup is told to act on (hd0) it shouldn't care that
> > > /dev/idontexist doesn't exist (it could be listed because it was generated
> > > by an older grub, because the device disappeared, etc).  However, because
> > > of the realpath canonicalisation, as a collateral result we get to abort 
> > > if
> > > _any_ of the entries are wrong:
> > 
> > I understand what you mean. Thank you.
> > 
> > > My point is that grub should be fault tollerant and not care that
> > > /dev/idontexist is broken, specialy since device.map is a file that is
> > > subject for input from either user or older grub (including grub legacy),
> > > and we have little control about its contents.
> > 
> > I describe my own opinion here. GRUB itself must be extremely 
> > fault-tolerant, 
> > as the user cannot boot up a machine if GRUB fails. However, the installer 
> > of 
> > GRUB must be extremely error-sensitive, as the user cannot boot up a 
> > machine 
> > if the installation happens _wrongly_. If a device map contains any error, 
> > it's likely that the user made some mistake or skip over erroneous 
> > information. Personally I much, much prefer that GRUB is not installed in 
> > this case. Failing in installing GRUB is better than making a machine 
> > unbootable.
> 
> How could installation happen wrongly because of "(xxx) /dev/idontexist" ?  If
> we're trying to write to (xxx), that will fail;  otherwise, it doesn't 
> interfere
> with what we're doing.

(Besides, this code is only enabled on GNU/Linux.  I think this shows that the
intention when writing it wasn't error-sensitivity)

-- 
Robert Millan

My spam trap is address@hidden  Note: this address is only intended for
spam harvesters.  Writing to it will get you added to my black list.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]