Use of rollback RCU with read-side modifications to RCU-protected data structures
First Claim
Patent Images
1. A program storage device, comprising:
- program instructions executable by a processing device to perform operations for performing a return/rollback process for read copy update (RCU) protected data structures, the operations comprising;
determining a thread has been preempted and an exception signal has followed preemption allowing the process to resume;
checking a user-level state of the thread before resuming the process; and
restarting the RCU read-side critical section of the thread when user-level state indicates restart, else returning to a point of preemption, resuming execution and suspending checking of the user-level state when the user-level state indicates a rollback.
1 Assignment
0 Petitions
Accused Products
Abstract
A method, apparatus and program storage device for performing a return/rollback process for RCU-protected data structures is provided that includes checking a user-level state of a preempted thread having a RCU read-side critical section, and executing the critical section of the thread after preemption when the user-level state of the thread indicates execution, otherwise returning to a point of preemption, resuming execution of the thread and disabling checking the user-level state when the user-level state of the thread indicates return.
-
Citations
21 Claims
-
1. A program storage device, comprising:
-
program instructions executable by a processing device to perform operations for performing a return/rollback process for read copy update (RCU) protected data structures, the operations comprising;
determining a thread has been preempted and an exception signal has followed preemption allowing the process to resume;
checking a user-level state of the thread before resuming the process; and
restarting the RCU read-side critical section of the thread when user-level state indicates restart, else returning to a point of preemption, resuming execution and suspending checking of the user-level state when the user-level state indicates a rollback. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. An apparatus for performing a rollback process for RCU-protected data structures, comprising:
-
a kernel including code for generating a signal enabling resumption of a thread after preemption from executing a critical section; and
an exception handler for checking a user-level state on the thread before resumption of the thread, and for restarting a critical section when the user-level state of the thread indicates restart, else for returning to a point of preemption and suspending checking the user-level state when the user-level state of the thread indicates returning to the point of preemption. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. A method for performing a return/rollback process for RCU-protected data structures, comprising:
-
checking a user-level state of a preempted thread having a RCU read-side critical section; and
executing the critical section of the thread after preemption when the user-level state of the thread indicates execution, else returning to a point of preemption, resuming execution of the thread and disabling checking the user-level state when the user-level state of the thread indicates return.
-
-
19. A system for performing a return/rollback process for RCU-protected data structures, comprising:
-
means for determining a thread has been preempted and an exception signal has followed preemption allowing the thread to resume;
means for checking a user-level state of the thread; and
means for restarting the RCU read-side critical section of the thread when user-level state indicates restart, else returning to a point of preemption, resuming execution and suspending checking of the user-level state when the user-level state indicates a rollback.
-
-
20. An apparatus for performing a return/rollback process for RCU-protected data structures, comprising:
-
means for providing a kernel including code for generating a signal enabling resumption of a thread after preemption from executing a critical section; and
means for providing an exception handler for checking a user-level state on the thread before resumption, and for restarting a critical section when the user-level state of the thread indicates restart, else for returning to the point of preemption and suspending checking the user-level state when the user-level state of the thread indicates returning to the point of preemption.
-
-
21. A system for performing a return/rollback process for RCU-protected data structures, comprising:
-
means for checking a user-level state of a preempted thread having a RCU read-side critical section; and
means for executing the critical section of the thread after preemption when the user-level state of the thread indicates execution, else returning to a point of preemption, resuming execution of the thread and disabling checking the user-level state when the user-level state of the thread indicates return.
-
Specification