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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).