Merge remote-tracking branch 'asoc/fix/tlv320aic3x' into asoc-linus
[firefly-linux-kernel-4.4.55.git] / include / linux / rcupdate.h
index 4ccd68e49b00dbb9ef88006d31f9cfbadec3272a..ddcc7826d9075dba200be0cd96aaef77afb9a74e 100644 (file)
@@ -640,6 +640,15 @@ static inline void rcu_preempt_sleep_check(void)
 
 #define rcu_dereference_raw(p) rcu_dereference_check(p, 1) /*@@@ needed? @@@*/
 
+/*
+ * The tracing infrastructure traces RCU (we want that), but unfortunately
+ * some of the RCU checks causes tracing to lock up the system.
+ *
+ * The tracing version of rcu_dereference_raw() must not call
+ * rcu_read_lock_held().
+ */
+#define rcu_dereference_raw_notrace(p) __rcu_dereference_check((p), 1, __rcu)
+
 /**
  * rcu_access_index() - fetch RCU index with no dereferencing
  * @p: The index to read