From: Jeremy Maitin-Shepard <jbms@cmu.edu>
To: Milton Miller <miltonm@bga.com>
Cc: linux-pm <linux-pm@lists.linux-foundation.org>
Subject: Re: Re: Hibernation considerations
Date: Fri, 20 Jul 2007 16:23:18 -0400 [thread overview]
Message-ID: <87ir8eq0y1.fsf@jbms.ath.cx> (raw)
In-Reply-To: <f56664625c843ac71672d2818c4df69f@bga.com> (Milton Miller's message of "Fri\, 20 Jul 2007 14\:09\:00 -0500")
Milton Miller <miltonm@bga.com> writes:
[snip]
> There is a requirement to hibernate without dedicating a partition to save the
> data. Two reasons given have been upgrading ram in a machine should not require
> a repartition of the hard drive, and the intel macs can only have 4 partitions
> total and people want to dual boot.
> Not having a separate partition means the userspace in the initramfs needs to
> obtain a list of blocks upon which to write the data. My first proposal was to
> do it all from userspace of the new kernel by calling bmap on the filesystem
> mounted read only. My later proposal is to allocate the blocks in the
> suspending kernel and pass the block list to userspace.
I see. The later proposal is needed anyway in order to support
still-in-use swap partitions and swap files. It is unfortunate that
special support will be needed to tell the "save image" kernel about the
storage device in order to support in-use swap partitions and files
(both swap files and regular). It seems that the kexec approach will
need to support two different "storage methods": getting a block list
from the hibernated kernel, or having the "save image" kernel handle
itself (e.g. in order to support complicated storage methods like over
the network, FUSE, etc.). There is the additional complication for the
"hibernated kernel tells save image kernel where to save the image"
method that the relevant block device might not even have the same
major/minor number under the save-to-disk kernel due to dynamic device
numbering, etc. The same problem applies anyway to finding the block
device on resume (and is a problem that exists with the existing
hibernate implementations as well); in theory it can be identified by
attributes like filesystem label or UUID, or physical device path.
There doesn't seem to be an existing general solution to this problem.
Note: I have noticed that swap partitions can have a filesystem UUID,
but the e2fsprogs blkid program does not find it while the swap
partition is marked as a hibernate image.
> There is still the question of how does the restore kernel find the block list
> to restore from. It does help the first kernel invalidating the image in the
> suspend-to-both resume-from-ram case.
Suspend2/TuxOnIce currently supports writing to regular files as well as
swap files. To resume, it is necessary to specify the device and the
start block. The first block must contain sufficient information to
find all of the other blocks; presumably the same technique can be used
for the kexec approach.
> PS: I'm not subscribed to the list, and only saw your reply on the archives
> ... which give me my message id as the message to reply to. I'd appreciate
> being cc'd in the future.
The message was sent directly to you, so you should have received it.
(Your e-mail address was in the To: header).
--
Jeremy Maitin-Shepard
next prev parent reply other threads:[~2007-07-20 20:23 UTC|newest]
Thread overview: 81+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <f29402c6050f9c3ff5d83a59cea2de58%40bga.com>
2007-07-20 19:09 ` Re: Hibernation considerations Milton Miller
2007-07-20 20:23 ` Jeremy Maitin-Shepard [this message]
[not found] <9D7649D18729DE4BB2BD7B494F7FEDC236CF5C@pdsmsx415.ccr.corp.intel.com>
2007-07-24 14:50 ` Alan Stern
[not found] <Pine.LNX.4.44L0.0707231120380.3545-100000@iolanthe.rowland.org>
2007-07-23 21:55 ` Nigel Cunningham
[not found] ` <200707240755.01820.nigel@nigel.suspend2.net>
2007-07-23 22:10 ` Rafael J. Wysocki
[not found] <Pine.LNX.4.64.0707231121220.3828@asgard.lang.hm>
2007-07-23 20:22 ` Alan Stern
2007-07-24 13:26 ` Huang, Ying
[not found] <Pine.LNX.4.44L0.0707231035150.3545-100000@iolanthe.rowland.org>
2007-07-23 19:01 ` david
[not found] <200707231311.56398.nigel@nigel.suspend2.net>
2007-07-23 15:23 ` Alan Stern
[not found] <Pine.LNX.4.44L0.0707221116060.15224-100000@netrider.rowland.org>
2007-07-22 16:27 ` Miklos Szeredi
2007-07-22 20:09 ` Alan Stern
2007-07-22 22:42 ` Nigel Cunningham
[not found] ` <200707230842.22121.nigel@nigel.suspend2.net>
2007-07-22 23:09 ` Rafael J. Wysocki
[not found] ` <200707230109.23071.rjw@sisk.pl>
2007-07-22 23:18 ` Nigel Cunningham
2007-07-23 0:04 ` Paul Mackerras
[not found] ` <18083.61595.217126.824924@cargo.ozlabs.ibm.com>
2007-07-23 3:11 ` Nigel Cunningham
2007-07-23 5:31 ` david
2007-07-23 10:24 ` Miklos Szeredi
2007-07-23 12:08 ` Rafael J. Wysocki
2007-07-23 12:14 ` Miklos Szeredi
[not found] ` <E1ICwoE-0004q8-00@dorka.pomaz.szeredi.hu>
2007-07-23 12:27 ` Rafael J. Wysocki
2007-07-23 12:31 ` Oliver Neukum
[not found] ` <200707231431.30372.oliver@neukum.org>
2007-07-23 13:08 ` Miklos Szeredi
[not found] ` <200707231601.09541.rjw@sisk.pl>
2007-07-23 14:01 ` Miklos Szeredi
2007-07-23 14:01 ` Rafael J. Wysocki
2007-07-23 19:08 ` david
[not found] <Pine.LNX.4.44L0.0707221608140.16031-100000@netrider.rowland.org>
2007-07-22 21:54 ` david
[not found] <Pine.LNX.4.64.0707212000380.6747@asgard.lang.hm>
2007-07-22 16:00 ` Alan Stern
2007-07-22 21:50 ` david
2007-07-23 15:19 ` Alan Stern
[not found] <Pine.LNX.4.44L0.0707210956320.8201-100000@netrider.rowland.org>
2007-07-22 3:43 ` david
[not found] <877ioupxi8.fsf@jbms.ath.cx>
2007-07-20 22:35 ` Alan Stern
2007-07-20 22:43 ` david
2007-07-20 22:48 ` Jeremy Maitin-Shepard
[not found] ` <Pine.LNX.4.64.0707201540260.5166@asgard.lang.hm>
2007-07-21 5:21 ` Nigel Cunningham
2007-07-21 14:10 ` Alan Stern
[not found] <200707202335.05519.oliver@neukum.org>
2007-07-20 22:25 ` Alan Stern
[not found] ` <Pine.LNX.4.44L0.0707201820050.5241-100000@iolanthe.rowland.org>
2007-07-23 14:23 ` Oliver Neukum
2007-08-01 9:34 ` Pavel Machek
[not found] ` <20070801093437.GC4808@ucw.cz>
2007-08-03 3:50 ` david
[not found] <Pine.LNX.4.44L0.0707201608120.2546-100000@iolanthe.rowland.org>
2007-07-20 21:35 ` Oliver Neukum
[not found] <200707202203.27849.oliver@neukum.org>
2007-07-20 20:12 ` Alan Stern
[not found] <fe998950b9d5ad317d5c1f5ff4e21ac9@bga.com>
2007-07-20 19:37 ` Alan Stern
[not found] <Pine.LNX.4.44L0.0707201408060.2546-100000@iolanthe.rowland.org>
2007-07-20 19:08 ` Milton Miller
2007-07-20 20:03 ` Oliver Neukum
2007-07-17 20:27 david
[not found] ` <Pine.LNX.4.44L0.0707171416120.3728-100000@iolanthe.rowland.org>
[not found] ` <200707172217.01890.rjw@sisk.pl>
[not found] ` <87odiag45q.fsf@jbms.ath.cx>
[not found] ` <200707151433.34625.rjw@sisk.pl>
[not found] ` <200707172320.16279.rjw@sisk.pl>
2007-07-20 14:01 ` Milton Miller
2007-07-20 14:48 ` Huang, Ying
2007-07-20 15:48 ` david
2007-07-22 2:17 ` Huang, Ying
[not found] ` <1185070634.3517.11.camel@caritas-dev.intel.com>
2007-07-22 2:32 ` david
2007-07-20 21:34 ` Rafael J. Wysocki
[not found] ` <ea7a437ca4038d408ac544bbc3c2434a@bga.com>
[not found] ` <200707192228.05136.rjw@sisk.pl>
2007-07-20 16:08 ` Milton Miller
2007-07-20 16:20 ` Alan Stern
2007-07-20 17:32 ` Milton Miller
2007-07-20 18:17 ` Alan Stern
2007-07-20 20:31 ` david
2007-07-20 21:24 ` Alan Stern
2007-07-20 21:34 ` david
2007-07-20 21:37 ` Jeremy Maitin-Shepard
[not found] ` <Pine.LNX.4.64.0707201428080.5166@asgard.lang.hm>
2007-07-20 22:15 ` Rafael J. Wysocki
2007-07-20 21:02 ` Rafael J. Wysocki
2007-07-21 11:44 ` Miklos Szeredi
[not found] ` <E1ICDNw-0008HC-00@dorka.pomaz.szeredi.hu>
2007-07-21 12:43 ` Nigel Cunningham
[not found] ` <200707212243.35602.nigel@nigel.suspend2.net>
2007-07-21 13:56 ` Alan Stern
2007-07-21 16:13 ` Jeremy Maitin-Shepard
[not found] ` <87lkd9ohtn.fsf@jbms.ath.cx>
2007-07-21 18:12 ` Miklos Szeredi
2007-07-21 19:20 ` Rafael J. Wysocki
2007-07-21 22:21 ` Nigel Cunningham
[not found] ` <200707212120.04645.rjw@sisk.pl>
2007-08-01 9:22 ` Pavel Machek
[not found] ` <20070801092227.GB4808@ucw.cz>
2007-08-02 17:02 ` Rafael J. Wysocki
2007-08-02 17:02 ` Rafael J. Wysocki
2007-07-21 22:16 ` Nigel Cunningham
2007-07-22 15:26 ` Alan Stern
2007-08-01 9:19 ` Pavel Machek
[not found] ` <Pine.LNX.4.64.0707191542430.28721@asgard.lang.hm>
[not found] ` <200707201317.58025.rjw@sisk.pl>
2007-07-20 16:56 ` Milton Miller
[not found] ` <f29402c6050f9c3ff5d83a59cea2de58@bga.com>
2007-07-20 17:31 ` Jeremy Maitin-Shepard
2007-07-20 21:30 ` Rafael J. Wysocki
2007-07-20 19:26 ` david
2007-07-20 21:28 ` Rafael J. Wysocki
2007-07-20 21:33 ` Jeremy Maitin-Shepard
[not found] ` <87ejj2pxoc.fsf@jbms.ath.cx>
2007-07-20 22:19 ` Rafael J. Wysocki
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=87ir8eq0y1.fsf@jbms.ath.cx \
--to=jbms@cmu.edu \
--cc=linux-pm@lists.linux-foundation.org \
--cc=miltonm@bga.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