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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.