From: David Brownell <david-b@pacbell.net>
To: Nick Piggin <nickpiggin@yahoo.com.au>
Cc: Andrew Morton <akpm@linux-foundation.org>,
Ingo Molnar <mingo@elte.hu>,
Linux Kernel list <linux-kernel@vger.kernel.org>,
Florian Fainelli <florian.fainelli@telecomint.eu>,
Haavard Skinnemoen <hskinnemoen@atmel.com>
Subject: Re: [patch 2.6.24-rc2 1/3] generic gpio -- gpio_chip support
Date: Wed, 14 Nov 2007 00:37:57 -0800 [thread overview]
Message-ID: <200711140037.58049.david-b@pacbell.net> (raw)
In-Reply-To: <200711140645.26363.nickpiggin@yahoo.com.au>
On Tuesday 13 November 2007, Nick Piggin wrote:
> On Wednesday 14 November 2007 17:52, David Brownell wrote:
> > On Tuesday 13 November 2007, Andrew Morton wrote:
>
> > > > I'll highlight the
> > > > point that such bitops shouldn't be preemption points.
> > >
> > > Disagree. *everything* should be a preemption point.
> >
> > So it's wrong that <asm-generic/bitops/atomic.h> uses the
> > same calls to prevent *those* bitops from being prempted?
>
> Upstream, all spinlocks prevent preemption.
I chose my wording carefully though. A preemption point is
more than just a small region where preemption isn't allowed.
It's one of those where preemption is *INVITED* ...
Now, in the RT case, I believe the rationale for inviting
preemption when dropping a lock is largely related to the
way priority inversion is handled. When lock contention can
block higher priority activities, dropping the lock must
be able to trigger the relevant activity switch.
... and the raw spinlocks don't support that machinery,
while "normal" spinlocks become inversion-aware mutexes.
> But these ones
> are raw locks rather than normal locks probably because that
> they are trivially an innermost and correct lock.
As in the $SUBJECT case, I'd say.
Although another point is related to "trivial": the data
is being protected through an operation too trivial to be
worth paying for any of that priority logic.
next prev parent reply other threads:[~2007-11-14 8:38 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-11-09 19:36 [patch 2.6.24-rc2 1/3] generic gpio -- gpio_chip support David Brownell
2007-11-12 21:36 ` Andrew Morton
2007-11-12 22:32 ` David Brownell
2007-11-12 23:28 ` Andrew Morton
2007-11-13 1:26 ` David Brownell
2007-11-13 9:34 ` Ingo Molnar
2007-11-13 19:22 ` David Brownell
2007-11-13 12:25 ` Nick Piggin
2007-11-14 8:20 ` David Brownell
2007-11-13 21:18 ` Nick Piggin
2007-11-15 6:28 ` David Brownell
2007-11-14 18:51 ` Nick Piggin
2007-11-15 8:17 ` David Brownell
2007-11-14 19:19 ` Nick Piggin
2007-11-14 19:21 ` Nick Piggin
2007-11-13 20:46 ` Andrew Morton
2007-11-14 6:52 ` David Brownell
2007-11-13 19:45 ` Nick Piggin
2007-11-14 8:37 ` David Brownell [this message]
2007-11-13 21:08 ` Nick Piggin
2007-11-15 6:23 ` David Brownell
2007-11-14 9:54 ` Haavard Skinnemoen
2007-11-15 6:50 ` David Brownell
2007-11-15 8:43 ` Haavard Skinnemoen
2007-11-14 9:59 ` Ingo Molnar
2007-11-14 12:14 ` Thomas Gleixner
2007-11-15 7:02 ` David Brownell
2007-11-15 7:32 ` Thomas Gleixner
2007-11-15 8:20 ` David Brownell
2007-11-15 8:51 ` Haavard Skinnemoen
2007-11-15 18:55 ` David Brownell
2007-11-15 7:17 ` David Brownell
2007-11-15 7:35 ` Thomas Gleixner
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=200711140037.58049.david-b@pacbell.net \
--to=david-b@pacbell.net \
--cc=akpm@linux-foundation.org \
--cc=florian.fainelli@telecomint.eu \
--cc=hskinnemoen@atmel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=nickpiggin@yahoo.com.au \
/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