Enabling real-time CPU-bound in-kernel workloads to run infinite loops while keeping RCU grace periods finite
First Claim
1. A method for enabling a real-time CPU-bound in-kernel workload to run an infinite loop while keeping read-copy update (RCU) grace periods finite, said method comprising:
- setting a per-CPU indicator to indicate that a CPU running the CPU-bound in-kernel workload has not reported an RCU quiescent state within a first defined time;
invoking from within the workload a function that causes an RCU quiescent state to be reported on behalf of the CPU in response to the per-CPU indicator being set;
rescheduling the CPU in response to the RCU quiescent state being not reported within a longer second defined time that is longer than the first defined time; and
wherein the function that causes the RCU quiescent state to be reported is periodically invoked by the workload at an interval that is shorter than the longer second defined time.
1 Assignment
0 Petitions
Accused Products
Abstract
A technique for enabling real-time CPU-bound in-kernel workloads to run infinite loops while keeping read-copy update (RCU) grace periods finite. In an embodiment, a per-CPU indicator may be set to indicate that a CPU running the CPU-bound in-kernel workload has not reported an RCU quiescent state within a defined time. A function may be invoked from within the workload that causes an RCU quiescent state to be reported on behalf of the CPU if the per-CPU indicator is set. If the RCU quiescent state is not reported within a longer defined time, the CPU may be rescheduled.
-
Citations
6 Claims
-
1. A method for enabling a real-time CPU-bound in-kernel workload to run an infinite loop while keeping read-copy update (RCU) grace periods finite, said method comprising:
-
setting a per-CPU indicator to indicate that a CPU running the CPU-bound in-kernel workload has not reported an RCU quiescent state within a first defined time; invoking from within the workload a function that causes an RCU quiescent state to be reported on behalf of the CPU in response to the per-CPU indicator being set; rescheduling the CPU in response to the RCU quiescent state being not reported within a longer second defined time that is longer than the first defined time; and wherein the function that causes the RCU quiescent state to be reported is periodically invoked by the workload at an interval that is shorter than the longer second defined time. - View Dependent Claims (2, 3, 4, 5, 6)
-
Specification