netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
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

  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).