public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: ebiederm@xmission.com (Eric W. Biederman)
To: landley@trommello.org
Cc: linux-kernel@vger.kernel.org
Subject: Re: The return of the return of crunch time (2.5 merge candidate list 1.6)
Date: 26 Oct 2002 09:09:25 -0600	[thread overview]
Message-ID: <m1adl1kziy.fsf@frodo.biederman.org> (raw)
In-Reply-To: <200210251557.55202.landley@trommello.org>

Rob Landley <landley@trommello.org> writes:

> I'm also looking for other things that can similarly be removed from
> this list and pushed for integration during the next stable series.
> Criteria for this: no API changes, and no impact on people who don't
> actually try to use the thing.
> 
> If people familiar with these features can suggest stuff that's
> deferrable, please let me know.  I've been trying very hard not to make
> judgement calls on these patches (not my job), but I'm certainly open
> to advice.

> 11) Kexec, luanch new linux kernel from Linux (Eric W. Biederman)
> 
> Announcement with links:
> http://lists.insecure.org/lists/linux-kernel/2002/Oct/6584.html
> 
> And this thread is just too brazen not to include:
> http://lists.insecure.org/lists/linux-kernel/2002/Oct/7952.html

sys_kexec introduces no new APIs to the rest of the kernel and is
fairly self contained.  Making it non intrusive enough that by that
criterion it may be deferred.

Currently the device driver support is lacking.  sys_kexec calls the
reboot notifier call chain, and device_shutdown to shut devices down
cleanly.  Due to a bug fix/cleanup that went into of 2.5.44
device_shutdown is neutered, and does nothing.  

So far with all of the review sys_kexec has gotten not one bug has
been found in it's core.  However actually using it is problematic.  
In the 2.5.44 kexec to 2.5.44 case quite a few devices cannot
reinitialize when the new kernel comes up.

The proof of concept of what sys_kexec can do is etherboot.
http://www.etherboot.org.  Etherboot contains real hardware drivers often
adapted from the linux kernel drivers.  It is quite possible to boot
DOS from etherboot, and I can quite definitely run all of setup.S.
However when I attempt this from sys_kexec in a number of significant
cases I cannot even reliably execute the BIOS calls in setup.S after
the kernel has run.  Though most of them can reliably be executed.

So the remaining work with sys_kexec is to track down why it is less
reliable than etherboot.  A few cases like being loaded from loadlin
and the BIOS interrupt table has hooks to code that is not longer
running is quite explainable.    The rest of the failures need more
investigation.

All of the hardware driver stabilization work for sys_kexec can be
postponed until after the feature freeze.  And on that note I plan
on removing the few driver fixes in my current patch and posting a
stripped down version later today.

Having sys_kexec in the kernel makes what I am doing more explainable,
and makes people think a little differently about device_shutdown, and
the reboot notifier call chain.  And with sys_kexec in the kernel
people mutating the internal kernel interfaces will be encouraged to
take sys_kexec into account.  

My point is that while the sys_kexec patch is not especially intrusive
in and of itself, I am fairly certain usage of it can be stabilized
easier in the kernel than outside of it.

Unless something comes up the plan for today is to incorporate the
very minor changes that have been suggested (Makefile, Config.in,
Config.help type), to split out the driver fixes I currently have
into separate patches, and post just a bare bones sys_kexec patch,
ready for inclusion in 2.5.

After the feature freeze I have on the todo list to look at porting
sys_kexec to the Itanium and Hammer.  As well as building debugging
tools, and in general debugging sys_kexec so it is generally useful.

Eric

  parent reply	other threads:[~2002-10-26 15:05 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-10-25 20:57 The return of the return of crunch time (2.5 merge candidate list 1.6) Rob Landley
2002-10-26  2:35 ` The return of the return of crunch time (2.5 merge candidate list 1.6) (crypto api info) James Morris
2002-10-26  2:42 ` The return of the return of crunch time (2.5 merge candidate list 1.6) Hans Reiser
2002-10-27 15:11   ` Rob Landley
2002-10-28  0:27     ` Hans Reiser
2002-10-26 15:09 ` Eric W. Biederman [this message]
     [not found] <200210251557.55202.landley@trommello.org.suse.lists.linux.kernel>
2002-10-26  7:53 ` Andi Kleen
2002-10-26  8:13   ` Andreas Dilger
     [not found]   ` <20021026190906.GA20571@pimlott.net>
2002-10-27  7:01     ` Andi Kleen
2002-10-27 15:20       ` Andrew Pimlott
2002-10-27 17:57         ` Rob Landley
2002-10-28  4:06           ` Andrew Pimlott
2002-10-28  4:32             ` Andi Kleen
2002-10-28  4:09           ` Andi Kleen
2002-10-28  4:30         ` Andi Kleen
2002-01-15 17:44           ` Pavel Machek
2002-11-08 22:02             ` Andrew Pimlott
2002-10-28  6:03           ` Andrew Pimlott

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=m1adl1kziy.fsf@frodo.biederman.org \
    --to=ebiederm@xmission.com \
    --cc=landley@trommello.org \
    --cc=linux-kernel@vger.kernel.org \
    /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