All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andrew Morton <akpm@linux-foundation.org>
To: "Rafael J. Wysocki" <rjw@sisk.pl>
Cc: Sebastian Ott <sebott@linux.vnet.ibm.com>,
	linux-pm@lists.linux-foundation.org,
	linux-kernel@vger.kernel.org,
	Benjamin Herrenschmidt <benh@kernel.crashing.org>,
	KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Subject: Re: [RFC][PATCH] PM: disable nonboot cpus before suspending devices
Date: Wed, 3 Feb 2010 15:08:03 -0800	[thread overview]
Message-ID: <20100203150803.5a4b37fe.akpm@linux-foundation.org> (raw)
In-Reply-To: <201002032334.37198.rjw@sisk.pl>

On Wed, 3 Feb 2010 23:34:37 +0100
"Rafael J. Wysocki" <rjw@sisk.pl> wrote:

> On Wednesday 03 February 2010, Andrew Morton wrote:
> > On Wed, 3 Feb 2010 02:44:23 +0100 "Rafael J. Wysocki" <rjw@sisk.pl> wrote:
> > 
> > > +static inline gfp_t clear_gfp_allowed_mask(gfp_t mask)
> > > +{
> > > +	gfp_t ret = gfp_allowed_mask;
> > > +	gfp_allowed_mask &= ~mask;
> > > +	return ret;
> > > +}
> > 
> > Fair enuf.
> > 
> > Of course, this is all horridly racy/buggy without locking.  Would I be
> > correct in hoping that all the callers happen when the system is in
> > everyone-is-frozen mode?
> 
> As far as I can tell, gfp_allowed_mask is only touched during init apart from
> this.

Well yes - the new interfaces are the problem - they're racy!

> > Perhaps we should add some documentation (or even an assertion) to
> > prevent someone from using these interfaces from within normal code.
> 
> I thought about that, but didn't invent anything smart enough.
> 
> Well, maybe except for a comment like "this must be called with pm_mutex held",
> because that's the only case when it would be really safe.

Is that the locking rule?  My above guess was incorrect?

Maybe slip a

	BUG_ON(!mutex_is_locked(&pm_mutex));

in there?

  parent reply	other threads:[~2010-02-03 23:08 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-01-22 18:00 [RFC][PATCH] PM: disable nonboot cpus before suspending devices Sebastian Ott
2010-01-22 20:48 ` Rafael J. Wysocki
2010-01-22 21:24   ` Rafael J. Wysocki
2010-01-22 21:24   ` Rafael J. Wysocki
2010-01-22 21:24   ` Rafael J. Wysocki
2010-01-22 21:24   ` Rafael J. Wysocki
2010-01-25 15:08   ` Sebastian Ott
2010-01-25 21:37     ` Rafael J. Wysocki
2010-02-01 14:41       ` Sebastian Ott
2010-02-01 14:41       ` Sebastian Ott
2010-02-01 15:30         ` Rafael J. Wysocki
2010-02-01 15:30         ` Rafael J. Wysocki
2010-02-01 15:43           ` Maxim Levitsky
2010-02-01 15:43           ` Maxim Levitsky
2010-02-01 15:57           ` Andrew Morton
2010-02-03  1:44             ` Rafael J. Wysocki
2010-02-03  1:44             ` Rafael J. Wysocki
2010-02-03  1:48               ` Andrew Morton
2010-02-03  1:48               ` Andrew Morton
2010-02-03 22:34                 ` Rafael J. Wysocki
2010-02-03 22:34                 ` Rafael J. Wysocki
2010-02-03 23:08                   ` Andrew Morton
2010-02-03 23:08                   ` Andrew Morton [this message]
2010-02-04  0:50                     ` Rafael J. Wysocki
2010-02-04  1:21                       ` Andrew Morton
2010-02-04  1:21                       ` Andrew Morton
2010-02-04  1:41                         ` Andrew Morton
2010-02-04  1:41                         ` Andrew Morton
2010-02-04 19:33                           ` Rafael J. Wysocki
2010-02-04 19:33                           ` Rafael J. Wysocki
2010-02-04  0:50                     ` Rafael J. Wysocki
2010-02-01 15:57           ` Andrew Morton
2010-01-25 21:37     ` Rafael J. Wysocki
2010-01-25 15:08   ` Sebastian Ott
2010-01-22 20:48 ` Rafael J. Wysocki
  -- strict thread matches above, loose matches on Subject: below --
2010-01-22 18:00 Sebastian Ott

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=20100203150803.5a4b37fe.akpm@linux-foundation.org \
    --to=akpm@linux-foundation.org \
    --cc=benh@kernel.crashing.org \
    --cc=kosaki.motohiro@jp.fujitsu.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@lists.linux-foundation.org \
    --cc=rjw@sisk.pl \
    --cc=sebott@linux.vnet.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.