From: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
To: Matt Helsley <matthltc@us.ibm.com>
Cc: linux-kernel@vger.kernel.org, mingo@elte.hu,
laijs@cn.fujitsu.com, dipankar@in.ibm.com,
akpm@linux-foundation.org, mathieu.desnoyers@polymtl.ca,
josh@joshtriplett.org, dvhltc@us.ibm.com, niv@us.ibm.com,
tglx@linutronix.de, peterz@infradead.org, rostedt@goodmis.org,
Valdis.Kletnieks@vt.edu, dhowells@redhat.com,
eric.dumazet@gmail.com, Arnd Bergmann <arnd@arndb.de>,
Christopher Li <sparse@chrisli.org>
Subject: Re: [PATCH RFC tip/core/rcu 02/23] rcu: add __rcu API for later sparse checking
Date: Thu, 13 May 2010 14:48:18 -0700 [thread overview]
Message-ID: <20100513214818.GL2879@linux.vnet.ibm.com> (raw)
In-Reply-To: <20100513205307.GS31830@count0.beaverton.ibm.com>
On Thu, May 13, 2010 at 01:53:07PM -0700, Matt Helsley wrote:
> On Wed, May 12, 2010 at 02:33:21PM -0700, Paul E. McKenney wrote:
> > This commit defines an __rcu API, but provides only vacuous definitions
> > for it. This breaks dependencies among most of the subsequent patches,
> > allowing them to reach mainline asynchronously via whatever trees are
> > appropriate.
>
> Seems like a good plan to me.
>
> I know it's not the right time to push it but I am curious to see what,
> approximately, you expect a non-vacuous __rcu definition to look like.
> (i.e. when it's being run through sparse)
Patch 6 of this series defines the sparse magic and the rcu_dereference()
checks that do this. But yes, there are dependencies among these patches.
Thanx, Paul
> Cheers,
> -Matt Helsley
>
> >
> > Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> > Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
> > Cc: Christopher Li <sparse@chrisli.org>
> > Cc: Josh Triplett <josh@joshtriplett.org>
> > ---
> > include/linux/compiler.h | 2 ++
> > 1 files changed, 2 insertions(+), 0 deletions(-)
> >
> > diff --git a/include/linux/compiler.h b/include/linux/compiler.h
> > index a5a472b..c1a62c5 100644
> > --- a/include/linux/compiler.h
> > +++ b/include/linux/compiler.h
> > @@ -16,6 +16,7 @@
> > # define __release(x) __context__(x,-1)
> > # define __cond_lock(x,c) ((c) ? ({ __acquire(x); 1; }) : 0)
> > # define __percpu __attribute__((noderef, address_space(3)))
> > +# define __rcu
> > extern void __chk_user_ptr(const volatile void __user *);
> > extern void __chk_io_ptr(const volatile void __iomem *);
> > #else
> > @@ -34,6 +35,7 @@ extern void __chk_io_ptr(const volatile void __iomem *);
> > # define __release(x) (void)0
> > # define __cond_lock(x,c) (c)
> > # define __percpu
> > +# define __rcu
> > #endif
> >
> > #ifdef __KERNEL__
> > --
> > 1.7.0.6
> >
> > --
> > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> > the body of a message to majordomo@vger.kernel.org
> > More majordomo info at http://vger.kernel.org/majordomo-info.html
> > Please read the FAQ at http://www.tux.org/lkml/
next prev parent reply other threads:[~2010-05-13 21:48 UTC|newest]
Thread overview: 55+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-05-12 21:33 [PATCH tip/core/rcu 0/23] infrastructure for sparse checks for RCU usage Paul E. McKenney
2010-05-12 21:33 ` [PATCH RFC tip/core/rcu 01/23] rcu: add an rcu_dereference_index_check() Paul E. McKenney
2010-05-12 21:33 ` [PATCH RFC tip/core/rcu 02/23] rcu: add __rcu API for later sparse checking Paul E. McKenney
2010-05-13 20:53 ` Matt Helsley
2010-05-13 21:48 ` Paul E. McKenney [this message]
2010-05-12 21:33 ` [PATCH RFC tip/core/rcu 03/23] vfs: add fs.h to define struct file Paul E. McKenney
2010-05-12 21:33 ` [PATCH RFC tip/core/rcu 04/23] net: Make accesses to ->br_port safe for sparse RCU Paul E. McKenney
2010-05-12 21:44 ` Stephen Hemminger
2010-05-12 22:35 ` Paul E. McKenney
2010-05-13 1:33 ` Stephen Hemminger
2010-05-13 2:00 ` Paul E. McKenney
2010-05-12 21:33 ` [PATCH RFC tip/core/rcu 05/23] mce: convert to rcu_dereference_index_check() Paul E. McKenney
2010-05-12 21:33 ` [PATCH RFC tip/core/rcu 06/23] rcu: define __rcu address space modifier for sparse Paul E. McKenney
2010-05-12 21:33 ` [PATCH RFC tip/core/rcu 07/23] rculist: avoid __rcu annotations Paul E. McKenney
2010-05-12 21:33 ` [PATCH RFC tip/core/rcu 08/23] cgroups: " Paul E. McKenney
2010-05-12 21:33 ` [PATCH RFC tip/core/rcu 09/23] credentials: rcu annotation Paul E. McKenney
2010-05-13 10:04 ` David Howells
2010-05-12 21:33 ` [PATCH RFC tip/core/rcu 10/23] keys: __rcu annotations Paul E. McKenney
2010-05-13 10:05 ` David Howells
2010-05-12 21:33 ` [PATCH RFC tip/core/rcu 11/23] nfs: " Paul E. McKenney
2010-05-12 21:33 ` [PATCH RFC tip/core/rcu 12/23] net: __rcu annotations for drivers Paul E. McKenney
2010-05-12 21:33 ` [PATCH RFC tip/core/rcu 13/23] perf_event: __rcu annotations Paul E. McKenney
2010-05-12 21:33 ` [PATCH RFC tip/core/rcu 14/23] notifiers: " Paul E. McKenney
2010-05-12 21:33 ` [PATCH RFC tip/core/rcu 15/23] radix-tree: " Paul E. McKenney
2010-05-12 21:33 ` [PATCH RFC tip/core/rcu 16/23] idr: " Paul E. McKenney
2010-05-12 21:33 ` [PATCH RFC tip/core/rcu 17/23] input: " Paul E. McKenney
2010-05-13 7:40 ` Dmitry Torokhov
2010-05-12 21:33 ` [PATCH RFC tip/core/rcu 18/23] net/netfilter: " Paul E. McKenney
2010-05-13 13:21 ` Patrick McHardy
2010-05-12 21:33 ` [PATCH RFC tip/core/rcu 19/23] kvm: add " Paul E. McKenney
2010-05-12 21:33 ` [PATCH RFC tip/core/rcu 20/23] kernel: " Paul E. McKenney
2010-05-12 21:33 ` [PATCH RFC tip/core/rcu 21/23] net: " Paul E. McKenney
2010-05-12 21:33 ` [PATCH RFC tip/core/rcu 22/23] kvm: more " Paul E. McKenney
2010-05-12 21:33 ` [PATCH RFC tip/core/rcu 23/23] vhost: add " Paul E. McKenney
2010-05-12 21:48 ` Michael S. Tsirkin
2010-05-12 23:00 ` Paul E. McKenney
2010-05-13 3:53 ` Michael S. Tsirkin
2010-05-13 4:49 ` Paul E. McKenney
2010-05-13 4:50 ` Michael S. Tsirkin
2010-05-13 19:55 ` Paul E. McKenney
2010-05-13 13:07 ` Peter Zijlstra
2010-05-13 15:23 ` Paul E. McKenney
2010-05-17 20:33 ` Michael S. Tsirkin
2010-05-17 21:06 ` Paul E. McKenney
2010-05-17 22:00 ` Mathieu Desnoyers
2010-05-17 23:05 ` Paul E. McKenney
2010-05-17 23:08 ` Michael S. Tsirkin
2010-05-17 23:40 ` Mathieu Desnoyers
2010-05-18 0:34 ` Paul E. McKenney
2010-05-18 1:35 ` Mathieu Desnoyers
2010-05-18 14:20 ` Paul E. McKenney
2010-05-18 14:25 ` Michael S. Tsirkin
2010-05-18 15:07 ` Paul E. McKenney
2010-05-18 14:47 ` Mathieu Desnoyers
2010-05-18 15:11 ` Paul E. McKenney
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=20100513214818.GL2879@linux.vnet.ibm.com \
--to=paulmck@linux.vnet.ibm.com \
--cc=Valdis.Kletnieks@vt.edu \
--cc=akpm@linux-foundation.org \
--cc=arnd@arndb.de \
--cc=dhowells@redhat.com \
--cc=dipankar@in.ibm.com \
--cc=dvhltc@us.ibm.com \
--cc=eric.dumazet@gmail.com \
--cc=josh@joshtriplett.org \
--cc=laijs@cn.fujitsu.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mathieu.desnoyers@polymtl.ca \
--cc=matthltc@us.ibm.com \
--cc=mingo@elte.hu \
--cc=niv@us.ibm.com \
--cc=peterz@infradead.org \
--cc=rostedt@goodmis.org \
--cc=sparse@chrisli.org \
--cc=tglx@linutronix.de \
/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).