From: "Huang, Ying" <ying.huang@intel.com>
To: Nigel Cunningham <nigel@nigel.suspend2.net>
Cc: nigel@suspend2.net,
Kexec Mailing List <kexec@lists.infradead.org>,
linux-kernel@vger.kernel.org,
"Eric W. Biederman" <ebiederm@xmission.com>,
Pavel Machek <pavel@ucw.cz>,
Andrew Morton <akpm@linux-foundation.org>,
linux-pm@lists.linux-foundation.org,
Jeremy Maitin-Shepard <jbms@cmu.edu>
Subject: Re: [RFC][PATCH 1/2 -mm] kexec based hibernation -v3: kexec jump
Date: Fri, 21 Sep 2007 10:45:57 +0800 [thread overview]
Message-ID: <1190342757.21818.75.camel@caritas-dev.intel.com> (raw)
In-Reply-To: <200709211225.25874.nigel@nigel.suspend2.net>
On Fri, 2007-09-21 at 12:25 +1000, Nigel Cunningham wrote:
> Hi.
>
> On Friday 21 September 2007 12:18:57 Huang, Ying wrote:
> > > That's not true. Kexec will itself be an implementation, otherwise you'd
> end
> > > up with people screaming about no hibernation support. And it won't result
> in
> > > the complete removal of the existing hibernation code from the kernel. At
> the
> > > very least, it's going to want the kernel being hibernated to have an
> > > interface by which it can find out which pages need to be saved. I
> wouldn't
> >
> > This has been done by kexec/kdump guys. There is a makedumpfile utility
> > and vmcoreinfo kernel mechanism to implement this. We can just reuse the
> > work of kexec/kdump.
>
> You've already said that you are currently saving all pages. How are you going
> to avoid saving free pages if you don't get the information from the kernel
> being saved? This will require more than just code reuse.
I have not tried "makedumpfile". The "makedumpfile" avoids saving free
pages through checking the "mem_map" of the original kernel. I think
there is nothing prevent it been used for kexec based hibernation image
writing.
This is an example of duplicated effort between kexec/kdump and original
hibernation implementation. Both kexec/kdump and hibernation need to
save memory image without saving the free pages. This can be done once
instead of twice.
> > > be surprised if it also ends up with an interface in which the kernel
> being
> > > hibernated tells it what bdev/sectors in which to save the image as well
> > > (otherwise you're going to need a dedicated, otherwise untouched partition
> > > exclusively for the kexec'd kernel to use), or what network settings to
> use
> > > if it wants to try to save the image to a network storage device. On top
> of
> >
> > These can be done in user space. The image writing will be done in user
> > space for kexec base hibernation.
>
> That only complicates things more. Now you need to get the information on
> where to save the image from the kernel being saved, then transfer it to
> userspace after switching to the kexec kernel. That's more kernel code, not
> less.
This is fairly simple in fact. For example, you can specify the
bdev/sectors in kernel command line when do kexec load "kexec -l <...>
--append='...'", then the image writing system can get it through
"cat /proc/cmdline".
> > > that, there are all the issues related to device reinitialisation and so
> on,
> >
> > Yes. Device reinitialisation is needed. But all in all, kexec based
> > hibernation can be much simpler on the kernel side.
>
> Sorry, but I'm yet to be convinced. I'm not unwilling, I'm just not there yet.
>
> > > and it looks like there's greatly increased pain for users wanting to
> > > configure this new implementation. Kexec is by no means proven to be the
> > > panacea for all the issues.
> >
> > Configuration is a problem, we will work on it.
> >
> > But, because it is based on kexec/kdump instead of starting from
> > scratch, the duplicated part between hibernation and kexec/kdump can be
> > eliminated.
>
Best Regards,
Huang Ying
_______________________________________________
kexec mailing list
kexec@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/kexec
WARNING: multiple messages have this Message-ID (diff)
From: "Huang, Ying" <ying.huang@intel.com>
To: Nigel Cunningham <nigel@nigel.suspend2.net>
Cc: Andrew Morton <akpm@linux-foundation.org>,
nigel@suspend2.net, Pavel Machek <pavel@ucw.cz>,
"Eric W. Biederman" <ebiederm@xmission.com>,
Jeremy Maitin-Shepard <jbms@cmu.edu>,
linux-kernel@vger.kernel.org,
linux-pm@lists.linux-foundation.org,
Kexec Mailing List <kexec@lists.infradead.org>
Subject: Re: [RFC][PATCH 1/2 -mm] kexec based hibernation -v3: kexec jump
Date: Fri, 21 Sep 2007 10:45:57 +0800 [thread overview]
Message-ID: <1190342757.21818.75.camel@caritas-dev.intel.com> (raw)
In-Reply-To: <200709211225.25874.nigel@nigel.suspend2.net>
On Fri, 2007-09-21 at 12:25 +1000, Nigel Cunningham wrote:
> Hi.
>
> On Friday 21 September 2007 12:18:57 Huang, Ying wrote:
> > > That's not true. Kexec will itself be an implementation, otherwise you'd
> end
> > > up with people screaming about no hibernation support. And it won't result
> in
> > > the complete removal of the existing hibernation code from the kernel. At
> the
> > > very least, it's going to want the kernel being hibernated to have an
> > > interface by which it can find out which pages need to be saved. I
> wouldn't
> >
> > This has been done by kexec/kdump guys. There is a makedumpfile utility
> > and vmcoreinfo kernel mechanism to implement this. We can just reuse the
> > work of kexec/kdump.
>
> You've already said that you are currently saving all pages. How are you going
> to avoid saving free pages if you don't get the information from the kernel
> being saved? This will require more than just code reuse.
I have not tried "makedumpfile". The "makedumpfile" avoids saving free
pages through checking the "mem_map" of the original kernel. I think
there is nothing prevent it been used for kexec based hibernation image
writing.
This is an example of duplicated effort between kexec/kdump and original
hibernation implementation. Both kexec/kdump and hibernation need to
save memory image without saving the free pages. This can be done once
instead of twice.
> > > be surprised if it also ends up with an interface in which the kernel
> being
> > > hibernated tells it what bdev/sectors in which to save the image as well
> > > (otherwise you're going to need a dedicated, otherwise untouched partition
> > > exclusively for the kexec'd kernel to use), or what network settings to
> use
> > > if it wants to try to save the image to a network storage device. On top
> of
> >
> > These can be done in user space. The image writing will be done in user
> > space for kexec base hibernation.
>
> That only complicates things more. Now you need to get the information on
> where to save the image from the kernel being saved, then transfer it to
> userspace after switching to the kexec kernel. That's more kernel code, not
> less.
This is fairly simple in fact. For example, you can specify the
bdev/sectors in kernel command line when do kexec load "kexec -l <...>
--append='...'", then the image writing system can get it through
"cat /proc/cmdline".
> > > that, there are all the issues related to device reinitialisation and so
> on,
> >
> > Yes. Device reinitialisation is needed. But all in all, kexec based
> > hibernation can be much simpler on the kernel side.
>
> Sorry, but I'm yet to be convinced. I'm not unwilling, I'm just not there yet.
>
> > > and it looks like there's greatly increased pain for users wanting to
> > > configure this new implementation. Kexec is by no means proven to be the
> > > panacea for all the issues.
> >
> > Configuration is a problem, we will work on it.
> >
> > But, because it is based on kexec/kdump instead of starting from
> > scratch, the duplicated part between hibernation and kexec/kdump can be
> > eliminated.
>
Best Regards,
Huang Ying
next prev parent reply other threads:[~2007-09-21 2:44 UTC|newest]
Thread overview: 167+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-09-20 5:34 [RFC][PATCH 1/2 -mm] kexec based hibernation -v3: kexec jump Huang, Ying
2007-09-20 5:34 ` Huang, Ying
2007-09-20 10:09 ` Pavel Machek
2007-09-20 10:09 ` Pavel Machek
2007-09-21 0:24 ` Nigel Cunningham
2007-09-21 0:24 ` Nigel Cunningham
2007-09-21 0:24 ` Nigel Cunningham
2007-09-21 1:06 ` Andrew Morton
2007-09-21 1:06 ` Andrew Morton
2007-09-21 1:06 ` Andrew Morton
2007-09-21 1:19 ` Nigel Cunningham
2007-09-21 1:19 ` Nigel Cunningham
2007-09-21 1:41 ` Andrew Morton
2007-09-21 1:41 ` Andrew Morton
2007-09-21 1:57 ` Nigel Cunningham
2007-09-21 1:57 ` Nigel Cunningham
2007-09-21 2:18 ` Huang, Ying
2007-09-21 2:18 ` Huang, Ying
2007-09-21 2:18 ` Huang, Ying
2007-09-21 2:25 ` Nigel Cunningham
2007-09-21 2:25 ` Nigel Cunningham
2007-09-21 2:25 ` Nigel Cunningham
2007-09-21 2:45 ` Huang, Ying [this message]
2007-09-21 2:45 ` Huang, Ying
2007-09-21 2:58 ` Nigel Cunningham
2007-09-21 2:58 ` Nigel Cunningham
2007-09-21 2:58 ` Nigel Cunningham
2007-09-21 4:46 ` Eric W. Biederman
2007-09-21 4:46 ` Eric W. Biederman
2007-09-21 4:46 ` Eric W. Biederman
2007-09-21 9:45 ` Pavel Machek
2007-09-21 9:45 ` Pavel Machek
2007-09-21 9:45 ` Pavel Machek
2007-09-26 20:30 ` Joseph Fannin
2007-09-26 20:30 ` Joseph Fannin
2007-09-26 20:52 ` Nigel Cunningham
2007-09-26 20:52 ` Nigel Cunningham
2007-09-26 20:52 ` Nigel Cunningham
2007-09-27 6:33 ` Huang, Ying
2007-09-27 6:33 ` Huang, Ying
2007-09-27 6:33 ` Huang, Ying
2007-09-27 6:35 ` Nigel Cunningham
2007-09-27 6:35 ` Nigel Cunningham
2007-09-27 6:35 ` Nigel Cunningham
2007-09-26 20:30 ` Joseph Fannin
2007-09-22 22:02 ` Alon Bar-Lev
2007-09-22 22:02 ` Alon Bar-Lev
2007-09-22 22:02 ` Alon Bar-Lev
2007-09-21 2:45 ` Huang, Ying
2007-09-21 3:33 ` Eric W. Biederman
2007-09-21 3:33 ` Eric W. Biederman
2007-09-21 12:09 ` Rafael J. Wysocki
2007-09-21 12:09 ` [linux-pm] " Rafael J. Wysocki
2007-09-21 12:09 ` Rafael J. Wysocki
2007-09-21 13:14 ` huang ying
2007-09-21 13:14 ` huang ying
2007-09-21 14:31 ` Rafael J. Wysocki
2007-09-21 14:31 ` Rafael J. Wysocki
2007-09-21 14:45 ` Alan Stern
2007-09-21 15:27 ` Rafael J. Wysocki
2007-09-21 15:02 ` [linux-pm] " huang ying
2007-09-21 15:02 ` huang ying
2007-09-21 15:50 ` Rafael J. Wysocki
2007-09-21 15:50 ` Rafael J. Wysocki
2007-09-21 15:50 ` Rafael J. Wysocki
2007-09-21 15:02 ` huang ying
2007-09-21 18:11 ` Jeremy Maitin-Shepard
2007-09-21 18:11 ` [linux-pm] " Jeremy Maitin-Shepard
2007-09-21 18:11 ` Jeremy Maitin-Shepard
2007-09-21 19:00 ` Rafael J. Wysocki
2007-09-21 19:00 ` Rafael J. Wysocki
2007-09-21 19:00 ` Rafael J. Wysocki
2007-09-21 19:45 ` [linux-pm] " Alan Stern
2007-09-21 19:45 ` Alan Stern
2007-09-21 20:15 ` Rafael J. Wysocki
2007-09-21 20:15 ` [linux-pm] " Rafael J. Wysocki
2007-09-21 20:15 ` Rafael J. Wysocki
2007-09-21 20:26 ` Jeremy Maitin-Shepard
2007-09-21 20:26 ` Jeremy Maitin-Shepard
2007-09-21 20:53 ` Rafael J. Wysocki
2007-09-21 20:53 ` [linux-pm] " Rafael J. Wysocki
2007-09-21 20:53 ` Rafael J. Wysocki
2007-09-21 21:08 ` Jeremy Maitin-Shepard
2007-09-21 21:08 ` Jeremy Maitin-Shepard
2007-09-21 21:25 ` Rafael J. Wysocki
2007-09-21 21:25 ` Rafael J. Wysocki
2007-09-21 21:16 ` Jeremy Maitin-Shepard
2007-09-21 21:16 ` Jeremy Maitin-Shepard
2007-09-21 23:19 ` Kyle Moffett
2007-09-21 23:19 ` [linux-pm] " Kyle Moffett
2007-09-21 23:19 ` Kyle Moffett
2007-09-21 23:47 ` Nigel Cunningham
2007-09-21 23:47 ` [linux-pm] " Nigel Cunningham
2007-09-21 23:47 ` Nigel Cunningham
2007-09-22 10:40 ` Rafael J. Wysocki
2007-09-22 10:40 ` [linux-pm] " Rafael J. Wysocki
2007-09-22 10:40 ` Rafael J. Wysocki
2007-10-11 20:54 ` Pavel Machek
2007-10-11 20:54 ` [linux-pm] " Pavel Machek
2007-10-11 20:54 ` Pavel Machek
2007-10-24 20:38 ` Rafael J. Wysocki
2007-10-24 20:38 ` [linux-pm] " Rafael J. Wysocki
2007-10-24 20:38 ` Rafael J. Wysocki
2007-09-22 10:34 ` Rafael J. Wysocki
2007-09-22 10:34 ` Rafael J. Wysocki
2007-09-22 18:00 ` Kyle Moffett
2007-09-22 18:00 ` Kyle Moffett
2007-09-22 21:51 ` Rafael J. Wysocki
2007-09-22 21:51 ` [linux-pm] " Rafael J. Wysocki
2007-09-22 21:51 ` Rafael J. Wysocki
2007-09-26 20:52 ` Joseph Fannin
2007-09-26 20:52 ` Joseph Fannin
2007-09-26 20:52 ` Joseph Fannin
2007-09-22 18:00 ` Kyle Moffett
2007-09-22 10:34 ` Rafael J. Wysocki
2007-09-21 21:16 ` Jeremy Maitin-Shepard
2007-09-21 21:25 ` Rafael J. Wysocki
2007-09-21 21:08 ` Jeremy Maitin-Shepard
2007-09-21 20:26 ` Jeremy Maitin-Shepard
2007-09-21 19:45 ` Alan Stern
2007-09-21 14:31 ` Rafael J. Wysocki
2007-09-21 13:14 ` huang ying
2007-09-21 3:33 ` Eric W. Biederman
2007-09-21 4:16 ` Andrew Morton
2007-09-21 4:16 ` Andrew Morton
2007-09-21 4:16 ` Andrew Morton
2007-09-21 1:57 ` Nigel Cunningham
2007-09-21 11:56 ` Rafael J. Wysocki
2007-09-21 11:56 ` Rafael J. Wysocki
2007-09-21 11:58 ` Nigel Cunningham
2007-09-21 11:58 ` Nigel Cunningham
2007-09-21 12:18 ` Rafael J. Wysocki
2007-09-21 12:18 ` Rafael J. Wysocki
2007-09-21 12:18 ` Rafael J. Wysocki
2007-09-21 12:15 ` Nigel Cunningham
2007-09-21 12:15 ` Nigel Cunningham
2007-09-21 12:15 ` Nigel Cunningham
2007-09-21 11:58 ` Nigel Cunningham
2007-09-21 13:25 ` huang ying
2007-09-21 13:25 ` huang ying
2007-09-21 13:25 ` huang ying
2007-09-21 11:56 ` Rafael J. Wysocki
2007-09-21 1:41 ` Andrew Morton
2007-09-21 1:19 ` Nigel Cunningham
2007-09-24 17:37 ` Thomas Meyer
2007-09-24 17:37 ` Thomas Meyer
2007-09-24 17:37 ` Thomas Meyer
2007-09-21 9:49 ` Pavel Machek
2007-09-21 9:49 ` Pavel Machek
2007-09-21 12:10 ` Rafael J. Wysocki
2007-09-21 12:10 ` [linux-pm] " Rafael J. Wysocki
2007-09-21 12:10 ` Rafael J. Wysocki
2007-09-21 9:49 ` Pavel Machek
2007-09-20 10:09 ` Pavel Machek
2007-09-21 2:55 ` Eric W. Biederman
2007-09-21 2:55 ` Eric W. Biederman
2007-09-21 2:55 ` Eric W. Biederman
2007-09-21 7:27 ` Huang, Ying
2007-09-21 7:27 ` Huang, Ying
2007-09-21 7:27 ` Huang, Ying
2007-09-21 4:01 ` Eric W. Biederman
2007-09-21 4:01 ` Eric W. Biederman
2007-09-21 8:42 ` Huang, Ying
2007-09-21 8:42 ` Huang, Ying
2007-09-21 8:42 ` Huang, Ying
2007-09-21 4:01 ` Eric W. Biederman
-- strict thread matches above, loose matches on Subject: below --
2007-09-20 5:34 Huang, Ying
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=1190342757.21818.75.camel@caritas-dev.intel.com \
--to=ying.huang@intel.com \
--cc=akpm@linux-foundation.org \
--cc=ebiederm@xmission.com \
--cc=jbms@cmu.edu \
--cc=kexec@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@lists.linux-foundation.org \
--cc=nigel@nigel.suspend2.net \
--cc=nigel@suspend2.net \
--cc=pavel@ucw.cz \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.