diff options
Diffstat (limited to 'Documentation/RCU/rcubarrier.txt')
-rw-r--r-- | Documentation/RCU/rcubarrier.txt | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/Documentation/RCU/rcubarrier.txt b/Documentation/RCU/rcubarrier.txt index 2e319d1b9ef2..b10cfe711e68 100644 --- a/Documentation/RCU/rcubarrier.txt +++ b/Documentation/RCU/rcubarrier.txt | |||
@@ -70,10 +70,14 @@ in realtime kernels in order to avoid excessive scheduling latencies. | |||
70 | 70 | ||
71 | rcu_barrier() | 71 | rcu_barrier() |
72 | 72 | ||
73 | We instead need the rcu_barrier() primitive. This primitive is similar | 73 | We instead need the rcu_barrier() primitive. Rather than waiting for |
74 | to synchronize_rcu(), but instead of waiting solely for a grace | 74 | a grace period to elapse, rcu_barrier() waits for all outstanding RCU |
75 | period to elapse, it also waits for all outstanding RCU callbacks to | 75 | callbacks to complete. Please note that rcu_barrier() does -not- imply |
76 | complete. Pseudo-code using rcu_barrier() is as follows: | 76 | synchronize_rcu(), in particular, if there are no RCU callbacks queued |
77 | anywhere, rcu_barrier() is within its rights to return immediately, | ||
78 | without waiting for a grace period to elapse. | ||
79 | |||
80 | Pseudo-code using rcu_barrier() is as follows: | ||
77 | 81 | ||
78 | 1. Prevent any new RCU callbacks from being posted. | 82 | 1. Prevent any new RCU callbacks from being posted. |
79 | 2. Execute rcu_barrier(). | 83 | 2. Execute rcu_barrier(). |