Re: [PATCH] Remove process freezer from suspend to RAM pathway



Hi.

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. I suppose you could lzf
compress as you did the snapshot. That would generally get you up to 2/3rds,
but then again you can't know what compression ratio you'll get until you
try, so reliability would suffer or it would take longer because of retrying.

I/O from swsusp and suspend2 use bios directly, so the page cache isn't an
issue for them (apart from the fact that Suspend2 saves the page cache
separately so it can get a full image). Not sure about uswsusp.

Only having half the amount of memory doesn't sound like a big limitation for
modern desktops & laptops, but don't forget that there are embedded guys
wanting to hbernate too :)

Regards,

Nigel
--
Nigel Cunningham
Christian Reformed Church of Cobden
103 Curdie Street, Cobden 3266, Victoria, Australia
Ph. +61 3 5595 1185 / +61 417 100 574
Communal Worship: 11 am Sunday.

Attachment: pgpX3KVABXLp2.pgp
Description: PGP signature



Relevant Pages

  • Re: [PATCH 3/6] Container Freezer: Implement freezer cgroup subsystem
    ... It provides a way to stop and resume execution of all tasks in a cgroup by ... The freezer subsystem in the container filesystem defines a file named ... Writing "FROZEN" to the state file will freeze all tasks in the ... It's important to note that freezing can be incomplete. ...
    (Linux-Kernel)
  • Re: Back to the future.
    ... The freezer has *caused* those deadlocks (eg by stopping threads that were ... it is used by the threads that should be running after the snapshot is done ... Not all of the I/O in general, ... stopped to freeze kernel threads for the hibernation/suspend. ...
    (Linux-Kernel)
  • Re: [PATCH 3/6] Container Freezer: Implement freezer cgroup subsystem
    ... It provides a way to stop and resume execution of all tasks in a cgroup by ... The freezer subsystem in the container filesystem defines a file named ... Writing "FROZEN" to the state file will freeze all tasks in the ... It's important to note that freezing can be incomplete. ...
    (Linux-Kernel)
  • Re: Pens and tupperware.
    ... put same in the freezer for later identification of leftovers and then wipe the writing off when no longer required. ...
    (uk.rec.sheds)
  • hibernation/snapshot design [was Re: [PATCH] Remove process freezer from suspend to RAM pathway]
    ... we'll be able to drop the freezer from the suspend code ... any task waiting on I/O while the freezer is running;-)). ... I don't see the need for a freezer for snapshot but that's a different ... write to disk from userland code in uswsusp). ...
    (Linux-Kernel)