+ int was_online;
+
+ was_online = rcu_reader_qs_gp & 1;
+
+ /*
+ * Mark the writer thread offline to make sure we don't wait for
+ * our own quiescent state. This allows using synchronize_rcu() in
+ * threads registered as readers.
+ */
+ if (was_online)
+ _rcu_thread_offline();
+