Lines Matching refs:P0
115 P0()
131 Here the P0() function represents the interrupt handler running on one
134 Thus, P0 stores the data in buf and then sets flag. Meanwhile, P1
162 instance, P1 might run entirely before P0 begins, in which case r1 and
163 r2 will both be 0 at the end. Or P0 might run entirely before P1
167 routines run concurrently. One possibility is that P1 runs after P0's
196 Since r1 = 1, P0 must store 1 to flag before P1 loads 1 from
202 P1 must load 0 from buf before P0 stores 1 to it; otherwise r2
206 P0 stores 1 to buf before storing 1 to flag, since it executes
209 Since an instruction (in this case, P0's store to flag) cannot
227 P0()
270 W: P0 stores 1 to flag executes before
273 Z: P0 stores 1 to buf executes before
274 W: P0 stores 1 to flag.
368 that in the MP example, the compiler won't reorder P0's write event to
369 buf and P0's write event to flag, and similarly for the other shared
512 P0()
525 from the value stored by P0).
535 P0()
549 from both of P0's stores. It is possible to handle mixed-size and
614 P0()
628 P0()
644 P0()
657 If r1 = 5 (reading from P0's store) and r2 = 0 (reading from the
696 P0()
1082 P0()
1103 smp_wmb() forces P0's store to x to propagate to P1 before the store
1203 P0()
1216 If r1 = 8 at the end then P0's accesses must have executed in program
1217 order. We can deduce this from the operational model; if P0's load
1220 8. In this case there is a prop link from P0's write event to its read
1221 event, because P1's store came after P0's store in x's coherence
1222 order, and P1's store propagated to P0 before P0's load executed.
1229 P0()
1242 If r1 = 0 and r2 = 9 at the end then P0's accesses must have executed
1244 then the x = 9 store must have been propagated to P0 before the first
1246 case there is a prop link from P0's first read event to its second,
1247 because P1's store overwrote the value read by P0's first load, and
1248 P1's store propagated to P0 before P0's second load executed.
1256 P0()
1276 overwritten by P0's store to buf, the fence guarantees that the store
1307 P0()
1331 link from P0's store to its load. This is because P0's store gets
1336 guarantees that the stores to x and y both propagate to P0 before the
1337 store to z does (the second cumul-fence), and P0's load executes after the
1338 store to z has propagated to P0 (an rfe link).
1394 P0()
1412 If r0 = 0 at the end then there is a pb link from P0's load to P1's
1413 load: an fre link from P0's load to P1's store (which overwrites the
1414 value read by P0), and a strong fence between P1's store and its load.
1420 to P0's. This means that if both r1 and r2 were 0 there would be a
1464 P0()
1483 means that P0's store to x propagated to P1 before P1 called
1484 synchronize_rcu(), so P0's critical section must have started before
1486 other hand, r2 = 0 means that P0's store to y, which occurs before the
1674 P0()
1692 If r2 = 0 at the end then P0's store at Y overwrites the value that
1697 If r1 = 1 at the end then P1's load at Z reads from P0's store at X,
1710 P0()
1747 P0 P1 P2
1762 This requires P0 and P2 to execute their loads and stores out of
1765 section in P0 both starts before P1's grace period does and ends
1826 P0()
1851 fences, only to lock-related operations. For instance, suppose P0()
1854 P0()
1883 P0()
1910 the spin_unlock() in P0. Hence the store to x must propagate to P2
1941 P0()
1958 P1's store to x propagates to P0 before P0's load from x executes.
1959 But since P0's load from x is a plain access, the compiler may decide
1962 object code generated for P0 could therefore end up looking rather
1965 P0()
1974 NULL pointer, because P1's store to x might propagate to P0 after the
2079 P0()
2098 means that the store to buf must propagate from P0 to P1 before Z
2160 P0()
2183 The smp_wmb() fence in P0 is both a compiler barrier and a
2278 P0()
2297 included merely for the sake of good form; typically P0 would call
2343 P0()
2361 before the grace period in P0 does, because RCU's Grace-Period
2362 Guarantee says that otherwise P0's store to x would have propagated to
2368 This means there is an rcu-fence link from P1's "y = 2" store to P0's
2369 "y = 3" store, and consequently the first must propagate from P1 to P0
2539 P0()