Eliminating synchronous grace period detection for non-preemptible read-copy update on uniprocessor systems
First Claim
1. A method for use in a data processing system, comprising:
- performing an update operation on a data element that is shared with one or more non-preemptible readers of said data element;
issuing a call to a synchronous grace period detection method;
said synchronous grace period detection method performing synchronous grace period detection and returning from said call if said data processing system implements a multi-processor environment at a time of said call;
said synchronous grace period detection determining an end of a grace period in which said one or more non-preemptible readers have passed through a quiescent state and cannot be maintaining references to a pre-update view of said shared data element; and
said synchronous grace period detection method returning from said call without performing grace period detection if said data processing system implements a uniprocessor environment at the time of said call.
1 Assignment
0 Petitions
Accused Products
Abstract
A technique for optimizing grace period detection in a uniprocessor environment. An update operation is performed on a data element that is shared with non-preemptible readers of the data element. A call is issued to a synchronous grace period detection method. The synchronous grace period detection method performs synchronous grace period detection and returns from the call if the data processing system implements a multi-processor environment at the time of the call. The synchronous grace period detection determines the end of a grace period in which the readers have passed through a quiescent state and cannot be maintaining references to the pre-update view of the shared data. The synchronous grace period detection method returns from the call without performing grace period detection if the data processing system implements a uniprocessor environment at the time of the call.
-
Citations
19 Claims
-
1. A method for use in a data processing system, comprising:
-
performing an update operation on a data element that is shared with one or more non-preemptible readers of said data element; issuing a call to a synchronous grace period detection method; said synchronous grace period detection method performing synchronous grace period detection and returning from said call if said data processing system implements a multi-processor environment at a time of said call; said synchronous grace period detection determining an end of a grace period in which said one or more non-preemptible readers have passed through a quiescent state and cannot be maintaining references to a pre-update view of said shared data element; and said synchronous grace period detection method returning from said call without performing grace period detection if said data processing system implements a uniprocessor environment at the time of said call. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A data processing system, comprising:
-
one or more processors; a memory coupled to said one or more processors, said memory including a computer useable medium tangibly embodying at least one program of instructions executable by said one or more processors to perform operations for optimizing grace period detection following a data element update operation that affects non-preemptible data readers, comprising; performing an update operation on a data element that is shared with one or more non-preemptible readers of said data element; issuing a call to a synchronous grace period detection method; said synchronous grace period detection method performing synchronous grace period detection and returning from said call if said data processing system implements a multi-processor environment at a time of said call; said synchronous grace period detection determining an end of a grace period in which said one or more non-preemptible readers have passed through a quiescent state and cannot be maintaining references to a pre-update view of said shared data element; and said synchronous grace period detection method returning from said call without performing grace period detection if said data processing system implements a uniprocessor environment at the time of said call. - View Dependent Claims (7, 8, 9, 10, 11)
-
-
12. A computer program product, comprising:
-
one or more machine-readable storage media; means provided by said one or more media for programming a data processing platform to optimize grace period detection following a data element update operation that affects non-preemptible data readers, as by; performing an update operation on a data element that is shared with one or more non-preemptible readers of said data element; issuing a call to a synchronous grace period detection method; said synchronous grace period detection method performing synchronous grace period detection and returning from said call if said data processing platform implements a multi-processor environment at a time of said call; said synchronous grace period detection determining an end of a grace period in which said one or more non-preemptible readers have passed through a quiescent state and cannot be maintaining references to a pre-update view of said shared data element; and said synchronous grace period detection method returning from said call without performing grace period detection if said data processing platform implements a uniprocessor environment at the time of said call. - View Dependent Claims (13, 14, 15, 16, 17)
-
-
18. A method for optimizing grace period detection following a data element update operation in a data processing system having non-preemptible readers, comprising:
-
performing an update operation on a data element that is shared with one or more non-preemptible readers of said data element; issuing a call to a synchronous grace period detection method; said synchronous grace period detection method performing synchronous grace period detection and returning from said call if said data processing system implements a multi-processor environment at a time of said call; said synchronous grace period detection determining an end of a grace period in which said one or more non-preemptible readers have passed through a quiescent state and cannot be maintaining references to said pre-update view of said shared data; said synchronous grace period detection method returning from said call without performing grace period detection if said data processing system implements a uniprocessor environment at the time of said call; and said uniprocessor environment being a multi-processor system having not more than one processor in an operational mode executing any of said one or more non-preemptible readers. - View Dependent Claims (19)
-
Specification