From: Nigel Cunningham <nigel@nigel.suspend2.net>
To: Kyle Moffett <mrmacman_g4@mac.com>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>,
Pavel Machek <pavel@ucw.cz>, "Rafael J. Wysocki" <rjw@sisk.pl>,
Matthew Garrett <mjg59@srcf.ucam.org>,
linux-kernel@vger.kernel.org,
linux-pm@lists.linux-foundation.org,
Alan Stern <stern@rowland.harvard.edu>
Subject: Re: [PATCH] Remove process freezer from suspend to RAM pathway
Date: Tue, 10 Jul 2007 12:07:15 +1000 [thread overview]
Message-ID: <200707101207.16711.nigel@nigel.suspend2.net> (raw)
In-Reply-To: <CF605B91-2425-4FC2-9434-5F8877EEEEEB@mac.com>
[-- Attachment #1: Type: text/plain, Size: 9010 bytes --]
Hi.
Sorry for the long delay. Busy weekend and my motivation for working on
programming is almost zero at the moment...
On Friday 06 July 2007 15:01:48 Kyle Moffett wrote:
> On Jul 06, 2007, at 00:03:15, Nigel Cunningham wrote:
> > On Friday 06 July 2007 13:54:15 Benjamin Herrenschmidt wrote:
> >> On Fri, 2007-07-06 at 09:35 +1000, Nigel Cunningham wrote:
> >>>
> >>> Nice try :) Okay then, you remove the freezer, try hibernating,
> >>> then get back to me after you've fixed your filesystem because
> >>> some process that wasn't frozen started writing things after the
> >>> atomic copy (making the on disk filesystem inconsistent with the
> >>> snapshot).
> >>>
> >>> As Pavel rightly said, you can get rid of the freezer, but you're
> >>> only going to have to implement another one that does the
> >>> essentially the same thing, even if it is at some other level.
> >>
> >> I was mostly talking about STR... Regarding STD, we have a
> >> different problem and we all know it. The freezer is one somewhat
> >> horrible way to get it working for now, I would prefer something
> >> more along the way that blocks the page cache from writing out new
> >> dirty pages though, except those specifically flagged by the
> >> snapshot.
> >>
> >> That is, some kind of proper snapshotting facility, as linus was
> >> describing some time ago.
> >
> > The kind of thing Linus was talking about would limit you (as
> > swsusp and uswsusp do now) to only half the amount of memory.
>
> How so? Suppose hibernate is implemented like this:
>
> (1) Userspace program calls sys_freeze_processes()
> (a) Pokes all CPUs with IPMIs and tells them to finish the
> currently running timeslot then stop
> (b) Atomically sends SIGSTOP to all userspace processes in a non-
> trappable way, except the calling process and any process which is
> ptracing it.
> (c) Returns to the calling process.
Ok. First, I'll ignore the specification that userspace does this - I don't
think it matters whether it's userspace or kernel that does the suspending
and I'm yet to see a good reason for it to be [required to be] done from
userspace.
In this first step, you've reinvented the first part of the current freezer
implementation. The reason we don't use a real signal is precisely so we can
have an untrappable SIGSTOP. In this regard, I particularly remember Win4Lin
from a few years ago. It would die if you sent it a real signal, so we had to
do it this way. No doubt there are other instances I'm not aware of.
> (2) Userspace process sends SIGCONT to only those processes which are
> necessary for sync and a device-mapper snapshot.
How do you determine which ones are needed? Why stop them in the first place?
> (3) Userspace calls sys_snapshot_kernel(snapshot_overhead_pages)
> (a) Kernel starts freeing memory and swapping stuff out to make
> room for a copy of *kernel* memory (not pagecache, not process RAM).
> It does the same for at least snapshot_overhead_pages extra (used by
> userspace later). It then allocates this memory to keep it from
> going away. Since most processes are stopped we won't have much else
> competing with us for the RAM.
Ok. So now you also need processes running that are needed for swapping,
because freeing that memory might involve swapping. Fully agree with the
logic though (not really surprising - this is what I do in
Suspend2^wTuxOnIce).
> (a) Kernel uses the device-mapper up-call-into-filesystem
> machinery to get all mounted filesystems synced and ready for a DM
> snapshot. This may include sending data via the userspace processes
> resumed in (2). Any deadlocks here are userspace's fault (see (2)).
> Will need some modification to handle doing multiple blockdevs at a
> time. Anything using FUSE is basically perma-synced anyways (no dep-
> handling needed), and anything using loop should already be handled
> by DM. This includes allocating memory for the basic snapshot
> datastructures.
> (b) At this point all blockdev operations should be halted and
> disk caches flushed; that's all we care about.
> (c) Go through the device tree and quiesce DMA and shut off
> interrupts. Since all the disks are synced this is easy.
> (d) Use IPMIs again to get all the CPUs together, which should be
> easy as most processes are sleeping in IO or SIGSTOPed, and we're
> getting no interrupts.
> (e) One CPU turns off all interrupts on itself and takes an atomic
> snapshot of kernel memory into the previously allocated storage.
> Once again, does not include pagecache. The kernel also records a
> list of what pages *are* included in the pagecache. It then marks
> all userspace pages as copy-on-write.
Hotplugging cpus (when all those locking issues are taken care of) is simpler.
Prior to cpu hotplugging, I used IMPIs to put secondary cpus into a tight
loop, so I know it's possible to do it this way too. That way, though, you
have less flexibility. What if a cpu really is plugged in between hibernate
and resume? With cpu hotplugging, it's handled properly and transparently.
Without cpu hotplugging, you could be using uninitialised data after the
atomic restore.
Marking userspace as COW makes things more complicated, too. You then have to
add code to the COW handling to update the list of pages that need to be
saved, and you reduce the reliability of the whole process. You can't predict
beforehand how many of these COW pages are going to be needed, and therefore
can't know how much memory to free earlier on in the process. If you run out
of memory, what will be the effect?
> (f) That CPU finalizes the modified DM snapshot using the
> previously-allocated memory.
> (g) That CPU frees up the snapshot_overhead_pages memory allocated
> during step (a) for userspace to use.
> (h) The CPU does the equivalent of a "swapoff -a" without
> overwriting any data already on any swap device(s).
You still need to remember what swap you're going to use to write the image.
You'll probably want to get this information (and allocate the swap) sooner
rather than later so that you're not racing against the memory freeing
earlier, and don't run into issues with bmapping the pages or having enough
memory to record the bdevs & sector numbers (not usually an issue, but if
swap is highly fragmented...).
> (i) The CPU then IPMI-signals the other CPUs to wake them up
> (j) The kernel returns a FD-reference to the snapshot and the read-
> only halves of the CoW pagecache to the process which called
> sys_snapshot_kernel().
Readonly halves? I don't get that, sorry.
> (4) The userspace process now has a reference to the copy of the
> kernel pages and the unmodified pagecache pages. Since 99% of the
> processes aren't running, we aren't going to be having to CoW many of
> the pagecache pages.
Mmm, but you still don't know how many.
> (5) The userspace process uses read() or other syscalls to get data
> out of the kernel-snapshot FD in small chunks, within its
> snapshot_overhead_pages limit. It compresses these and writes them
> out to the snapshot-storage blockdev (must not be mounted during
> snapshot), or to any network server.
>
> (6) The userspace process syncs the disks and halts the system. Any
> changed filesystem pages after the pseudo-DM-snapshot should have
> been stored in semi-volatile storage somewhere and will be discarded
> on the next reboot.
Are you thinking the changed filesystem pages are caught by COW? (AFAIUI,
kernel writes aren't). If (as I expect), you're thinking about filesystem
writes to DM based storage, what about non DM-based filesystem pages?
> So basically your hibernate-overhead would consist of:
> (1) The pages necessary for the atomic snapshot of kernel memory
> and the list of pagecache pages at that time
> (2) A little memory necessary for the kernel non-persistent DM
> snapshot datastructures.
> (3) The snapshot_overhead_pages needed by userspace.
>
> If you're using swap devices then you can save 99% of the state of
> the running kernel with an initial swapout overhead of virtually
> nothing beyond the size of the unswappable kernel memory.
FWIW, let me note an important variation from how Suspend2 works; it might
provide food for thought. In Suspend2, we treat the processes that remain
stopped throughout the whole process specially. We write their data to disk
before the atomic copy (usually 70 or 80% of memory), and then use the memory
they occupy for the destination of the atomic copy. This further reduces the
amount of memory that has to be freed, almost always to zero.
Regards,
Nigel
--
See http://www.tuxonice.net for Howtos, FAQs, mailing
lists, wiki and bugzilla info.
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
next prev parent reply other threads:[~2007-07-10 2:07 UTC|newest]
Thread overview: 387+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-07-03 4:29 [PATCH] Remove process freezer from suspend to RAM pathway Matthew Garrett
2007-07-03 4:54 ` Nigel Cunningham
2007-07-03 5:21 ` Matthew Garrett
2007-07-03 5:24 ` Nigel Cunningham
2007-07-03 5:48 ` Benjamin Herrenschmidt
2007-07-03 6:08 ` Nigel Cunningham
2007-07-03 7:19 ` Benjamin Herrenschmidt
2007-07-03 7:44 ` [linux-pm] " Oliver Neukum
2007-07-03 10:47 ` Miklos Szeredi
2007-07-03 11:07 ` Oliver Neukum
2007-07-03 11:22 ` Miklos Szeredi
2007-07-03 11:27 ` Oliver Neukum
2007-07-03 11:45 ` Benjamin Herrenschmidt
2007-07-03 11:50 ` Oliver Neukum
2007-07-05 0:02 ` Pavel Machek
2007-07-03 11:44 ` Benjamin Herrenschmidt
2007-07-03 11:55 ` Oliver Neukum
2007-07-03 23:40 ` Paul Mackerras
2007-07-04 7:02 ` Miklos Szeredi
2007-07-04 8:02 ` Paul Mackerras
2007-07-04 8:26 ` Miklos Szeredi
2007-07-04 10:26 ` Rafael J. Wysocki
2007-07-03 12:58 ` Rafael J. Wysocki
2007-07-03 15:46 ` Miklos Szeredi
2007-07-03 11:23 ` Paul Mackerras
2007-07-03 11:42 ` Oliver Neukum
2007-07-03 23:11 ` Paul Mackerras
2007-07-04 8:11 ` Oliver Neukum
2007-07-04 8:27 ` Paul Mackerras
2007-07-04 8:39 ` Oliver Neukum
2007-07-04 9:21 ` Paul Mackerras
2007-07-04 10:08 ` Oliver Neukum
2007-07-04 10:46 ` Paul Mackerras
2007-07-04 10:53 ` Oliver Neukum
2007-07-04 10:59 ` Paul Mackerras
2007-07-04 11:02 ` Oliver Neukum
2007-07-04 14:44 ` Alan Stern
2007-07-03 15:58 ` Alan Stern
2007-07-04 4:02 ` Paul Mackerras
2007-07-04 15:04 ` Alan Stern
2007-07-05 0:28 ` Paul Mackerras
2007-07-03 11:40 ` Benjamin Herrenschmidt
2007-07-03 11:46 ` Oliver Neukum
2007-07-03 13:07 ` Rafael J. Wysocki
2007-07-03 12:56 ` Rafael J. Wysocki
2007-07-03 14:21 ` [linux-pm] " Johannes Berg
2007-07-03 14:50 ` Alan Stern
2007-07-03 14:59 ` Johannes Berg
2007-07-03 15:22 ` Rafael J. Wysocki
2007-07-03 17:38 ` Miklos Szeredi
2007-07-03 20:54 ` Rafael J. Wysocki
2007-07-03 20:21 ` Alan Stern
2007-07-04 4:59 ` Paul Mackerras
2007-07-04 14:57 ` Alan Stern
2007-07-05 0:23 ` Paul Mackerras
2007-07-05 6:58 ` Oliver Neukum
2007-07-05 8:17 ` Miklos Szeredi
2007-07-05 8:24 ` Oliver Neukum
2007-07-05 8:41 ` Miklos Szeredi
2007-07-05 8:48 ` Oliver Neukum
2007-07-05 8:58 ` Miklos Szeredi
2007-07-05 10:02 ` Oliver Neukum
2007-07-05 10:14 ` Miklos Szeredi
2007-07-05 11:40 ` Rafael J. Wysocki
2007-07-05 11:54 ` Miklos Szeredi
2007-07-05 13:23 ` Rafael J. Wysocki
2007-07-05 13:28 ` Oliver Neukum
2007-07-05 13:46 ` Matthew Garrett
2007-07-05 14:09 ` Rafael J. Wysocki
2007-07-05 14:23 ` Matthew Garrett
2007-07-05 14:46 ` Ray Lee
2007-07-05 15:00 ` Matthew Garrett
2007-07-05 14:59 ` Rafael J. Wysocki
2007-07-05 16:06 ` Jeremy Maitin-Shepard
2007-07-06 5:45 ` Daniel Pittman
2007-07-05 14:02 ` Rafael J. Wysocki
2007-07-05 22:38 ` Benjamin Herrenschmidt
2007-07-06 7:04 ` Rafael J. Wysocki
2007-07-06 7:30 ` Oliver Neukum
2007-07-06 12:35 ` Benny Amorsen
2007-07-06 12:45 ` Oliver Neukum
2007-07-05 9:18 ` Pavel Machek
2007-07-05 9:31 ` Miklos Szeredi
2007-07-05 11:54 ` Pavel Machek
2007-07-05 12:07 ` Miklos Szeredi
2007-07-05 13:28 ` Rafael J. Wysocki
2007-07-05 19:38 ` Oliver Neukum
2007-07-05 19:44 ` Miklos Szeredi
2007-07-05 20:19 ` Rafael J. Wysocki
2007-07-05 20:38 ` Miklos Szeredi
2007-07-05 21:01 ` Rafael J. Wysocki
2007-07-05 20:34 ` Oliver Neukum
2007-07-05 20:46 ` Miklos Szeredi
2007-07-05 20:49 ` Oliver Neukum
2007-07-05 20:53 ` Oliver Neukum
2007-07-05 21:06 ` Alan Stern
2007-07-05 21:15 ` Oliver Neukum
2007-07-05 21:31 ` Miklos Szeredi
2007-07-05 21:07 ` Miklos Szeredi
2007-07-05 21:15 ` Alan Stern
2007-07-05 21:26 ` Miklos Szeredi
2007-07-05 21:37 ` Oliver Neukum
2007-07-06 7:13 ` Rafael J. Wysocki
2007-07-06 8:59 ` Benjamin Herrenschmidt
2007-07-06 9:31 ` Oliver Neukum
2007-07-06 9:53 ` Rafael J. Wysocki
2007-07-07 2:46 ` Benjamin Herrenschmidt
2007-07-07 2:44 ` Benjamin Herrenschmidt
2007-07-07 20:48 ` Rafael J. Wysocki
2007-07-08 0:50 ` Benjamin Herrenschmidt
2007-07-05 23:05 ` Benjamin Herrenschmidt
2007-07-06 3:59 ` Jeremy Maitin-Shepard
2007-07-06 7:32 ` Oliver Neukum
2007-07-07 12:17 ` Pavel Machek
2007-07-07 20:42 ` Miklos Szeredi
2007-07-07 23:33 ` malicious filesystems (was Re: [linux-pm] Re: [PATCH] Remove process freezer from suspend to RAM pathway) Pavel Machek
2007-07-08 7:21 ` Miklos Szeredi
2007-07-08 8:15 ` Off topically about Re: malicious filesystems (was " Oleg Verych
2007-07-08 12:37 ` malicious filesystems (was Re: [linux-pm] " Pavel Machek
2007-07-08 13:58 ` Al Viro
2007-07-08 16:23 ` David Brownell
2007-07-08 14:23 ` Miklos Szeredi
2007-07-08 18:08 ` Rafael J. Wysocki
2007-07-08 18:28 ` Al Viro
2007-07-08 19:50 ` Miklos Szeredi
2007-07-08 21:07 ` Rafael J. Wysocki
2007-07-09 9:28 ` Miklos Szeredi
2007-07-09 9:36 ` Oliver Neukum
2007-07-09 9:40 ` Miklos Szeredi
2007-07-08 14:06 ` Rafael J. Wysocki
2007-07-09 16:19 ` Miklos Szeredi
2007-07-12 15:31 ` Pavel Machek
2007-07-12 21:56 ` Miklos Szeredi
2007-07-12 23:13 ` Miklos Szeredi
2007-07-05 11:58 ` [linux-pm] Re: [PATCH] Remove process freezer from suspend to RAM pathway Rafael J. Wysocki
2007-07-05 12:24 ` Miklos Szeredi
2007-07-05 13:31 ` Rafael J. Wysocki
2007-07-05 13:50 ` Miklos Szeredi
2007-07-05 14:14 ` Rafael J. Wysocki
2007-07-05 14:14 ` Miklos Szeredi
2007-07-05 22:04 ` Pavel Machek
2007-07-06 7:07 ` Miklos Szeredi
2007-07-07 12:19 ` Pavel Machek
2007-07-06 7:16 ` Rafael J. Wysocki
2007-07-05 14:23 ` Alan Stern
2007-07-05 22:59 ` Benjamin Herrenschmidt
2007-07-06 7:20 ` Rafael J. Wysocki
2007-07-06 15:13 ` Alan Stern
2007-07-08 7:19 ` Paul Mackerras
2007-07-08 7:35 ` [PATCH] Remove process freezer from suspend to RAM pathway (philosophical) Oleg Verych
2007-07-07 7:56 ` [linux-pm] Re: [PATCH] Remove process freezer from suspend to RAM pathway Pavel Machek
2007-07-04 3:55 ` Paul Mackerras
2007-07-04 15:12 ` Alan Stern
2007-07-05 0:35 ` Paul Mackerras
2007-07-05 9:15 ` removing refrigerator does not help with s2ram vs. fuse deadlocks (was Re: [linux-pm] Re: [PATCH] Remove process freezer from suspend to RAM pathway) Pavel Machek
2007-07-05 13:57 ` Matthew Garrett
2007-07-05 14:28 ` Rafael J. Wysocki
2007-07-05 14:26 ` Matthew Garrett
2007-07-05 14:41 ` Rafael J. Wysocki
2007-07-05 14:39 ` Matthew Garrett
2007-07-05 15:04 ` Rafael J. Wysocki
2007-07-05 15:03 ` Matthew Garrett
2007-07-05 15:27 ` Rafael J. Wysocki
2007-07-05 15:32 ` Miklos Szeredi
2007-07-07 11:50 ` Pavel Machek
2007-07-07 20:14 ` Miklos Szeredi
2007-07-07 11:49 ` Pavel Machek
2007-07-07 12:08 ` problem 1 (was Re: removing refrigerator does not help with s2ram vs. fuse deadlocks (was Re: [linux-pm] Re: [PATCH] Remove process freezer from suspend to RAM pathway)) Pavel Machek
2007-07-07 20:55 ` Rafael J. Wysocki
2007-07-05 14:42 ` [linux-pm] Re: [PATCH] Remove process freezer from suspend to RAM pathway Alan Stern
2007-07-03 14:51 ` Rafael J. Wysocki
2007-07-03 14:48 ` Johannes Berg
2007-07-03 21:14 ` Benjamin Herrenschmidt
2007-07-03 21:32 ` Rafael J. Wysocki
2007-07-03 21:35 ` Benjamin Herrenschmidt
2007-07-03 22:43 ` Rafael J. Wysocki
2007-07-04 3:29 ` [linux-pm] " Paul Mackerras
2007-07-04 10:33 ` Rafael J. Wysocki
2007-07-04 10:48 ` Paul Mackerras
2007-07-04 11:10 ` Rafael J. Wysocki
2007-07-04 11:24 ` Paul Mackerras
2007-07-04 14:30 ` Rafael J. Wysocki
2007-07-05 0:15 ` Paul Mackerras
2007-07-05 11:54 ` Rafael J. Wysocki
2007-07-07 12:09 ` Pavel Machek
2007-07-04 11:25 ` Paul Mackerras
2007-07-04 22:19 ` The big suspend mess Adrian Bunk
2007-07-05 0:27 ` Pavel Machek
2007-07-05 0:53 ` Paul Mackerras
2007-07-05 9:32 ` Pavel Machek
2007-07-05 10:29 ` Gabriel C
2007-07-05 10:32 ` Fabio Comolli
2007-07-05 1:22 ` Adrian Bunk
2007-07-05 12:18 ` Rafael J. Wysocki
2007-07-05 14:14 ` [linux-pm] " Alan Stern
2007-07-05 9:30 ` [PATCH] Remove process freezer from suspend to RAM pathway Pavel Machek
2007-07-05 22:46 ` Benjamin Herrenschmidt
2007-07-05 23:13 ` Nigel Cunningham
2007-07-05 23:20 ` Benjamin Herrenschmidt
2007-07-05 23:35 ` Nigel Cunningham
2007-07-06 1:19 ` Kyle Moffett
2007-07-06 1:37 ` Nigel Cunningham
2007-07-06 3:59 ` Benjamin Herrenschmidt
2007-07-06 7:35 ` Rafael J. Wysocki
2007-07-06 9:03 ` Benjamin Herrenschmidt
2007-07-06 14:38 ` Alan Stern
2007-07-07 3:44 ` Benjamin Herrenschmidt
2007-07-07 11:49 ` Pavel Machek
2007-07-08 0:40 ` Benjamin Herrenschmidt
2007-07-07 16:17 ` Alan Stern
2007-07-08 0:42 ` Benjamin Herrenschmidt
2007-07-08 2:24 ` Alan Stern
2007-07-08 4:39 ` Benjamin Herrenschmidt
2007-07-08 18:46 ` Rafael J. Wysocki
2007-07-08 20:22 ` Alan Stern
2007-07-08 21:08 ` Pavel Machek
2007-07-08 21:21 ` Benjamin Herrenschmidt
2007-07-09 6:52 ` Oliver Neukum
2007-07-09 9:14 ` Benjamin Herrenschmidt
2007-07-09 11:56 ` Rafael J. Wysocki
2007-07-08 18:26 ` Rafael J. Wysocki
2007-07-08 18:20 ` Rafael J. Wysocki
2007-07-06 15:42 ` Alan Stern
2007-07-07 0:43 ` Kyle Moffett
2007-07-07 2:59 ` Alan Stern
2007-07-07 4:06 ` Benjamin Herrenschmidt
2007-07-07 17:19 ` Alan Stern
2007-07-08 0:48 ` Benjamin Herrenschmidt
2007-07-08 2:53 ` Alan Stern
2007-07-08 5:14 ` Benjamin Herrenschmidt
2007-07-08 5:19 ` Benjamin Herrenschmidt
2007-07-08 20:17 ` Alan Stern
2007-07-08 19:15 ` Rafael J. Wysocki
2007-07-08 21:03 ` Benjamin Herrenschmidt
2007-07-08 21:07 ` Pavel Machek
2007-07-08 21:45 ` Rafael J. Wysocki
2007-07-08 21:54 ` Benjamin Herrenschmidt
2007-07-08 22:13 ` hibernation/snapshot design [was Re: [PATCH] Remove process freezer from suspend to RAM pathway] Pavel Machek
2007-07-08 22:23 ` david
2007-07-08 23:00 ` Pavel Machek
2007-07-08 23:20 ` david
2007-07-08 23:28 ` Pavel Machek
2007-07-08 23:45 ` david
2007-07-09 15:23 ` hibernation/snapshot design Jeremy Maitin-Shepard
2007-07-08 23:01 ` hibernation/snapshot design [was Re: [PATCH] Remove process freezer from suspend to RAM pathway] Rafael J. Wysocki
2007-07-08 23:03 ` Pavel Machek
2007-07-10 1:33 ` Nigel Cunningham
2007-07-10 1:56 ` [linux-pm] " Paul Mackerras
2007-07-08 20:16 ` [PATCH] Remove process freezer from suspend to RAM pathway Alan Stern
2007-07-08 21:01 ` Pavel Machek
2007-07-08 21:20 ` Benjamin Herrenschmidt
2007-07-08 22:06 ` Rafael J. Wysocki
2007-07-09 0:33 ` Benjamin Herrenschmidt
2007-07-09 0:57 ` Kyle Moffett
2007-07-09 1:32 ` Benjamin Herrenschmidt
2007-07-09 6:47 ` Oliver Neukum
2007-07-09 9:13 ` Benjamin Herrenschmidt
2007-07-09 9:23 ` Oliver Neukum
2007-07-09 9:33 ` Benjamin Herrenschmidt
2007-07-09 14:57 ` Adrian Bunk
2007-07-09 10:02 ` Pavel Machek
2007-07-09 10:05 ` Benjamin Herrenschmidt
2007-07-09 16:03 ` Alan Stern
2007-07-08 21:35 ` Rafael J. Wysocki
2007-07-08 20:55 ` Pavel Machek
2007-07-06 3:54 ` Benjamin Herrenschmidt
2007-07-06 4:03 ` Nigel Cunningham
2007-07-06 4:41 ` Benjamin Herrenschmidt
2007-07-06 5:25 ` Nigel Cunningham
2007-07-06 5:01 ` Kyle Moffett
2007-07-06 5:53 ` Nigel Cunningham
2007-07-10 2:07 ` Nigel Cunningham [this message]
2007-07-10 3:03 ` Kyle Moffett
2007-07-05 0:03 ` Pavel Machek
2007-07-05 0:46 ` [linux-pm] " Paul Mackerras
2007-07-03 5:49 ` [linux-pm] " Benjamin Herrenschmidt
2007-07-03 13:07 ` Rafael J. Wysocki
2007-07-03 5:51 ` Benjamin Herrenschmidt
2007-07-03 13:08 ` Rafael J. Wysocki
2007-07-03 15:09 ` Rafael J. Wysocki
2007-07-03 17:20 ` Oliver Neukum
2007-07-03 20:59 ` Rafael J. Wysocki
2007-07-03 21:35 ` Benjamin Herrenschmidt
2007-07-03 22:33 ` Rafael J. Wysocki
2007-07-04 23:39 ` Pavel Machek
2007-07-05 6:53 ` Oliver Neukum
2007-07-03 18:26 ` Oliver Neukum
2007-07-03 19:13 ` Miklos Szeredi
2007-07-03 19:32 ` Oliver Neukum
2007-07-03 19:47 ` Miklos Szeredi
2007-07-03 20:02 ` [linux-pm] " Alan Stern
2007-07-03 20:19 ` Miklos Szeredi
2007-07-03 21:20 ` Rafael J. Wysocki
2007-07-03 20:45 ` Oliver Neukum
2007-07-03 21:20 ` Benjamin Herrenschmidt
2007-07-03 21:48 ` Oliver Neukum
2007-07-03 21:56 ` Benjamin Herrenschmidt
2007-07-03 22:04 ` Oliver Neukum
2007-07-03 23:08 ` Benjamin Herrenschmidt
2007-07-04 8:10 ` Oliver Neukum
2007-07-04 23:45 ` Pavel Machek
2007-07-05 12:25 ` Rafael J. Wysocki
2007-07-05 12:38 ` Nigel Cunningham
2007-07-05 13:35 ` Rafael J. Wysocki
2007-07-05 13:36 ` Nigel Cunningham
2007-07-05 13:59 ` Rafael J. Wysocki
2007-07-05 21:49 ` Nigel Cunningham
2007-07-06 7:40 ` Rafael J. Wysocki
2007-07-06 7:39 ` Miklos Szeredi
2007-07-06 7:51 ` Oliver Neukum
2007-07-06 9:09 ` Miklos Szeredi
2007-07-06 9:16 ` Nigel Cunningham
2007-07-06 9:33 ` Miklos Szeredi
2007-07-03 21:09 ` Rafael J. Wysocki
2007-07-03 19:27 ` Pavel Machek
2007-07-03 21:25 ` Rafael J. Wysocki
2007-07-03 21:16 ` Benjamin Herrenschmidt
2007-07-03 6:13 ` Oliver Neukum
2007-07-03 6:51 ` Miklos Szeredi
2007-07-03 12:13 ` Matthew Garrett
2007-07-03 13:09 ` Rafael J. Wysocki
2007-07-03 7:37 ` Romano Giannetti
2007-07-03 8:20 ` Oliver Neukum
2007-07-03 13:12 ` Rafael J. Wysocki
2007-07-03 12:56 ` Rafael J. Wysocki
2007-07-09 13:29 ` sysrq-t dumps of s2ram/fuse deadlock (was Re: [PATCH] Remove process freezer from suspend to RAM pathway) Pavel Machek
2007-07-11 13:28 ` Matthew Garrett
2007-07-11 13:45 ` sysrq-t dumps of s2ram/fuse deadlock Jeremy Maitin-Shepard
2007-07-12 9:17 ` sysrq-t dumps of s2ram/fuse deadlock (was Re: [PATCH] Remove process freezer from suspend to RAM pathway) Pavel Machek
2007-07-03 16:03 ` [linux-pm] [PATCH] Remove process freezer from suspend to RAM pathway Alan Stern
2007-07-03 16:05 ` Matthew Garrett
2007-07-03 16:57 ` Alan Stern
2007-07-03 17:02 ` Matthew Garrett
2007-07-03 19:33 ` Alan Stern
2007-07-03 19:42 ` Matthew Garrett
2007-07-03 19:54 ` Alan Stern
2007-07-03 20:23 ` Matthew Garrett
2007-07-03 21:10 ` Alan Stern
2007-07-03 21:12 ` Matthew Garrett
2007-07-03 21:16 ` Alan Stern
2007-07-03 21:20 ` Matthew Garrett
2007-07-03 21:37 ` Rafael J. Wysocki
2007-07-03 21:36 ` Matthew Garrett
2007-07-03 21:47 ` Oliver Neukum
2007-07-03 22:46 ` Rafael J. Wysocki
2007-07-04 3:38 ` Paul Mackerras
2007-07-04 10:42 ` Rafael J. Wysocki
2007-07-04 10:58 ` Paul Mackerras
2007-07-04 11:25 ` Rafael J. Wysocki
2007-07-04 11:34 ` Paul Mackerras
2007-07-04 14:12 ` Dmitry Torokhov
2007-07-04 15:38 ` Alan Stern
2007-07-04 19:07 ` Alan Stern
2007-07-04 11:51 ` Miklos Szeredi
2007-07-04 14:41 ` Rafael J. Wysocki
2007-07-04 14:45 ` Miklos Szeredi
2007-07-04 15:03 ` Oliver Neukum
2007-07-04 15:17 ` Rafael J. Wysocki
2007-07-05 0:29 ` Paul Mackerras
2007-07-05 12:29 ` Rafael J. Wysocki
2007-07-12 15:13 ` Pavel Machek
2007-07-04 15:42 ` Alan Stern
2007-07-04 19:25 ` Miklos Szeredi
2007-07-04 21:36 ` Rafael J. Wysocki
2007-07-05 8:37 ` Miklos Szeredi
2007-07-05 12:39 ` Rafael J. Wysocki
2007-07-05 12:39 ` Miklos Szeredi
2007-07-05 16:10 ` Jeremy Fitzhardinge
2007-07-05 17:45 ` Miklos Szeredi
2007-07-05 0:43 ` Paul Mackerras
2007-07-05 12:49 ` Rafael J. Wysocki
2007-07-05 0:36 ` Paul Mackerras
2007-07-05 12:51 ` Rafael J. Wysocki
2007-07-05 12:50 ` Johannes Berg
2007-07-05 13:47 ` Rafael J. Wysocki
2007-07-05 14:25 ` Alan Stern
2007-07-05 17:42 ` Miklos Szeredi
2007-07-05 20:43 ` Alan Stern
2007-07-04 12:41 ` Theodore Tso
2007-07-04 14:40 ` Rafael J. Wysocki
2007-07-03 22:21 ` Alan Stern
2007-07-03 22:42 ` Matthew Garrett
2007-07-04 14:38 ` Alan Stern
2007-07-04 14:58 ` Matthew Garrett
2007-07-04 15:02 ` Oliver Neukum
2007-07-04 15:57 ` Alan Stern
2007-07-04 23:33 ` 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=200707101207.16711.nigel@nigel.suspend2.net \
--to=nigel@nigel.suspend2.net \
--cc=benh@kernel.crashing.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@lists.linux-foundation.org \
--cc=mjg59@srcf.ucam.org \
--cc=mrmacman_g4@mac.com \
--cc=nigel@suspend2.net \
--cc=pavel@ucw.cz \
--cc=rjw@sisk.pl \
--cc=stern@rowland.harvard.edu \
/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