grub-devel
[Top][All Lists]
Advanced

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

Re: grub-probe detects ext4 wronly as ext2


From: Robert Millan
Subject: Re: grub-probe detects ext4 wronly as ext2
Date: Thu, 3 Jul 2008 16:02:11 +0200
User-agent: Mutt/1.5.13 (2006-08-11)

On Wed, Jul 02, 2008 at 09:32:40PM +0200, Javier Martín wrote:
> El mié, 02-07-2008 a las 16:22 +0200, Robert Millan escribió:
> > On Wed, Jul 02, 2008 at 01:28:47AM +0200, Javier Martín wrote:
> > > > A --ignore-incompatible flag doesn't sound like a nice thing to do;  it 
> > > > means
> > > > we're passing our own problem to the user instead of solving it.
> > > We don't have any "problem" to pass to users: ext4 is not supported
> > 
> > We don't have an urge to support ext4, but that doesn't mean we shouldn't
> > consider it a problem.
> > 
> > I think adding an interface for the user to choose in which way to deal with
> > our limitations is a nasty thing.  I strongly object to that.
> May I ask why? Is it thus better to impose our own way of dealing with
> our limitations, unchangeable and possibly wrong in some instances (see
> below for a possible scenario)? Sensible defaults are good, but choice
> is one of the bases of freedom.

We're never in a position in which we can impose things, because GRUB is free
software to begin with, and anyone can modify it to better suit their needs.

The question here is whether we should increase complexity with interfaces
that don't provide any usefulness to the user, just to make it easier to
do potentially dangerous things.  If a user understands the implications
and really doesn't mind making her system bootability unreliable, then she
should have no problem modifiing the source to do it.

> The problem with INCOMPAT_* flags is that we cannot always know what
> they mean, and thus, a "best-effort" reader risks not just bumping into
> metadata it does not understand (and thus crashing or spitting thousands
> of errors if it's not robust enough),

This should never happen;  see the remark about corrupt filesystems in my
previous mail.

> but also ignoring it and reading
> wrong data to memory.

This looks like a more general problem.  I wonder if we should really address
it at the filesystem level.  e.g. the filesystem could be perfectly fine but
the files in it went corrupt;  if the data you're reading is corrupt, does it
matter at which point it was corrupted?

A more elegant solution (also may be interesting for security at some point)
would be for update-grub to hash each file it generates access commands for
and embed the sum in grub.cfg as a check parameter, like

  if verify_hash /file xxxxx ; then
    do_something_with_file /file
  fi

So, if we take for granted those two things:

  - That GRUB should never crash no matter what you feed to it.
  - That update-grub instructs GRUB to verify file consistency via hashing.

does this address all of your concerns?

-- 
Robert Millan

<GPLv2> I know my rights; I want my phone call!
<DRM> What good is a phone call… if you are unable to speak?
(as seen on /.)




reply via email to

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