NAME
__test_and_set_bit - Set a bit and return its old value
SYNOPSIS
bool __test_and_set_bit(long nr, volatile unsigned long * addr);
ARGUMENTS
nr
Bit to set
addr
Address to count from
DESCRIPTION
This 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.