Fast path for grace-period detection for read-copy update system
First Claim
1. A method for fast path detection by an updater of a grace period for deferring the destruction of a shared data element by said updater until pre-existing references to said shared data element are removed, comprising:
- checking for the presence of readers that are accessing said shared data element without using locks to exclude other updaters;
terminating grace period detection to initiate deferred destruction of said data element if there are no readers accessing said shared data element;
if there are readers accessing said shared data element, implementing a lock and checking again for the presence of said readers;
wherein said checking comprises consulting a pair of counters that readers manipulate when accessing said shared data element;
wherein said checking comprises summing said counters.
1 Assignment
0 Petitions
Accused Products
Abstract
A technique for implementing fast path grace period detection for deferring the destruction of a shared data element until pre-existing references to the data element are removed. A check is made, without using locks to exclude other updaters, for the presence of readers that are accessing the shared data elements. Grace period detection is terminated to initiate deferred destruction of the data element if there are no readers accessing the shared data element. If there are readers accessing the shared data element, a lock is implemented and another check is made for the presence of the readers.
-
Citations
14 Claims
-
1. A method for fast path detection by an updater of a grace period for deferring the destruction of a shared data element by said updater until pre-existing references to said shared data element are removed, comprising:
-
checking for the presence of readers that are accessing said shared data element without using locks to exclude other updaters; terminating grace period detection to initiate deferred destruction of said data element if there are no readers accessing said shared data element; if there are readers accessing said shared data element, implementing a lock and checking again for the presence of said readers; wherein said checking comprises consulting a pair of counters that readers manipulate when accessing said shared data element; wherein said checking comprises summing said counters. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A data processing system having one or more processors, a memory and a communication pathway between the one or more processors and the memory, said system being adapted to perform fast path detection by an updater of a grace period for deferring the destruction of a shared data element by said updater until pre-existing references to said shared data element are removed, comprising:
-
a grace period detection component adapted to check for the presence of readers that are accessing said shared data element without using locks to exclude other updaters; terminating grace period detection to initiate deferred destruction of said data element if there are no readers accessing said shared data element; if there are readers accessing said shared data element, implementing a lock and checking again for the presence of said readers; wherein said check comprises consulting a pair of counters that readers manipulate when accessing said shared data 3 element; wherein said check comprises summing said counters. - View Dependent Claims (7, 8, 9)
-
-
10. A computer program product, comprising:
-
one or more non-transitory machine-useable media; logic provided by said one or more media for programming a data processing platform to perform fast path detection by an updater of a grace period for deferring the destruction of a shared data element by said updater until pre-existing references to said shared data element are removed, as by; checking for the presence of readers that are accessing said shared data element without using locks to exclude other updaters; terminating grace period detection to initiate deferred destruction of said data element; if there are no readers accessing said shared data element; if there are readers accessing said shared data element, implementing a lock and checking again for the presence of said readers; wherein said checking comprises consulting a pair of counters that readers manipulate when accessing said shared data element; wherein said checking comprises summing said counters. - View Dependent Claims (11, 12, 13, 14)
-
Specification