summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorhselasky <hselasky@FreeBSD.org>2018-02-25 10:33:55 +0000
committerhselasky <hselasky@FreeBSD.org>2018-02-25 10:33:55 +0000
commitbf842f830c3035d677884526074394972c917f05 (patch)
tree622663defc940892f84780a2d802c29572937e52
parente27c395aae4f4c2e2b4ff34d2132bcc60eb444d0 (diff)
downloadFreeBSD-src-bf842f830c3035d677884526074394972c917f05.zip
FreeBSD-src-bf842f830c3035d677884526074394972c917f05.tar.gz
MFC r329514:
Implement the rcu_dereference_raw() function macro. Make sure all RCU dereferencing use the READ_ONCE() function macro. Submitted by: Johannes Lundberg <johalun0@gmail.com> Sponsored by: Mellanox Technologies Sponsored by: Limelight Networks
-rw-r--r--sys/compat/linuxkpi/common/include/linux/rcupdate.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/sys/compat/linuxkpi/common/include/linux/rcupdate.h b/sys/compat/linuxkpi/common/include/linux/rcupdate.h
index b2dd2ae..e4afa5a 100644
--- a/sys/compat/linuxkpi/common/include/linux/rcupdate.h
+++ b/sys/compat/linuxkpi/common/include/linux/rcupdate.h
@@ -74,14 +74,17 @@
} while (0)
#define rcu_access_pointer(p) \
- ((__typeof(*p) *)(READ_ONCE(p)))
+ ((__typeof(*p) *)READ_ONCE(p))
#define rcu_dereference_protected(p, c) \
- ((__typeof(*p) *)(p))
+ ((__typeof(*p) *)READ_ONCE(p))
#define rcu_dereference(p) \
rcu_dereference_protected(p, 0)
+#define rcu_dereference_raw(p) \
+ ((__typeof(*p) *)READ_ONCE(p))
+
#define rcu_pointer_handoff(p) (p)
#define rcu_assign_pointer(p, v) do { \
OpenPOWER on IntegriCloud