Lines Matching refs:RELEASE

439      An ACQUIRE operation should almost always be paired with a RELEASE
443 (6) RELEASE operations.
446 memory operations before the RELEASE operation will appear to happen
447 before the RELEASE operation with respect to the other components of the
448 system. RELEASE operations include UNLOCK operations and
451 Memory operations that occur after a RELEASE operation may appear to
454 The use of ACQUIRE and RELEASE operations generally precludes the need
456 the subsection "MMIO write barrier"). In addition, a RELEASE+ACQUIRE
459 RELEASE on that same variable are guaranteed to be visible. In other
465 RELEASE acts as a minimal "release" operation.
1795 In all cases there are variants on "ACQUIRE" operations and "RELEASE" operations
1809 (2) RELEASE operation implication:
1811 Memory operations issued before the RELEASE will be completed before the
1812 RELEASE operation has completed.
1814 Memory operations issued after the RELEASE may be completed before the
1815 RELEASE operation has completed.
1822 (4) ACQUIRE vs RELEASE implication:
1824 All ACQUIRE operations issued before a RELEASE operation will be
1825 completed before the RELEASE operation.
1838 An ACQUIRE followed by a RELEASE may not be assumed to be full memory barrier
1840 ACQUIRE, and an access following the RELEASE to happen before the RELEASE, and
1845 RELEASE M
1850 ACQUIRE M, STORE *B, STORE *A, RELEASE M
1852 When the ACQUIRE and RELEASE are a lock acquisition and release,
1854 RELEASE are to the same lock variable, but only from the perspective of
1856 RELEASE may -not- be assumed to be a full memory barrier.
1858 Similarly, the reverse case of a RELEASE followed by an ACQUIRE does
1860 critical sections corresponding to the RELEASE and the ACQUIRE can cross,
1864 RELEASE M
1870 ACQUIRE N, STORE *B, STORE *A, RELEASE M
1874 the RELEASE would simply complete, thereby avoiding the deadlock.
1914 RELEASE
1920 ACQUIRE, {*F,*A}, *E, {*C,*D}, *B, RELEASE
1926 {*F,*A}, *B, ACQUIRE, *C, *D, RELEASE, *E
1927 *A, *B, *C, ACQUIRE, *D, RELEASE, *E, *F
1928 *A, *B, ACQUIRE, *C, RELEASE, *D, *E, *F
1929 *B, ACQUIRE, *C, *D, RELEASE, {*F,*A}, *E
1937 (RELEASE equivalent) will act as compiler barriers only. So if memory or I/O
2112 RELEASE M RELEASE Q
2119 *E, ACQUIRE M, ACQUIRE Q, *G, *C, *F, *A, *B, RELEASE Q, *D, *H, RELEASE M
2124 *A, *B or *C following RELEASE M
2126 *E, *F or *G following RELEASE Q
2261 RELEASE task
2303 RELEASE task
2349 These are used for such things as implementing ACQUIRE-class and RELEASE-class
2355 barriers, but might be used for implementing such things as RELEASE-class
2397 These implement ACQUIRE-class and RELEASE-class operations. These should be used in