From: Peter Zijlstra <a.p.zijlstra@chello.nl>
To: "Dmitry Torokhov" <dmitry.torokhov@gmail.com>
Cc: paulmck@linux.vnet.ibm.com, linux-kernel@vger.kernel.org,
"Ingo Molnar" <mingo@elte.hu>,
"Andrew Morton" <akpm@linux-foundation.org>,
"Nick Piggin" <nickpiggin@yahoo.com.au>
Subject: Re: [RFC][PATCH 2/6] lockdep: validate rcu_dereference() vs rcu_read_lock()
Date: Wed, 19 Sep 2007 23:47:00 +0200 [thread overview]
Message-ID: <20070919234700.3b532dcd@lappy> (raw)
In-Reply-To: <d120d5000709191429n29f5dc78g2746de3ee4e9ca81@mail.gmail.com>
On Wed, 19 Sep 2007 17:29:09 -0400 "Dmitry Torokhov"
<dmitry.torokhov@gmail.com> wrote:
> On 9/19/07, Peter Zijlstra <a.p.zijlstra@chello.nl> wrote:
> > On Wed, 19 Sep 2007 16:41:04 -0400 "Dmitry Torokhov"
> > <dmitry.torokhov@gmail.com> wrote:
> >
> > > > If the IRQ handler does rcu_read_lock(),unlock() and the i8042_stop()
> > > > function does sync_rcu() instead of _sched(), it should be good again.
> > > > It will not affect anything else than the task that calls _stop(). And
> > > > even there the only change is that the sleep might be a tad longer.
> > >
> > > And the IRQ handler needs to do some extra job... Anyway, it looks -rt
> > > breaks synchronize_sched() and needs to have it fixed:
> > >
> > > "/**
> > > * synchronize_sched - block until all CPUs have exited any non-preemptive
> > > * kernel code sequences.
> > > *
> > > * This means that all preempt_disable code sequences, including NMI and
> > > * hardware-interrupt handlers, in progress on entry will have completed
> > > * before this primitive returns."
> >
> > That still does as it says in -rt. Its just that the interrupt handler
> > will be preemptible so the guarantees it gives are useless.
>
> Please note "... including NMI and hardware-interrupt handlers ..."
-rt doesn't run interrupt handlers in hardware irq context anymore.
> >
> > > > I find it curious that a driver that is 'low performant' and does not
> > > > suffer lock contention pioneers locking schemes. I agree with
> > > > optimizing, but this is not the place to push the envelope.
> > >
> > > Please realize that evey microsecond wasted on a 'low performant'
> > > driver is taken from high performers and if we can help it why
> > > shouldn't we?
> >
> > sure, but the cache eviction caused by running the driver will have
> > more impact than the added rcu_read_{,un}lock() calls.
>
> Are you saying that adding rcu_read_{,un}lock() will help with cache
> eviction? How?
No, I'm saying that its noise compared to the cache eviction overhead
it causes for others.
next prev parent reply other threads:[~2007-09-19 21:48 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-09-19 10:41 [RFC][PATCH 0/6] using lockdep to validate rcu usage Peter Zijlstra
2007-09-19 10:41 ` [RFC][PATCH 1/6] lockdep: annotate rcu_read_{,un}lock{,_bh} Peter Zijlstra
2007-09-19 23:06 ` Paul E. McKenney
2007-09-19 10:41 ` [RFC][PATCH 2/6] lockdep: validate rcu_dereference() vs rcu_read_lock() Peter Zijlstra
2007-09-19 14:17 ` Dmitry Torokhov
2007-09-19 14:31 ` Peter Zijlstra
2007-09-19 15:16 ` Dmitry Torokhov
2007-09-19 15:25 ` Peter Zijlstra
2007-09-19 15:37 ` Paul E. McKenney
2007-09-19 16:59 ` Dmitry Torokhov
2007-09-19 17:32 ` Paul E. McKenney
2007-09-19 17:48 ` Paul E. McKenney
2007-09-19 18:49 ` Dmitry Torokhov
2007-09-19 19:41 ` Peter Zijlstra
2007-09-19 19:49 ` Dmitry Torokhov
2007-09-19 20:13 ` Peter Zijlstra
2007-09-19 20:41 ` Dmitry Torokhov
2007-09-19 21:19 ` Peter Zijlstra
2007-09-19 21:29 ` Dmitry Torokhov
2007-09-19 21:47 ` Peter Zijlstra [this message]
2007-09-20 17:31 ` Dmitry Torokhov
2007-09-21 0:01 ` Paul E. McKenney
2007-09-21 14:15 ` Dmitry Torokhov
2007-09-21 14:30 ` Peter Zijlstra
2007-09-19 20:48 ` Paul E. McKenney
2007-09-19 10:41 ` [RFC][PATCH 3/6] lockdep: rcu_dereference() vs preempt_disable() Peter Zijlstra
2007-09-19 10:41 ` [RFC][PATCH 4/6] implicit vs explicit preempt_disable() Peter Zijlstra
2007-09-19 10:41 ` [RFC][PATCH 5/6] fixup funny preemption tricks in irq_exit Peter Zijlstra
2007-09-19 10:41 ` [RFC][PATCH 6/6] fixup early boot Peter Zijlstra
2007-09-19 13:38 ` [RFC][PATCH 0/6] using lockdep to validate rcu usage Ingo Molnar
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=20070919234700.3b532dcd@lappy \
--to=a.p.zijlstra@chello.nl \
--cc=akpm@linux-foundation.org \
--cc=dmitry.torokhov@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=nickpiggin@yahoo.com.au \
--cc=paulmck@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.