Back to results
US 11,113,178 B2Granted
Exposing and reproducing software race conditions
AssigneeEMC IP Holding Company LLC
InventorMatthew Bryan
Life of this patent
Estimating the term…
Abstract
Exposing and reproduction of race conditions is presented herein. A method identifies a synchronization mechanism of a grouping of operating system synchronization mechanisms; based on a tunable probability value, adjusts a race window associated with the synchronization mechanism; and based on the race window, raises a likelihood of revealing a race condition.
Claims20
A system, comprising:
- a processor;
- and
- a memory that stores executable instructions that, when executed by the processor, facilitate performance of operations comprising:
- identifying a synchronization mechanism of a grouping of operating system synchronization mechanisms;
- based on a tunable probability value, representing a probability of a conflict occurring between a first execution of the synchronization mechanism and a second execution of the synchronization mechanism, and a semaphore used to reduce recursion associated with the synchronization mechanism, increasing a duration of a race window associated with the synchronization mechanism, wherein the race window is increased by a delay period, wherein the race window operates in collaboration with the synchronization mechanism, wherein the tunable probability value further represents a first time duration prior to the first execution of the synchronization mechanism and a second time duration prior to the second execution of the synchronization mechanism, and wherein the first time duration differs from the second time duration;
- and
- based on the race window having been increased and the delay period, increasing a likelihood of revealing a race condition.
4 more elements
A method comprising:
- identifying, by a device comprising a processor, a synchronization mechanism of a grouping of operating system synchronization mechanisms;
- based on a tunable probability value, representative of a probability of a conflict occurring between a first execution of the synchronization mechanism and a second execution of the synchronization mechanism, and use of a bit flag to reduce recursion associated with execution of the synchronization mechanism, increasing, by the device, a duration of a race window associated with the synchronization mechanism, wherein the race window is increased by a delay period, wherein the race window operates in collaboration with the synchronization mechanism, wherein the tunable probability value further represents a time value that differs between the first execution of the synchronization mechanism at a first code point in the recursion and the second execution of the synchronization mechanism at a second code point in the recursion;
- and
- based on the race window having been increased and the delay period, increasing, by the device, a likelihood of exposing a race condition.
1 more element
A non-transitory machine-readable medium comprising instructions that, in response to execution, cause a system comprising a processor to perform operations comprising:
- identifying a synchronization mechanism of a grouping of operating system synchronization mechanisms;
- based on a tunable probability value, representing a probability of a conflict occurring between a first execution of the synchronization mechanism and a second execution of the synchronization mechanism, and a semaphore used to reduce recursion associated with the synchronization mechanism, increasing a duration of a race window associated with the synchronization mechanism, wherein the duration of the race window is increased by a delay period, wherein the race window operates in collaboration with the synchronization mechanism, wherein the tunable probability value further represents a time value that differs between the first execution of the synchronization mechanism at a first code point in the recursion and the second execution of the synchronization mechanism at a second code point in the recursion;
- and
- based on the race window having been increased and the delay period, raising a likelihood of revealing a race condition.
1 more element
Dependencies are inferred from the claim text.