[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <m1iqxegbxm.fsf@frodo.ebiederm.org>
Date: Thu, 15 May 2008 20:33:41 -0700
From: ebiederm@...ssion.com (Eric W. Biederman)
To: "Huang, Ying" <ying.huang@...el.com>
Cc: Vivek Goyal <vgoyal@...hat.com>, Pavel Machek <pavel@....cz>,
nigel@...el.suspend2.net, "Rafael J. Wysocki" <rjw@...k.pl>,
Andrew Morton <akpm@...ux-foundation.org>,
linux-kernel@...r.kernel.org,
Kexec Mailing List <kexec@...ts.infradead.org>
Subject: Re: [PATCH] kexec based hibernation: a prototype of kexec multi-stage load
"Huang, Ying" <ying.huang@...el.com> writes:
> I think it is reasonable to enable jumping back and forth more than one
> time.
I'm not opposed. I just don't understand the utility yet.
> So the following should be possible:
>
> 1. Jump from A to B (actually jump to purgatory, trigger the boot of B)
> 2. Jump from B to A
> 3. Jump from A to B again (jump to the kexec_jump_back_entry of B)
(And we go through purgatory which remembers
the kexec_jump_back_entry of B)
> 4. Jump from B to A
> ...
>
> So it should be possible to get the re-entry point of kernel B in
> kexec_jump_back_entry of kernel A too. So I think in
> kexec_jump_back_entry, the caller's stack should be checked to get
> re-entry point of peer. And the stack state is different depend on where
> come from, from relocate_new_kernel() or return.
Yes.
Any conditional logic needs to be in purgatory or a similar trampoline.
Eric
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists