IP Library Granted Patent US 8,595,567
Granted Patent B2
US 8,595,567 · App. 12/969,786 · Granted Nov 26, 2013

Method and system for spinlock fault recovery

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,595,567
App. No.
12/969,786
Granted
Nov 26, 2013
Kind
B2
Abstract

A method including requesting access to a resource governed by a spinlock; determining an allocation of the resource to a further requester; determining an expiration of a time limit for the spinlock, if the resource is allocated to the further requester; and initiating a fault recovery, if the time limit is expired.

Claims (53)

1. A method, comprising:

requesting access to a resource governed by a spinlock;

determining an allocation of the resource to a further requester;

determining an expiration of a time limit for the spinlock, if the resource is allocated to the further requester; and

initiating a fault recovery, if the time limit is expired, the initiating of the fault recovery comprising changing a status of the spinlock from a TAKEN status to a FAULTED status.

2. The method of claim 1 , further comprising:

accessing the resource, if the resource is unallocated.

3. The method of claim 2 , wherein the accessing of the resource comprises changing a status of the spinlock from a FREE status to the TAKEN status.

4. The method of claim 1 , wherein the determining of the allocation of the resource comprises determining a status of the spinlock.

5. The method of claim 4 , wherein the resource is determined to be allocated to the further requester if the status of the spinlock is the TAKEN status, and wherein the resource is determined not to be allocated to the further requester if the status of the spinlock is a FREE status.

6. A method, comprising:

requesting access to a resource governed by a spinlock;

determining an allocation of the resource to a further requester;

determining an expiration of a time limit for the spinlock if the resource is allocated to the further requester;

initiating a fault recovery, if the time limit is expired; and

returning an error, if a status of the spinlock is a FAULTED status.

7. A system, comprising:

a resource;

a spinlock governing access to the resource; and

a plurality of takers for accessing the resource,

wherein, when a first taker requests access to the resource, the first taker:

determines whether a second taker is using the resource;

determines, if the second taker is using the resource, whether a time limit relating to the spinlock has been exceeded; and

initiates a fault recovery, if the time limit has been exceeded, the initiating of the fault recovery comprising changing a status of the spinlock from a TAKEN status to a FAULTED status.

8. The system of claim 7 , wherein the first taker accesses the resource, if the second taker is not using the resource.

9. The system of claim 8 , wherein the accessing of the resource comprises changing a status of the spinlock from a FREE status to the TAKEN status.

10. The system of claim 7 , wherein the determining of whether the second taker is using the resource comprises determining a status of the spinlock.

11. The system of claim 10 , wherein the first taker determines that the second taker is using the resource if the status of the spinlock is the TAKEN status, and wherein the first taker determines that the second taker is not using the resource if the status of the spinlock is a FREE status.

12. A system, comprising:

a resource;

a spinlock governing access to the resource; and

a plurality of takers for accessing the resource,

wherein, when a first taker requests access to the resource, the first taker:

determines whether a second taker is using the resource;

determines, if the second taker is using the resource, whether a time limit relating to the spinlock has been exceeded;

initiates a fault recovery, if the time limit has been exceeded; and

returns an error if a status of the spinlock is a FAULTED status.

13. A non-transitory computer-readable storage medium storing a set of instructions executable by a processor, the set of instructions, when executed, causing the processor to:

request access to a resource governed by a spinlock;

determine an allocation of the resource to a further requester;

determine an expiration of a time limit for the spinlock, if the resource is allocated to the further requester; and

initiate a fault recovery, if the time limit is expired, the initiating of the fault recovery comprising changing a status of the spinlock from a TAKEN status to a FAULTED status.

14. The non-transitory computer-readable storage medium of claim 13 , wherein the set of instructions is further cause the processor to:

access the resource, if the resource is unallocated.

15. The non-transitory computer-readable storage medium of claim 14 , wherein the accessing of the resource comprises changing a status of the spinlock from a FREE status to the TAKEN status.

16. The non-transitory computer-readable storage medium of claim 13 , wherein the determining of the allocation of the resource comprises determining a status of the spinlock.

17. The non-transitory computer-readable storage medium of claim 16 , wherein the resource is determined to be allocated to the further requester if the status of the spinlock is the TAKEN status, and wherein the resource is determined not to be allocated to the further requester if the status of the spinlock is a FREE status.

18. A non-transitory computer-readable storage medium storing a set of instructions executable by a processor, the set of instructions, when executed, causing the processor to:

request access to a resource governed by a spinlock;

determine an allocation of the resource to a further requester;

determine an expiration of a time limit for the spinlock, if the resource is allocated to the further requester;

initiate a fault recovery, if the time limit is expired; and

return an error, if a status of the spinlock is FAULTED.

Assignments (3)
RELEASE OF SECURITY INTEREST Recorded Dec 28, 2022
From: GUGGENHEIM CORPORATE FUNDING, LLC
To: WIND RIVER SYSTEMS, INC.
Reel/Frame 062239/0590 →
PATENT SECURITY AGREEMENT Recorded Dec 24, 2018
From: WIND RIVER SYSTEMS, INC.
To: GUGGENHEIM CORPORATE FUNDING, LLC
Reel/Frame 049148/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 20, 2010
From: RICHARDSON, RAYMOND; STULTS, GREGORY
To: WIND RIVER SYSTEMS, INC.
Reel/Frame 025623/0317 →