From: Ingo Molnar <mingo@elte.hu>
To: David Miller <davem@davemloft.net>
Cc: akpm@linux-foundation.org, netdev@vger.kernel.org,
kaber@trash.net, dipankar@in.ibm.com, paulmck@us.ibm.com
Subject: Re: [patch 11/11] netfilter warning fix
Date: Tue, 6 Feb 2007 22:02:51 +0100 [thread overview]
Message-ID: <20070206210250.GB25430@elte.hu> (raw)
In-Reply-To: <20070206.114325.98862918.davem@davemloft.net>
* David Miller <davem@davemloft.net> wrote:
> > that was pretty much the only place in the whole kernel that got hit
> > by some rcu-preempt side-effect - and even this appears to show that
> > it's a real bug that was in hiding.
>
> No, rather, it's the only location that triggered an automated
> debugging check. The very first set of code paths we checked, in
> response to the bug trigger, showed beyond a shadow of a doubt that
> this assumption is pervasive and in many locations that none of the
> automated debugging checks live.
>
> The tree should be fully audited before such a huge semantic change
> gets added into the tree.
i'd like to add more automated checks to the tree. 'naked'
smp_processor_id() use is one telltale sign of such a problem - what
other instances could you suggest me to check? The thing is, in 99% of
the cases the smp_processor_id() check caught such assumptions in other
code because 'preempt off' is inextricably connected to /some/ use of
smp_processor_id() - be it get_cpu_var() or any other derivative
interface. So i'm wondering what other assumptions there are (or can be)
about rcu_read_lock() also being a preempt-off point. Thanks!
(btw., i always argued that neither preempt_disable() nor
rcu_read_lock() is an ideal interface for locking because both hide
critical assumptions and dependencies - and they both are able to create
little versions of the 'big BKL mess' that we had to fight a few years
ago. (and that we still have to fight today, in certain areas of code.))
Ingo
next prev parent reply other threads:[~2007-02-06 21:03 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-02-06 0:31 [patch 11/11] netfilter warning fix akpm
2007-02-06 2:10 ` David Miller
2007-02-06 2:18 ` Andrew Morton
2007-02-06 2:44 ` David Miller
2007-02-06 2:53 ` Andrew Morton
2007-02-06 12:34 ` Ingo Molnar
2007-02-06 19:43 ` David Miller
2007-02-06 21:02 ` Ingo Molnar [this message]
2007-02-06 21:23 ` David Miller
2007-02-06 21:58 ` Ingo Molnar
2007-02-07 6:43 ` Patrick McHardy
2007-02-07 8:07 ` Ingo Molnar
2007-02-07 8:13 ` David Miller
2007-02-07 8:16 ` Patrick McHardy
2007-02-07 8:18 ` Ingo Molnar
2007-02-06 9:21 ` Martin Josefsson
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=20070206210250.GB25430@elte.hu \
--to=mingo@elte.hu \
--cc=akpm@linux-foundation.org \
--cc=davem@davemloft.net \
--cc=dipankar@in.ibm.com \
--cc=kaber@trash.net \
--cc=netdev@vger.kernel.org \
--cc=paulmck@us.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 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).