×

TIERED LOCKING OF RESOURCES

  • US 20140115213A1
  • Filed: 03/14/2013
  • Published: 04/24/2014
  • Est. Priority Date: 10/19/2012
  • Status: Active Grant
First Claim
Patent Images

1. A method comprising:

  • receiving, from a first thread, a lock command that specifies a resource;

    if tier status in a nodal lock indicates the nodal lock is currently owned on global data, adding an identifier of the first thread to a nodal waiters list in the nodal lock, and if a lock wait indicator in the first thread indicates that the first thread owns the nodal lock on the global data, waiting until a next tier wait indicator in the nodal lock indicates that any thread owns a global lock on the resource and then returning a successful completion status for the lock command to the first thread;

    if the tier status indicates no thread holds the nodal lock on the global data, changing the tier status to indicate the nodal lock is owned, and if a global waiters and holder list in the global data is empty, adding an identifier of a first node at which the first thread executes to the global waiters and holder list, and returning the successful completion status for the lock command to the first thread;

    if the tier status indicates no thread holds the nodal lock on the global data, changing the tier status to indicate the nodal lock is owned, and if the identifier of the first node at which the first thread executes is in the global waiters and holder list, adding the identifier of the first node at which the first thread executes to a global pending waiters list in the global data, and returning the successful completion status for the lock command to the first thread; and

    if the tier status indicates no thread holds the nodal lock on the global data, changing the tier status to indicate the nodal lock is owned, and if the identifier of the first node at which the first thread executes is not in the global waiters and holder list, adding the identifier of the first node at which the first thread executes to the global waiters and holder list, and returning the successful completion status for the lock command to the first thread.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×