public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Jan-Benedict Glaw <jbglaw@lug-owl.de>
To: linux-kernel@vger.kernel.org
Subject: Re: will be able to load new kernel without restarting?
Date: Sun, 4 May 2003 19:09:47 +0200	[thread overview]
Message-ID: <20030504170947.GM27494@lug-owl.de> (raw)
In-Reply-To: <200305041200000380.00B553E1@smtp.comcast.net>

[-- Attachment #1: Type: text/plain, Size: 2378 bytes --]

On Sun, 2003-05-04 12:00:00 -0400, rmoser <mlmoser@comcast.net>
wrote in message <200305041200000380.00B553E1@smtp.comcast.net>:
> You silly boys.  Thinking everything is impossible.  The old kernel
> is just a shadow of the new one... just a shadow............  I'll try
> spitting out a basic sketch.  This I'm sure you've done but if not,
> fix it.  I'm an idiot, so this won't work as-is.
> 
> For starters, freeze the system.  halt EVERYTHING.
> 
> Now load the new kernel.
> 
> Now you have this thing in RAM.  Fine.  It's not running but it's in
> RAM.
> 
> Start feeding data over to it.  In a manner it can understand.  You know,
> make all the modules work with a standard named stream (check the
> Advanced Tracker planning file at the very end:
> http://advancedtracker.sourceforge.net/at/__at.plan.txt
> I did copy it below, so you don't have to go there).  This is the
> hard part--Module compatibility through defined names.  This would
> bloat the kernel, so think about it and maybe you'll figure out a good
> way.

Sounds like being a nice feature (esp. for 24/7 uptime), but it also
sounds like a *lot* of bloat. You'll have to encode (and to decode) any
single bit if data. But - where to put all that? See, it you're having
some Gigabytes of ram, you probably end with > 100MB only describing all
those single pages (4..8K) of RAM. Encode that into a named stream - you
end up with > 1GB of data. Then, you also need to encode the whole state
of any drivers.

What do you do if drivers/mm/you-name-it changed and now uses different
data structures? In fact, any two choosen kernels may potentially use
different data structures. So for the newly-to-load kernel, you need
stream decoders for all possible older kernels. Bloat again.

So if I would need something like that, I think kexec is the way to go,
possibly with a second machine for failover (to even close the kexec
booting gap).

However - if you like this feature so much you'd die for: nobody stops
you to implement a proof-of-concept:)

MfG, JBG

-- 
   Jan-Benedict Glaw       jbglaw@lug-owl.de    . +49-172-7608481
   "Eine Freie Meinung in  einem Freien Kopf    | Gegen Zensur | Gegen Krieg
    fuer einen Freien Staat voll Freier Bürger" | im Internet! |   im Irak!
      ret = do_actions((curr | FREE_SPEECH) & ~(IRAQ_WAR_2 | DRM | TCPA));

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

  reply	other threads:[~2003-05-04 16:57 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-05-03 19:24 will be able to load new kernel without restarting? Gabe Foobar
2003-05-03 20:56 ` Jurriaan
2003-05-03 22:52   ` Valdis.Kletnieks
2003-05-04  7:39     ` Eric W. Biederman
2003-05-04 16:00     ` rmoser
2003-05-04 17:09       ` Jan-Benedict Glaw [this message]
2003-05-05  2:49         ` rmoser
2003-05-05 18:49     ` Timothy Miller
2003-05-05 18:56       ` Valdis.Kletnieks
2003-05-05  1:07 ` Felipe Alfaro Solana

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=20030504170947.GM27494@lug-owl.de \
    --to=jbglaw@lug-owl.de \
    --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