Patent ID: 7529844

Claim:
A method for controlling a software lock to a shared memory resource that is acquirable by processors in a plurality of nodes of a multiprocessing system, the method comprising: a first processor of a first node of the plurality of nodes acquiring the software lock; the first processor selectively releasing the software lock in a local free state by writing to a local software lock that allows another processor within the first node to acquire the software lock but that prevents processors in a remote node of the plurality of nodes from obtaining the software lock in response to a fairness value being in a false state and in response to an indication that the another processor in the same node attempted to acquire the software lock; the first processor releasing the software lock in a free state that allows all processors within any of the plurality of nodes to attempt to acquire the software lock in response to the fairness value being in a false state and in response to an indication that no other processor in the same node attempted to acquire the software lock; and the first processor also releasing the software lock in the free state in response to the fairness value being in a true state regardless of an indication that the another processor in the same node attempted to acquire the software lock.