The series removes all users of the API and with this patch, the API itself. Also fix documentation. Signed-off-by: Joel Fernandes (Google) <joel@xxxxxxxxxxxxxxxxx> --- Documentation/RCU/Design/Requirements/Requirements.html | 6 +++--- include/linux/rcupdate.h | 9 --------- 2 files changed, 3 insertions(+), 12 deletions(-) diff --git a/Documentation/RCU/Design/Requirements/Requirements.html b/Documentation/RCU/Design/Requirements/Requirements.html index 5a9238a2883c..9727278893e6 100644 --- a/Documentation/RCU/Design/Requirements/Requirements.html +++ b/Documentation/RCU/Design/Requirements/Requirements.html @@ -2512,9 +2512,9 @@ disabled across the entire RCU read-side critical section. <p> It is possible to use tracing on RCU code, but tracing itself uses RCU. -For this reason, <tt>rcu_dereference_raw_notrace()</tt> -is provided for use by tracing, which avoids the destructive -recursion that could otherwise ensue. +This is the other reason for using, <tt>rcu_dereference_raw()</tt>, +for use by tracing, which avoids the destructive recursion that could +otherwise ensue. This API is also used by virtualization in some architectures, where RCU readers execute in environments in which tracing cannot be used. diff --git a/include/linux/rcupdate.h b/include/linux/rcupdate.h index 922bb6848813..f917a27fc115 100644 --- a/include/linux/rcupdate.h +++ b/include/linux/rcupdate.h @@ -472,15 +472,6 @@ static inline void rcu_preempt_sleep_check(void) { } __rcu_dereference_check((p), (c) || rcu_read_lock_sched_held(), \ __rcu) -/* - * The tracing infrastructure traces RCU (we want that), but unfortunately - * some of the RCU checks causes tracing to lock up the system. - * - * The no-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_dereference_protected() - fetch RCU pointer when updates prevented * @p: The pointer to read, prior to dereferencing -- 2.22.0.rc1.257.g3120a18244-goog