From: ebiederm@xmission.com (Eric W. Biederman)
To: "H. Peter Anvin" <hpa@zytor.com>
Cc: "Erik A. Hendriks" <hendriks@lanl.gov>,
Andrew Morton <akpm@zip.com.au>,
linux-kernel@vger.kernel.org,
Werner Almesberger <wa@almesberger.net>
Subject: Re: [RFC] x86 ELF bootable kernels/Linux booting Linux/LinuxBIOS
Date: 01 Feb 2002 02:03:44 -0700 [thread overview]
Message-ID: <m1r8o5a80f.fsf@frodo.biederman.org> (raw)
In-Reply-To: <m1elk7d37d.fsf@frodo.biederman.org> <3C586355.A396525B@zip.com.au> <m1zo2vb5rt.fsf@frodo.biederman.org> <3C58B078.3070803@zytor.com> <m1vgdjb0x0.fsf@frodo.biederman.org> <3C58CAE0.4040102@zytor.com> <20020131103516.I26855@lanl.gov> <m1elk6t7no.fsf@frodo.biederman.org> <3C59DB56.2070004@zytor.com>
In-Reply-To: <3C59DB56.2070004@zytor.com>
"H. Peter Anvin" <hpa@zytor.com> writes:
> Eric W. Biederman wrote:
>
> >
> > I already need a new format for LinuxBIOS, because I can't use
> > bzImages.
> >
>
> [...]
>
> >
> > Personally I think all of that is just flawed. The bootloaders should
> > be simple. They should be able to load the ramdisk at a fixed address
> > (assuming the memory isn't reserved). And they shouldn't need to be
> > changed every time the kernel has a problem.
> >
>
>
> And your solution is to come up with a new format that is (a) MORE
> complex, (b) DIFFERENT, (c) incompatible?
a) More complex. Just barely.
b) Yep.
c) Yep.
d) More flexible and can handle what ever it needs to do tomorrow,
without mods.
All firmware has it's own different format. With LinuxBIOS things are
simple enough that you can add a make target instead of having to
write a specific bootloader to support it.
> Give me a break. You have just added so much complexity it's not even
> funny.
The only thing I have seen that is terribly complex is when I wrote a
though shalt paper, my draft specification. Specing out in
excruciating detail how everything needs to be setup. That takes a
simple idea and makes it sound terribly complex. I need to rewrite
that before I get much farther. I added flexibility not complexity.
In practice all I have added is a 32bit entry point and a for loop.
> I can guarantee you that people *WILL* ask for every single
> existing bootloader out there to support your new format. It's a support
> nightmare for all of us that write bootloaders, and not just for
> you.
Hmm. Supporting a format that has needed no changes since it's 1.0
release a decade ago, is going to be a support nightmare?
I know it is slightly more general than the current x86 home grown
solution so that is a bit harder.
Having a format that allows a cross platform implementation of rdev is
a support nightmare?
I am in no way promoting using any of the ELF relocation support I
have made that clear right?
> If your complaint is about the lack of a 32-bit entrypoint such can
> probably be added to the existing format (it would require
If adding a 32bit entry point to bzImage is really a more palatable
solution I can probably handle that. But it will take some
convincing.
And then I will go out and write a utility to convert that to an ELF
image, for when want to network boot or load it from LinuxBIOS. But
in that sense it will be just a bootloader. So will be less likely to
generate demand that everyone else support the ELF format for booting...
> Oh, and as far as "simple" is concerned, I should let you know that when I
> work on syslinux, I count bytes.
O.k. for a size comparison. I just built the LinuxBIOS elf bootloader
with a floppy driver for reading the disk, and a serial driver for
writing output, all 32 bit C code. With debugging messages compiled
in it was ~= 11K with debugging messages compiled out it was ~= 7K.
That is a very general bootloader that has practically every optional
feature implemented, and there has been no real attempt at space
optimization, and the drivers are direct to hardware drivers.
Admittedly it is a noninteractive bootloader.
Is that simple enough?
> The existing protocol is definitely
> suboptimal in that respect (this is due to some severe mistakes which were
> done in the original initrd implementation), but we're stuck with it. All
> you're accomplishing is creating two completely incompatible formats,
> *BOTH* of which will need to be supported for the forseeable future.
And on that score I can do deeper work. Would it be more palatable
if there were utilities to convert from one format to the other
without losing of information?
Eric
next prev parent reply other threads:[~2002-02-01 9:07 UTC|newest]
Thread overview: 52+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-01-30 19:54 [RFC] x86 ELF bootable kernels/Linux booting Linux/LinuxBIOS Eric W. Biederman
2002-01-30 21:19 ` Andrew Morton
2002-01-30 23:52 ` Keith Owens
2002-01-31 2:42 ` Eric W. Biederman
2002-01-31 2:48 ` H. Peter Anvin
2002-01-31 4:27 ` Eric W. Biederman
2002-01-31 4:41 ` H. Peter Anvin
2002-01-31 5:15 ` Eric W. Biederman
2002-01-31 5:59 ` H. Peter Anvin
[not found] ` <m1n0yvaucy.fsf@frodo.biederman.org>
2002-01-31 17:57 ` H. Peter Anvin
2002-01-31 22:34 ` Eric W. Biederman
2002-01-31 22:52 ` H. Peter Anvin
2002-02-01 7:52 ` Eric W. Biederman
2002-01-31 17:35 ` Erik A. Hendriks
2002-01-31 23:36 ` Eric W. Biederman
2002-02-01 0:03 ` H. Peter Anvin
2002-02-01 9:03 ` Eric W. Biederman [this message]
2002-02-01 9:25 ` H. Peter Anvin
2002-02-01 15:42 ` Eric W. Biederman
2002-02-01 18:26 ` H. Peter Anvin
2002-02-02 16:17 ` Eric W. Biederman
2002-02-02 21:06 ` H. Peter Anvin
2002-02-02 23:02 ` Eric W. Biederman
2002-02-03 1:56 ` H. Peter Anvin
2002-02-03 18:43 ` Eric W. Biederman
2002-02-03 19:39 ` H. Peter Anvin
2002-02-03 22:18 ` Rob Landley
2002-02-03 22:24 ` H. Peter Anvin
2002-02-03 22:59 ` Rob Landley
2002-02-03 23:01 ` H. Peter Anvin
2002-02-03 23:47 ` Rob Landley
2002-02-04 1:34 ` H. Peter Anvin
2002-02-04 9:53 ` Marco Colombo
2002-02-04 16:19 ` H. Peter Anvin
2002-02-04 19:55 ` Eric W. Biederman
2002-02-04 20:51 ` Alan Cox
2002-02-04 20:40 ` H. Peter Anvin
2002-02-03 19:48 ` H. Peter Anvin
2002-02-04 20:16 ` Eric W. Biederman
2002-02-04 4:29 ` Keith Owens
2002-02-04 20:01 ` Eric W. Biederman
2002-02-04 12:49 ` Werner Almesberger
2002-02-04 16:26 ` H. Peter Anvin
2002-02-04 19:45 ` Eric W. Biederman
2002-02-04 21:02 ` Werner Almesberger
2002-02-04 21:08 ` H. Peter Anvin
2002-02-05 7:45 ` Eric W. Biederman
2002-02-01 0:46 ` Keith Owens
2002-01-31 3:03 ` Keith Owens
2002-02-01 7:22 ` Greg KH
2002-01-30 21:32 ` H. Peter Anvin
2002-01-31 2:31 ` Eric W. Biederman
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=m1r8o5a80f.fsf@frodo.biederman.org \
--to=ebiederm@xmission.com \
--cc=akpm@zip.com.au \
--cc=hendriks@lanl.gov \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=wa@almesberger.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox