From: Pavel Machek <pavel@ucw.cz>
To: "Rafael J. Wysocki" <rjw@sisk.pl>
Cc: Matthew Garrett <mjg59@srcf.ucam.org>,
Miklos Szeredi <miklos@szeredi.hu>,
LKML <linux-kernel@vger.kernel.org>,
pm list <linux-pm@lists.linux-foundation.org>,
Ingo Molnar <mingo@elte.hu>
Subject: Re: [RFC][PATCH -mm] Freezer: Handle uninterruptible tasks
Date: Sat, 7 Jul 2007 09:50:18 +0200 [thread overview]
Message-ID: <20070707075018.GB2638@elf.ucw.cz> (raw)
In-Reply-To: <200707061012.48998.rjw@sisk.pl>
Hi!
> The main limitation of the freezer is that it cannot handle uninterruptible
> tasks. Namely, if there are uninterruptible tasks in the system, the freezer
> returns an error, which makes it impossible to suspend the system.
...
> Unfortunately, this mechanism also leads to severe limitations, such as that it
> makes the freezer unable to handle systems using FUSE in a reliable way.
>
> This patch makes the freezer skip uninterruptible user space tasks (ie. such
> that have an mm of their own) when counting the tasks to be frozen. As a
> result, these tasks have the TIF_FREEZE and TIF_SIGPENDING flags set, but the
> freezer doesn't wait for them to enter the refrigerator. Nevertheless, they
> will enter the refrigerator as soon as they change their state.
I don't think we can do that. I suspect rename looks like:
write directory entry in source
A) (uninterruptible wait for write)
write directory entry in destination
(uninterruptible wait for write)
write something else
If we freeze some task in place "A)", we'll write to the disk when the
directory write is finished :-(.
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
next prev parent reply other threads:[~2007-07-07 7:50 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <200707061012.48998.rjw@sisk.pl>
2007-07-06 15:01 ` [RFC][PATCH -mm] Freezer: Handle uninterruptible tasks Alan Stern
2007-07-07 7:50 ` Pavel Machek [this message]
2007-07-07 9:13 ` Nigel Cunningham
[not found] ` <200707071913.43482.nigel@nigel.suspend2.net>
2007-07-07 11:31 ` Pavel Machek
2007-07-07 20:44 ` Rafael J. Wysocki
[not found] <Pine.LNX.4.44L0.0707091043480.3851-100000@iolanthe.rowland.org>
2007-07-09 15:36 ` Jeremy Maitin-Shepard
[not found] <Pine.LNX.4.44L0.0707061039380.3737-100000@iolanthe.rowland.org>
2007-07-07 23:08 ` Rafael J. Wysocki
[not found] ` <200707080108.17371.rjw@sisk.pl>
2007-07-08 12:09 ` Pavel Machek
[not found] ` <20070708120933.GA3866@ucw.cz>
2007-07-08 13:55 ` Rafael J. Wysocki
2007-07-09 4:21 ` Jeremy Maitin-Shepard
2007-07-09 14:45 ` Alan Stern
2007-07-08 18:37 ` Pavel Machek
2007-07-06 8:12 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=20070707075018.GB2638@elf.ucw.cz \
--to=pavel@ucw.cz \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@lists.linux-foundation.org \
--cc=miklos@szeredi.hu \
--cc=mingo@elte.hu \
--cc=mjg59@srcf.ucam.org \
--cc=rjw@sisk.pl \
/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