From: Peter Zijlstra <peterz@infradead.org>
To: mgross@linux.intel.com
Cc: John Kacur <jkacur@gmail.com>,
LKML <linux-kernel@vger.kernel.org>,
rt-users <linux-rt-users@vger.kernel.org>,
Steven Rostedt <rostedt@goodmis.org>, Ingo Molnar <mingo@elte.hu>,
Thomas Gleixner <tglx@linutronix.de>, arjan <arjan@infradead.org>
Subject: Re: [PATCH RFC] pm_qos_requirement might sleep
Date: Mon, 25 Aug 2008 18:35:29 +0200 [thread overview]
Message-ID: <1219682129.8515.81.camel@twins> (raw)
In-Reply-To: <20080825163412.GA21910@linux.intel.com>
On Mon, 2008-08-25 at 09:34 -0700, mark gross wrote:
> On Fri, Aug 15, 2008 at 12:51:11AM +0200, John Kacur wrote:
> > On Thu, Aug 14, 2008 at 7:48 PM, Peter Zijlstra <peterz@infradead.org> wrote:
> > > On Thu, 2008-08-14 at 08:52 -0700, mark gross wrote:
> > >
> > >> Keeping a lock around the different "target_value"s may not be so
> > >> important. Its just a 32bit scaler value, and perhaps we can make it an
> > >> atomic type? That way we loose the raw_spinlock.
> > >
> > > My suggestion was to keep the locking for the write side - so as to
> > > avoid stuff stomping on one another, but drop the read side as:
> > >
> > > spin_lock
> > > foo = var;
> > > spin_unlock
> > > return foo;
> > >
> > > is kinda useless, it doesn't actually serialize against the usage of
> > > foo, that is, once it gets used, var might already have acquired a new
> > > value.
> > >
> > > The only thing it would protect is reading var, but since that is a
> > > machine sized read, its atomic anyway (assuming its naturally aligned).
> > >
> > > So no need for atomic_t (its read-side is just a read too), just drop
> > > the whole lock usage from pq_qos_requirement().
> > >
> >
> > Thanks Peter.
> >
> > Mark, is the following patch ok with you? This should be applied to
> > mainline, and then after that no special patches are necessary for
> > real-time.
>
> I've been thinking about this patch and I worry that the readability
> from making the use of this lock asymmetric WRT reads and writes to the
> storage address is bothersome.
>
> I would rather make the variable an atomic. What do you think about
> that?
It would make the write side more expensive, as we already have the two
atomic operations for the lock and unlock, this would add a third.
Then again, I doubt that this is really a fast path.
OTOH, a simple comment could clarify the situation for the reader.
Up to you I guess ;-)
next prev parent reply other threads:[~2008-08-25 16:35 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-08-04 20:52 [PATCH RFC] pm_qos_requirement might sleep John Kacur
2008-08-05 7:25 ` Peter Zijlstra
2008-08-05 20:49 ` mark gross
2008-08-05 21:09 ` Peter Zijlstra
2008-08-05 22:18 ` John Kacur
2008-08-11 13:25 ` John Kacur
2008-08-12 22:49 ` mark gross
2008-08-13 8:24 ` John Kacur
2008-08-14 15:52 ` mark gross
2008-08-14 17:48 ` Peter Zijlstra
2008-08-14 22:51 ` John Kacur
2008-08-20 19:14 ` mark gross
2008-08-25 16:34 ` mark gross
2008-08-25 16:35 ` Peter Zijlstra [this message]
2008-08-26 8:48 ` John Kacur
2008-08-26 16:18 ` mark gross
2008-08-26 17:45 ` John Kacur
2008-08-28 19:38 ` mark gross
2008-08-28 19:44 ` mark gross
2008-08-29 0:32 ` Andrew Morton
2008-08-29 6:31 ` John Kacur
2008-08-29 14:29 ` Steven Rostedt
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=1219682129.8515.81.camel@twins \
--to=peterz@infradead.org \
--cc=arjan@infradead.org \
--cc=jkacur@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-rt-users@vger.kernel.org \
--cc=mgross@linux.intel.com \
--cc=mingo@elte.hu \
--cc=rostedt@goodmis.org \
--cc=tglx@linutronix.de \
/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.