From: "Rafael J. Wysocki" <rjw@sisk.pl>
To: ego@in.ibm.com
Cc: Srivatsa Vaddagiri <vatsa@in.ibm.com>,
Oleg Nesterov <oleg@tv-sign.ru>, Pavel Machek <pavel@ucw.cz>,
Johannes Berg <johannes@sipsolutions.net>,
LKML <linux-kernel@vger.kernel.org>
Subject: Re: Problem with freezable workqueues
Date: Wed, 28 Feb 2007 19:41:23 +0100 [thread overview]
Message-ID: <200702281941.24698.rjw@sisk.pl> (raw)
In-Reply-To: <20070228181703.GC7021@in.ibm.com>
On Wednesday, 28 February 2007 19:17, Gautham R Shenoy wrote:
> On Wed, Feb 28, 2007 at 08:37:26AM +0530, Srivatsa Vaddagiri wrote:
> >
> > Hmm ..good point. So can we assume that disable/enable_nonboot_cpus() are called
> > with processes frozen already?
> >
> > Gautham, you need to take this into account in your patchset!
>
> Yup. That would mean making the freezer reentrant since we will
> be freezing twice (once for suspend and later on for hotplug). This is
> ok since the api in my patches looks like
> freeze_processes(int freeze_event);
>
> But thaw will be interesting. If we are thawing for hotplug, we gotta
> only thaw processes which were frozen *only* for hotplug.
>
> Rafael, does that mean more status flags?!
Well, I don't really think so, but we need to store some information in the
freezer (eg. in a status variable). Namely, we can define a variable, say
tasks_frozen, the value of which will be the bitwise or of the flags
SPE_SUSPEND, SPE_HOTPLUG etc. In a fully functional system, tasks_frozen
is equal to zero. If freeze_processes(SPE_SUSPEND) is run, it does
tasks_frozen |= SPE_SUSPEND and analogously for SPE_HOTPLUG etc.
If tasks_frozen is equal to SPE_SUSPEND|SPE_HOTPLUG, for example, and
thaw_tasks(SPE_HOTPLUG) runs, it only thaws the tasks that need not stay frozen
for the suspend and does tasks_frozen &= ~SPE_SUSPEND etc.
I think something like this should work.
Greetings,
Rafael
next prev parent reply other threads:[~2007-02-28 18:39 UTC|newest]
Thread overview: 45+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-02-27 21:51 Problem with freezable workqueues Rafael J. Wysocki
2007-02-27 23:28 ` Oleg Nesterov
2007-02-27 23:36 ` Johannes Berg
2007-02-28 0:00 ` Rafael J. Wysocki
2007-02-28 0:00 ` Johannes Berg
2007-02-28 18:06 ` Gautham R Shenoy
2007-02-27 23:57 ` Rafael J. Wysocki
2007-02-28 0:01 ` Johannes Berg
2007-02-28 0:08 ` Rafael J. Wysocki
2007-02-28 1:14 ` Nigel Cunningham
2007-02-28 10:59 ` Rafael J. Wysocki
2007-02-28 20:36 ` Johannes Berg
2007-02-28 3:07 ` Srivatsa Vaddagiri
2007-02-28 8:48 ` Oleg Nesterov
2007-02-28 9:10 ` Srivatsa Vaddagiri
2007-02-28 9:43 ` Oleg Nesterov
2007-02-28 11:09 ` Rafael J. Wysocki
2007-02-28 18:17 ` Gautham R Shenoy
2007-02-28 18:41 ` Rafael J. Wysocki [this message]
2007-02-28 8:54 ` Pavel Machek
2007-02-28 3:01 ` Srivatsa Vaddagiri
2007-02-28 3:51 ` Srivatsa Vaddagiri
2007-02-28 11:11 ` Rafael J. Wysocki
2007-02-28 13:17 ` Srivatsa Vaddagiri
2007-02-28 13:27 ` Srivatsa Vaddagiri
2007-02-28 17:41 ` Rafael J. Wysocki
2007-02-28 17:40 ` Rafael J. Wysocki
2007-02-28 19:17 ` Rafael J. Wysocki
2007-02-28 19:32 ` Oleg Nesterov
2007-02-28 19:43 ` Rafael J. Wysocki
2007-02-28 20:08 ` Oleg Nesterov
2007-02-28 20:25 ` Rafael J. Wysocki
2007-02-28 20:35 ` Oleg Nesterov
2007-02-28 22:39 ` Rafael J. Wysocki
2007-02-28 22:44 ` Pavel Machek
2007-02-28 23:54 ` [PATCH] Make XFS workqueues nonfreezable Rafael J. Wysocki
2007-03-01 8:03 ` Andrew Morton
2007-03-01 9:15 ` Pavel Machek
2007-03-01 9:25 ` Andrew Morton
2007-02-28 21:16 ` Problem with freezable workqueues Pavel Machek
2007-03-06 0:30 ` Johannes Berg
2007-03-06 20:31 ` Rafael J. Wysocki
2007-03-06 22:25 ` Nigel Cunningham
2007-03-06 22:57 ` Rafael J. Wysocki
2007-03-07 23:10 ` Johannes Berg
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=200702281941.24698.rjw@sisk.pl \
--to=rjw@sisk.pl \
--cc=ego@in.ibm.com \
--cc=johannes@sipsolutions.net \
--cc=linux-kernel@vger.kernel.org \
--cc=oleg@tv-sign.ru \
--cc=pavel@ucw.cz \
--cc=vatsa@in.ibm.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