[PATCH tip/core/rcu 40/48] radix-tree: __rcu annotations

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Paul E. McKenney
Date: Tuesday, May 4, 2010 - 1:19 pm

From: Arnd Bergmann <arnd@arndb.de>

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Cc: Nick Piggin <npiggin@suse.de>
---
 include/linux/radix-tree.h |    4 +++-
 lib/radix-tree.c           |    2 +-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/include/linux/radix-tree.h b/include/linux/radix-tree.h
index 55ca73c..d801044 100644
--- a/include/linux/radix-tree.h
+++ b/include/linux/radix-tree.h
@@ -47,6 +47,8 @@ static inline void *radix_tree_indirect_to_ptr(void *ptr)
 {
 	return (void *)((unsigned long)ptr & ~RADIX_TREE_INDIRECT_PTR);
 }
+#define radix_tree_indirect_to_ptr(ptr) \
+	radix_tree_indirect_to_ptr((void __force *)(ptr))
 
 static inline int radix_tree_is_indirect_ptr(void *ptr)
 {
@@ -61,7 +63,7 @@ static inline int radix_tree_is_indirect_ptr(void *ptr)
 struct radix_tree_root {
 	unsigned int		height;
 	gfp_t			gfp_mask;
-	struct radix_tree_node	*rnode;
+	struct radix_tree_node	__rcu *rnode;
 };
 
 #define RADIX_TREE_INIT(mask)	{					\
diff --git a/lib/radix-tree.c b/lib/radix-tree.c
index 2a087e0..08f86cc 100644
--- a/lib/radix-tree.c
+++ b/lib/radix-tree.c
@@ -49,7 +49,7 @@ struct radix_tree_node {
 	unsigned int	height;		/* Height from the bottom */
 	unsigned int	count;
 	struct rcu_head	rcu_head;
-	void		*slots[RADIX_TREE_MAP_SIZE];
+	void __rcu	*slots[RADIX_TREE_MAP_SIZE];
 	unsigned long	tags[RADIX_TREE_MAX_TAGS][RADIX_TREE_TAG_LONGS];
 };
 
-- 
1.7.0

--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[PATCH tip/core/rcu 03/48] rcu: make dead code really dead, Paul E. McKenney, (Tue May 4, 1:19 pm)
[PATCH tip/core/rcu 19/48] Debugobjects transition check, Paul E. McKenney, (Tue May 4, 1:19 pm)
[PATCH tip/core/rcu 22/48] rcu head remove init, Paul E. McKenney, (Tue May 4, 1:19 pm)
[PATCH tip/core/rcu 24/48] rcu: make SRCU usable in modules, Paul E. McKenney, (Tue May 4, 1:19 pm)
[PATCH tip/core/rcu 0/48] v4 patches queued for 2.6.35, Paul E. McKenney, (Tue May 4, 1:19 pm)
[PATCH tip/core/rcu 32/48] rculist: avoid __rcu annotations, Paul E. McKenney, (Tue May 4, 1:19 pm)
[PATCH tip/core/rcu 33/48] cgroups: __rcu annotations, Paul E. McKenney, (Tue May 4, 1:19 pm)
[PATCH tip/core/rcu 34/48] credentials: rcu annotation, Paul E. McKenney, (Tue May 4, 1:19 pm)
[PATCH tip/core/rcu 35/48] keys: __rcu annotations, Paul E. McKenney, (Tue May 4, 1:19 pm)
[PATCH tip/core/rcu 36/48] nfs: __rcu annotations, Paul E. McKenney, (Tue May 4, 1:19 pm)
[PATCH tip/core/rcu 38/48] perf_event: __rcu annotations, Paul E. McKenney, (Tue May 4, 1:19 pm)
[PATCH tip/core/rcu 39/48] notifiers: __rcu annotations, Paul E. McKenney, (Tue May 4, 1:19 pm)
[PATCH tip/core/rcu 40/48] radix-tree: __rcu annotations, Paul E. McKenney, (Tue May 4, 1:19 pm)
[PATCH tip/core/rcu 41/48] idr: __rcu annotations, Paul E. McKenney, (Tue May 4, 1:19 pm)
[PATCH tip/core/rcu 42/48] input: __rcu annotations, Paul E. McKenney, (Tue May 4, 1:19 pm)
[PATCH tip/core/rcu 43/48] vhost: add __rcu annotations, Paul E. McKenney, (Tue May 4, 1:19 pm)
[PATCH tip/core/rcu 44/48] net/netfilter: __rcu annotations, Paul E. McKenney, (Tue May 4, 1:19 pm)
[PATCH tip/core/rcu 45/48] kvm: add __rcu annotations, Paul E. McKenney, (Tue May 4, 1:19 pm)
[PATCH tip/core/rcu 46/48] kernel: __rcu annotations, Paul E. McKenney, (Tue May 4, 1:19 pm)
[PATCH tip/core/rcu 47/48] net: __rcu annotations, Paul E. McKenney, (Tue May 4, 1:19 pm)
[PATCH tip/core/rcu 48/48] kvm: more __rcu annotations, Paul E. McKenney, (Tue May 4, 1:19 pm)
Re: [PATCH tip/core/rcu 43/48] vhost: add __rcu annotations, Michael S. Tsirkin, (Tue May 4, 2:39 pm)
Re: [PATCH tip/core/rcu 43/48] vhost: add __rcu annotations, Paul E. McKenney, (Tue May 4, 4:57 pm)
Re: [PATCH tip/core/rcu 43/48] vhost: add __rcu annotations, Michael S. Tsirkin, (Tue May 4, 4:59 pm)
Re: [PATCH tip/core/rcu 33/48] cgroups: __rcu annotations, Paul E. McKenney, (Tue May 4, 5:04 pm)
Re: [PATCH tip/core/rcu 43/48] vhost: add __rcu annotations, Paul E. McKenney, (Tue May 4, 5:39 pm)
Re: [PATCH tip/core/rcu 36/48] nfs: __rcu annotations, David Howells, (Wed May 5, 3:14 am)
Re: [PATCH tip/core/rcu 36/48] nfs: __rcu annotations, Trond Myklebust, (Wed May 5, 5:44 am)
Re: [PATCH tip/core/rcu 36/48] nfs: __rcu annotations, Paul E. McKenney, (Wed May 5, 2:01 pm)