From: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
To: David Miller <davem@davemloft.net>
Cc: herbert@gondor.apana.org.au, eric.dumazet@gmail.com,
shemminger@vyatta.com, mst@redhat.com, frzhang@redhat.com,
netdev@vger.kernel.org, amwang@redhat.com, mpm@selenic.com
Subject: Re: [0/8] netpoll/bridge fixes
Date: Wed, 16 Jun 2010 16:02:49 -0700 [thread overview]
Message-ID: <20100616230249.GJ2457@linux.vnet.ibm.com> (raw)
In-Reply-To: <20100615.214702.57478137.davem@davemloft.net>
On Tue, Jun 15, 2010 at 09:47:02PM -0700, David Miller wrote:
> From: Herbert Xu <herbert@gondor.apana.org.au>
> Date: Wed, 16 Jun 2010 13:33:36 +1000
>
> > On Wed, Jun 16, 2010 at 05:03:20AM +0200, Eric Dumazet wrote:
> >>
> >> I wonder how these patches were tested, Herbert ?
> >
> > You know, not everyone enables RCU debugging...
>
> Even though I'm as guilty as you, I have to agree with Eric that
> especially us core folks should be running with the various lock
> debugging options on all the time.
>
> Maybe someone should add the RCU debugging config option to
> Documentation/SubmitChecklist :-)
How about the following added to Documentation/RCU/checklist.txt?
The first is in mainline, the second partly there, and the third
is still languishing in my tree. I did manage to remove a dependency
on other maintainers, so things will hopefully move a bit faster.
Thanx, Paul
diff --git a/Documentation/RCU/checklist.txt b/Documentation/RCU/checklist.txt
index 790d1a8..c7c6788 100644
--- a/Documentation/RCU/checklist.txt
+++ b/Documentation/RCU/checklist.txt
@@ -365,3 +365,26 @@ over a rather long period of time, but improvements are always welcome!
and the compiler to freely reorder code into and out of RCU
read-side critical sections. It is the responsibility of the
RCU update-side primitives to deal with this.
+
+17. Use CONFIG_PROVE_RCU, CONFIG_DEBUG_OBJECTS_RCU_HEAD, and
+ the __rcu sparse checks to validate your RCU code. These
+ can help find problems as follows:
+
+ CONFIG_PROVE_RCU: check that accesses to RCU-protected data
+ structures are carried out under the proper RCU
+ read-side critical section, while holding the right
+ combination of locks, or whatever other conditions
+ are appropriate.
+
+ CONFIG_DEBUG_OBJECTS_RCU_HEAD: check that you don't pass the
+ same object to call_rcu() (or friends) before an RCU
+ grace period has elapsed since the last time that you
+ passed that same object to call_rcu() (or friends).
+
+ __rcu sparse checks: tag the pointer to the RCU-protected data
+ structure with __rcu, and sparse will warn you if you
+ access that pointer without the services of one of the
+ variants of rcu_dereference().
+
+ These debugging aids can help you find problems that are
+ otherwise extremely difficult to spot.
next prev parent reply other threads:[~2010-06-16 23:02 UTC|newest]
Thread overview: 63+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-06-10 12:40 [0/8] netpoll/bridge fixes Herbert Xu
2010-06-10 12:42 ` [PATCH 1/7] netpoll: Set npinfo to NULL even with ndo_netpoll_cleanup Herbert Xu
2010-06-10 12:42 ` [PATCH 2/7] bridge: Remove redundant npinfo NULL setting Herbert Xu
2010-06-10 12:42 ` [PATCH 3/7] netpoll: Fix RCU usage Herbert Xu
2010-06-10 12:42 ` [PATCH 4/7] netpoll: Add locking for netpoll_setup/cleanup Herbert Xu
2010-06-10 12:42 ` [PATCH 5/7] netpoll: Add ndo_netpoll_setup Herbert Xu
2010-06-10 12:42 ` [PATCH 6/7] netpoll: Allow netpoll_setup/cleanup recursion Herbert Xu
2010-06-10 12:42 ` [PATCH 7/7] bridge: Fix netpoll support Herbert Xu
2010-06-10 14:49 ` [0/8] netpoll/bridge fixes Stephen Hemminger
2010-06-10 21:56 ` Herbert Xu
2010-06-10 21:59 ` Stephen Hemminger
2010-06-10 22:48 ` Herbert Xu
2010-06-11 2:11 ` Herbert Xu
2010-06-11 2:12 ` [PATCH 1/8] netpoll: Set npinfo to NULL even with ndo_netpoll_cleanup Herbert Xu
2010-06-11 2:12 ` [PATCH 2/8] bridge: Remove redundant npinfo NULL setting Herbert Xu
2010-06-11 2:12 ` [PATCH 3/8] netpoll: Fix RCU usage Herbert Xu
2010-06-11 23:10 ` Paul E. McKenney
2010-06-11 2:12 ` [PATCH 4/8] netpoll: Add locking for netpoll_setup/cleanup Herbert Xu
2010-06-11 2:12 ` [PATCH 5/8] netpoll: Add ndo_netpoll_setup Herbert Xu
2010-06-11 2:12 ` [PATCH 6/8] netpoll: Allow netpoll_setup/cleanup recursion Herbert Xu
2010-06-25 1:21 ` Andrew Morton
2010-06-25 3:01 ` Herbert Xu
2010-06-25 3:30 ` David Miller
2010-06-25 3:50 ` Andrew Morton
2010-06-25 4:27 ` David Miller
2010-06-25 4:42 ` Andrew Morton
2010-06-25 4:52 ` David Miller
2010-06-25 8:08 ` Peter Zijlstra
2010-06-25 8:42 ` Andrew Morton
2010-06-25 9:45 ` Peter Zijlstra
2010-06-25 8:46 ` Ingo Molnar
2010-06-25 10:08 ` Nick Piggin
2010-06-11 2:12 ` [PATCH 7/8] netpoll: Add netpoll_tx_running Herbert Xu
2010-06-11 2:12 ` [PATCH 8/8] bridge: Fix netpoll support Herbert Xu
2010-06-11 3:08 ` fired a bug report on bugzilla.redhat.com Qianfeng Zhang
2010-06-15 10:28 ` [PATCH 8/8] bridge: Fix netpoll support Cong Wang
2010-06-17 10:38 ` Herbert Xu
2010-06-17 10:57 ` Cong Wang
2010-06-17 10:55 ` Herbert Xu
2010-06-18 3:06 ` Cong Wang
2010-06-11 20:03 ` [0/8] netpoll/bridge fixes Matt Mackall
2010-06-15 10:17 ` Cong Wang
2010-06-15 18:39 ` David Miller
2010-06-16 2:58 ` Eric Dumazet
2010-06-16 3:03 ` Eric Dumazet
2010-06-16 3:33 ` Herbert Xu
2010-06-16 4:47 ` David Miller
2010-06-16 23:02 ` Paul E. McKenney [this message]
2010-06-17 10:18 ` Michael S. Tsirkin
2010-06-17 21:26 ` Paul E. McKenney
2010-06-16 6:16 ` Eric Dumazet
2010-06-16 5:08 ` Paul E. McKenney
2010-06-16 6:21 ` Eric Dumazet
2010-06-16 16:01 ` Paul E. McKenney
2010-07-19 10:19 ` Michael S. Tsirkin
2010-07-19 10:53 ` Herbert Xu
2010-07-19 11:54 ` Herbert Xu
2010-07-19 16:05 ` David Miller
2010-07-19 16:52 ` Eric Dumazet
2010-07-19 20:35 ` David Miller
2010-07-20 5:26 ` Herbert Xu
2010-07-20 6:28 ` David Miller
2010-06-29 12:53 ` Yanko Kaneti
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=20100616230249.GJ2457@linux.vnet.ibm.com \
--to=paulmck@linux.vnet.ibm.com \
--cc=amwang@redhat.com \
--cc=davem@davemloft.net \
--cc=eric.dumazet@gmail.com \
--cc=frzhang@redhat.com \
--cc=herbert@gondor.apana.org.au \
--cc=mpm@selenic.com \
--cc=mst@redhat.com \
--cc=netdev@vger.kernel.org \
--cc=shemminger@vyatta.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).