Mailinglist Archive: opensuse-factory (661 mails)

< Previous Next >
Re: [opensuse-factory] GRUB2 / FATE 308497
  • From: Josef Reidinger <jreidinger@xxxxxxx>
  • Date: Wed, 9 Dec 2009 16:35:30 +0100
  • Message-id: <200912091635.30268.jreidinger@xxxxxxx>
Jiri Srain write:
Dne úterý 08 Prosinec 2009 17:31:51 Josef Reidinger napsal(a):
Jeff Mahoney write:
Hi everyone -

Occasionally I take a break from kernel hacking. Recently, I was
working on improving the reiserfs support in grub so that it doesn't
take forever to load when there is a journal with outstanding
transactions that need to be replayed.

The thing is that the grub 0.97 code is truly awful. Every file system
implementation has to implement strangely chosen primitives and,
outside of the code itself, has 32k in memory which it has to manage
itself and not exceed. This is the crux of the reiserfs /boot
performance issue in bnc#538795.

On top of that, the upstream grub developers refuse to accept fixes or
features against 0.97, forcing distributors to carry patches around
forever.

The good news is that GRUB2 lifts a whole lot of restrictions. It's
modular in design, has a cleaner implementation, and has native support
for more file systems. It supports LVM and MD RAID volumes. It supports
DMRAID volumes (though I'm not sure how well here). The upstream
development community is interested in maintaining it.

The bad news is that it's a boot loader. There may be bugs lurking in
there. That are tough to track down and leave you with an unbootable
system.

So who wants to help test? :)

-Jeff

Hi, I looked at grub2 some time ago. I think that its main problem is
incredible magic configuration. Part of configuration is autodetected and
part is written from simplified configuration file. Problem is that it
doesn't support many case which we handle now (handle by perl-Bootloader
and in the yast). It decreased possibility of boot setup (of course you
can hack generated config file but it is not possible to read it
automatic). Also as long as some configuration tweaks must be done via
hacking scripts, it is not possible to parse it by yast.
So if you use grub2, then you must configurate it on your own. (when I
try Ubuntu with grub2 I found, that ubuntu does allow user almost none
options to setup on boot)
Josef

The (autogenerated) configuration, as used e.g. in Ubuntu, is from my POV
really too much magic and too little flexibility. On the other hand, it
should not prevent you from writing menu.lst (or grub.conf in the Ubuntu
file naming) manually and so install the Stage1 part.

menu.lst looks semantically very similar to Grub1, OTOH the syntax is
different.

Jiri


I disagree. Its semantic is much richer. It support probing, searching and
testing during boot. It can use variables, conditionals, loops and functions (
grub2 manual say itself, that it is similar to bash script ). I think that no
one expect, that perl-Bootloader is can parse that configuration file (if it
does correct it is halting problem). What is possible to do is parsing
/etc/grub/default which is really simple.

BTW I cannot find command in grub to load 64-bit kernel, I see only 16-bit and
32-bit one ( http://grub.enbug.org/CommandList )

Josef
--
Josef Reidinger
YaST team
maintainer of perl-Bootloader, YaST2-Repair, webyast
(language,time,basesystem,ntp)
--
To unsubscribe, e-mail: opensuse-factory+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: opensuse-factory+help@xxxxxxxxxxxx

< Previous Next >