Query: __test_and_clear_bit
OS: centos
Section: 9
Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar
__TEST_AND_CLEAR_BIT(9) Basic C Library Functions __TEST_AND_CLEAR_BIT(9)NAME__test_and_clear_bit - Clear a bit and return its old valueSYNOPSISint __test_and_clear_bit(int nr, volatile unsigned long * addr);ARGUMENTSnr Bit to clear addr Address to count fromDESCRIPTIONThis operation is non-atomic and can be reordered. If two examples of this operation race, one can appear to succeed but actually fail. You must protect multiple accesses with a lock.NOTEthe operation is performed atomically with respect to the local CPU, but not other CPUs. Portable code should not rely on this behaviour. KVM relies on this behaviour on x86 for modifying memory that is alsoACCESSED FROM A HYPERVISOR ON THE SAME CPU IF RUNNING IN A VMdon't change this without also updating arch/x86/kernel/kvm.cCOPYRIGHTKernel Hackers Manual 3.10 June 2014 __TEST_AND_CLEAR_BIT(9)