EFFICIENTLY BOOSTING PRIORITY OF READ-COPY UPDATE READERS WHILE RESOLVING RACES WITH EXITING AND UNLOCKING PROCESSES
First Claim
1. A method for efficiently boosting the priority of a preemptable data reader while resolving races between said priority boosting and said reader exiting a critical section or terminating in order to eliminate impediments to grace period processing that defers the destruction of one or more shared data elements that may be referenced by said reader until said reader is no longer capable of referencing said one or more data elements, comprising:
- determining that said reader is in a read-side critical section;
designating said reader as a candidate for priority boosting;
verifying that said reader has not exited its critical section or terminated;
boosting said reader'"'"'s priority to expedite said reader'"'"'s completion of said critical section; and
decreasing said reader'"'"'s priority following said reader'"'"'s completion of said critical section.
1 Assignment
0 Petitions
Accused Products
Abstract
A technique for efficiently boosting the priority of a preemptable data reader while resolving races between the priority boosting and the reader exiting a critical section or terminating in order to eliminate impediments to grace period processing that defers the destruction of one or more shared data elements that may be referenced by the reader until the reader is no longer capable of referencing the one or more data elements. A determination is made that the reader is in a read-side critical section and the reader is designated as a candidate for priority boosting. A verification is made that the reader has not exited its critical section or terminated, and the reader'"'"'s priority is boosted to expedite its completion of the critical section. The reader'"'"'s priority is decreased following its completion of the critical section.
-
Citations
20 Claims
-
1. A method for efficiently boosting the priority of a preemptable data reader while resolving races between said priority boosting and said reader exiting a critical section or terminating in order to eliminate impediments to grace period processing that defers the destruction of one or more shared data elements that may be referenced by said reader until said reader is no longer capable of referencing said one or more data elements, comprising:
-
determining that said reader is in a read-side critical section; designating said reader as a candidate for priority boosting; verifying that said reader has not exited its critical section or terminated; boosting said reader'"'"'s priority to expedite said reader'"'"'s completion of said critical section; and decreasing said reader'"'"'s priority following said reader'"'"'s completion of said critical section. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. 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 efficiently boost the priority of a preemptable data reader while resolving races between said priority boosting and said reader exiting a critical section or terminating in order to eliminate impediments to grace period processing that defers the destruction of one or more shared data elements that may be referenced by said reader until said reader is no longer capable of referencing said one or more data elements, said system further comprising:
-
a real-time preemptive scheduler adapted to preemptively schedule said reader for execution; critical section entry determining logic in said scheduler adapted to determine that a reader is in a read-side critical section; designating logic in said scheduler adapted to designate said reader as a candidate for priority boosting; a priority booster; critical section non-exit verification logic in said priority booster adapted to verify that said reader has not exited its critical section; priority boosting logic in said priority booster responsive to said determining logic and adapted to boost said reader'"'"'s priority to expedite said reader'"'"'s completion of said critical section; and priority decreasing logic in said priority booster adapted to decrease said reader'"'"'s priority following said reader'"'"'s completion of said critical section. - View Dependent Claims (9, 10, 11, 12, 13)
-
-
14. A computer program product, comprising:
-
one or more machine-useable media; programming logic provided by said one or more media for programming a data processing platform to efficiently boost the priority of a preemptable data reader while resolving races between said priority boosting and said reader exiting a critical section or terminating in order to eliminate impediments to grace period processing that defers the destruction of one or more shared data elements that may be referenced by said reader until said reader is no longer capable of referencing said one or more data elements, as by; determining that said reader has entered a read-side critical section; designating said reader as a candidate for priority boosting; verifying that said reader has not exited its critical section or terminated; boosting said reader'"'"'s priority to expedite said reader'"'"'s completion of said critical section; and decreasing said reader'"'"'s priority following said reader'"'"'s completion of said critical section. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification