From: ebiederm@xmission.com (Eric W. Biederman)
To: Vivek Goyal <vgoyal@redhat.com>
Cc: "Huang, Ying" <ying.huang@intel.com>, Pavel Machek <pavel@ucw.cz>,
nigel@nigel.suspend2.net, "Rafael J. Wysocki" <rjw@sisk.pl>,
Andrew Morton <akpm@linux-foundation.org>,
linux-kernel@vger.kernel.org,
Kexec Mailing List <kexec@lists.infradead.org>
Subject: Re: [PATCH] kexec based hibernation: a prototype of kexec multi-stage load
Date: Sat, 17 May 2008 18:59:58 -0700 [thread overview]
Message-ID: <m1skwg8j8h.fsf@frodo.ebiederm.org> (raw)
In-Reply-To: <20080516032758.GD6926@redhat.com> (Vivek Goyal's message of "Thu, 15 May 2008 23:27:58 -0400")
Vivek Goyal <vgoyal@redhat.com> writes:
>
> To me this idea also looks good. So control flow will look something
> as follows?
>
> relocate_new kernel:
>
> if (!preserve_context)
> set registers to known state.
> jump to purgatory.
> else
> goto jump-back-setup:
>
> jump-back-setup:
> - Color the stack.
> move $0xffffffff 0(%esp)
>
> - call %edx
>
> kexec_jump_back_entry:
>
> - If 0 (%esp) is not -1
> image->start = 0(%esp) //Re entry point of kernel B. Store it.
> else
> We returned from BIOS call. Re-entry point has not changed
> Do nothing.
>
> - Continue to resume kernel A
That logic has more conditionals then I like but it may in
fact be reasonable. I don't have any fundamental objections
into making this a co-routine interface.
That said. I think immediately implementing a coroutine interface
is a premature optimization. Please let's work on call/return.
Then prototype the coroutine method of suspend to swap and see
how much time it saves us.
Honestly I will be surprised if time will be saved, as historically
at least the bottleneck in kernel startup time is initializing
hardware, and we need to essentially redo all of that initialization.
Eric
next prev parent reply other threads:[~2008-05-18 2:10 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-05-12 6:40 Huang, Ying
2008-05-13 5:34 ` Vivek Goyal
2008-05-14 1:57 ` Huang, Ying
2008-05-14 2:56 ` Vivek Goyal
2008-05-14 3:37 ` Huang, Ying
2008-05-14 21:43 ` Eric W. Biederman
2008-05-15 2:40 ` Huang, Ying
2008-05-15 4:57 ` Huang, Ying
2008-05-15 18:39 ` Eric W. Biederman
2008-05-16 1:41 ` Huang, Ying
2008-05-16 2:25 ` Eric W. Biederman
2008-05-16 2:56 ` Huang, Ying
2008-05-16 3:27 ` Vivek Goyal
2008-05-16 13:40 ` Vivek Goyal
2008-05-18 1:59 ` Eric W. Biederman [this message]
2008-05-16 3:33 ` Eric W. Biederman
2008-05-16 2:00 ` Vivek Goyal
2008-05-16 2:19 ` Huang, Ying
2008-05-16 2:55 ` Eric W. Biederman
2008-05-16 4:52 ` Huang, Ying
2008-05-16 13:36 ` Vivek Goyal
2008-05-16 11:58 ` Pavel Machek
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=m1skwg8j8h.fsf@frodo.ebiederm.org \
--to=ebiederm@xmission.com \
--cc=akpm@linux-foundation.org \
--cc=kexec@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=nigel@nigel.suspend2.net \
--cc=pavel@ucw.cz \
--cc=rjw@sisk.pl \
--cc=vgoyal@redhat.com \
--cc=ying.huang@intel.com \
/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
all inboxes | Powered by JetHome®