/linux-6.12.1/Documentation/RCU/Design/Memory-Ordering/ |
D | Tree-RCU-Memory-Ordering.rst | 139 | happen, even if CPU 1 is in an RCU extended quiescent state | 164 | the grace period won't expect quiescent states from them. Races | 259 #. `Self-Reported Quiescent States`_ 262 #. `Forcing Quiescent States`_ 404 Self-Reported Quiescent States 408 quiescent states (or as described in a later section, had quiescent 410 non-idle CPUs report their own quiescent states, as shown in the 415 This is for the last CPU to report a quiescent state, which signals the 416 end of the grace period. Earlier quiescent states would push up the 418 that is waiting for additional quiescent states. However, ordering is [all …]
|
/linux-6.12.1/kernel/rcu/ |
D | tree_plugin.h | 267 * Report the quiescent state for the expedited GP. This expedited in rcu_preempt_ctxt_queue() 270 * still in a quiescent state in any case.) in rcu_preempt_ctxt_queue() 281 * Record a preemptible-RCU quiescent state for the specified CPU. 283 * on the CPU is in a quiescent state: Instead, it means that the current 291 * Unlike non-preemptible-RCU, quiescent state reports for expedited 292 * grace periods are handled separately via deferred quiescent states 361 * globally. Either way, we can now note a quiescent state in rcu_note_context_switch() 472 * Report deferred quiescent states. The deferral time can 512 * quiescent state from this CPU. Note that requests from in rcu_preempt_deferred_qs_irqrestore() 555 * we aren't waiting on any CPUs, report the quiescent state. in rcu_preempt_deferred_qs_irqrestore() [all …]
|
D | tree_exp.h | 217 * Report expedited quiescent state for specified node. This is a 229 * Report expedited quiescent state for multiple CPUs, all covered by the 256 * Report expedited quiescent state for specified rcu_data (CPU). 398 /* IPI the remaining CPUs for expedited quiescent state. */ in __sync_rcu_exp_select_node_cpus() 434 /* Report quiescent states for those that went offline. */ in __sync_rcu_exp_select_node_cpus() 720 * next rcu_read_unlock() record the quiescent state up the 722 * report the quiescent state. 735 * report the quiescent state, otherwise defer. in rcu_exp_handler() 756 * so that the eventual quiescent state will be reported. in rcu_exp_handler() 758 * can have caused this quiescent state to already have been in rcu_exp_handler() [all …]
|
D | tree.c | 251 * rcu_softirq_qs - Provide a set of RCU quiescent states in softirq processing 253 * Mark a quiescent state for RCU, Tasks RCU, and Tasks Trace RCU. 287 * newly onlined CPU is no longer in an extended quiescent state. 289 * to the next non-quiescent value. 304 * indicates that RCU is in an extended quiescent state. 319 * extended quiescent state since @snap. Note that this doesn't check if it 342 * CPU remains within a single extended quiescent state. 348 // If not quiescent, force back to earlier extended quiescent state. in rcu_watching_zero_in_eqs() 355 // If still in the same extended quiescent state, we are good! in rcu_watching_zero_in_eqs() 361 * which is a quiescent state. This is called when the need for a [all …]
|
D | tree.h | 149 * Union to allow "aggregate OR" operation on the need for a quiescent 179 /* 1) quiescent-state and grace-period handling : */ 183 bool core_needs_qs; /* Core waits for quiescent state. */ 210 bool rcu_need_heavy_qs; /* GP old, so heavy quiescent state! */ 211 bool rcu_urgent_qs; /* GP old need light quiescent state. */ 300 /* quiescent-state forcing. */ 431 #define RCU_GP_FLAG_FQS 0x2 /* Need grace-period quiescent-state forcing. */ 440 #define RCU_GP_WAIT_FQS 5 /* Wait for force-quiescent-state time. */ 441 #define RCU_GP_DOING_FQS 6 /* Wait done for force-quiescent-state time. */
|
D | tiny.c | 51 /* Record an rcu quiescent state. */ 67 * quiescent state, and, if so, tell RCU about it. This function must 141 * Therefore, any legal call to synchronize_rcu() is a quiescent state, 169 * quiescent state.
|
D | tasks.h | 906 // Simple variant of RCU whose quiescent states are voluntary context 938 // Scans the holdout list, attempting to identify a quiescent state 939 // for each task on the list. If there is a quiescent state, the 979 /* Check for quiescent states since the pregp's synchronize_rcu() */ 999 * quiescent states. But CPU boot code performed by the idle task in rcu_tasks_is_holdout() 1000 * isn't a quiescent state. in rcu_tasks_is_holdout() 1007 /* Idle tasks on offline CPUs are RCU-tasks quiescent states. */ in rcu_tasks_is_holdout() 1491 // Scans the holdout list, attempting to identify a quiescent state 1492 // for each task on the list. If there is a quiescent state, the 1519 // The number of detections of task quiescent state relying on [all …]
|
/linux-6.12.1/Documentation/RCU/Design/Data-Structures/ |
D | Data-Structures.rst | 39 such as quiescent states, dyntick-idle transitions, 42 Quiescent states are recorded by the per-CPU ``rcu_data`` structures, 50 has passed through a quiescent state. 104 the last CPU to report a quiescent state into a given ``rcu_node`` 112 there are in the system, at most 64 quiescent-state reports per grace 158 grace-period state, and maintains state used to force quiescent 161 quiescent-state information from the leaves to the root, and also 173 #. ``rcu_data``: This per-CPU structure is the focus of quiescent-state 176 more-efficient propagation of quiescent states up the ``rcu_node`` 199 and maintains state used to force quiescent states when grace periods [all …]
|
/linux-6.12.1/Documentation/RCU/Design/Expedited-Grace-Periods/ |
D | Expedited-Grace-Periods.rst | 22 has not yet provided a quiescent state for the current expedited 29 a faster quiescent state where possible, and triggering a report 30 of that quiescent state. 31 As always for RCU, once everything has spent some time in a quiescent 53 in quiescent states. 61 If not, the handler can immediately report a quiescent state. 63 invocation will provide the needed quiescent-state report. 74 The CPU will report a quiescent state just after enqueuing the task because 123 quiescent states. However, because the ``rcu_read_lock_sched()`` and 129 then ``rcu_exp_handler()`` reports the quiescent state. [all …]
|
/linux-6.12.1/kernel/ |
D | context_tracking.c | 16 * RCU extended quiescent state bits imported from kernel/rcu/tree.c 76 * Record entry into an extended quiescent state. This is only to be 77 * called when not already in an extended quiescent state, that is, 92 // RCU is no longer watching. Better be in extended quiescent state! in ct_kernel_exit_state() 97 * Record exit from an extended quiescent state. This is only to be 98 * called from an extended quiescent state, that is, RCU is not watching 111 // RCU is now watching. Better not be in an extended quiescent state! in ct_kernel_enter_state() 117 * Enter an RCU extended quiescent state, which can be either the 156 * Exit an RCU extended quiescent state, which can be either the 466 * because this function sets RCU in extended quiescent state. [all …]
|
/linux-6.12.1/drivers/md/dm-vdo/ |
D | admin-state.h | 20 /* The next state will be quiescent */ 22 /* The VDO is quiescent, there should be no I/O */ 23 bool quiescent; member 136 return vdo_get_admin_state_code(state)->quiescent; in vdo_is_state_quiescent()
|
D | admin-state.c | 70 .quiescent = true, 98 .quiescent = true, 123 .quiescent = true, 135 .quiescent = true, 331 if (code->quiescent) { in vdo_start_draining() 467 * quiescent.
|
/linux-6.12.1/drivers/scsi/megaraid/ |
D | mega_common.h | 102 * @quiescent : driver is quiescent for now. 142 * quiescent flag should be set by the driver if it is not accepting more 156 uint8_t quiescent; member
|
D | megaraid_ioctl.h | 258 * @quiescent : flag to indicate if ioctl can be issued to this adp 284 uint32_t quiescent; member
|
/linux-6.12.1/Documentation/networking/ |
D | ipvs-sysctl.rst | 175 persistent templates when the destination server is quiescent. 177 quiescent by setting its weight to 0 and it is desired that 180 connections are allowed to quiescent destination servers. 184 connection and the destination server is quiescent.
|
/linux-6.12.1/include/trace/events/ |
D | rcu.h | 56 * "cpuqs": CPU passes through a quiescent state. 62 * "fqswait": GP kthread waiting until time to force quiescent states. 63 * "fqsstart": GP kthread starts forcing quiescent states. 64 * "fqsend": GP kthread done forcing quiescent states. 361 * Tracepoint for quiescent-state-reporting events. These are 363 * mask of quiescent lower-level entities, the rcu_node structure level, 405 * Tracepoint for quiescent states detected by force_quiescent_state(). 407 * that was blocked by the CPU, the CPU itself, and the type of quiescent
|
/linux-6.12.1/kernel/time/ |
D | Kconfig | 161 tracking to enter/exit RCU extended quiescent states. 178 userspace extended quiescent state and tickless cputime
|
/linux-6.12.1/Documentation/admin-guide/cgroup-v1/ |
D | freezer-subsystem.rst | 16 quiescent state. Once the tasks are quiescent another task can
|
/linux-6.12.1/drivers/usb/host/ |
D | uhci-platform.c | 32 /* Reset if the controller isn't already safely quiescent. */ in uhci_platform_init() 164 /* Make sure the controller is quiescent and that we're not using it
|
D | uhci-grlib.c | 55 /* Reset if the controller isn't already safely quiescent. */ in uhci_grlib_init() 163 /* Make sure the controller is quiescent and that we're not using it
|
/linux-6.12.1/include/linux/ |
D | rcupdate.h | 186 #define TRC_NEED_QS 0x1 // Task needs a quiescent state. 187 #define TRC_NEED_QS_CHECKED 0x2 // Task has been checked for needing quiescent state. 246 * cond_resched_tasks_rcu_qs - Report potential quiescent states to RCU 249 * report potential quiescent states to RCU-tasks even if the cond_resched() 259 * rcu_softirq_qs_periodic - Report RCU and RCU-Tasks quiescent states 266 * provide both RCU and RCU-Tasks quiescent states. Note that this macro 274 * have more chance to invoke schedule() calls and provide necessary quiescent 276 * effect because cond_resched() does not provide RCU-Tasks quiescent states. 871 * spinlocks, courtesy of the quiescent-state deferral that is carried
|
/linux-6.12.1/Documentation/devicetree/bindings/regulator/ |
D | sprd,sc2731-regulator.yaml | 15 The SC2731 integrates low-voltage and low quiescent current DCDC/LDO.
|
/linux-6.12.1/Documentation/virt/kvm/devices/ |
D | arm-vgic-its.rst | 205 - The ITS is not enabled and quiescent 206 GITS_CTLR.Enabled = 0 .Quiescent=1
|
/linux-6.12.1/Documentation/RCU/ |
D | stallwarn.rst | 273 The "fqs=" shows the number of force-quiescent-state idle/offline 297 If all CPUs and tasks have passed through quiescent states, but the 306 of jiffies between force-quiescent-state scans, in this case three, 319 through the required quiescent states. The "g" number shows the current
|
/linux-6.12.1/drivers/bus/ |
D | arm-cci.c | 241 * cause the processor to be put in a quiescent state in cci_port_control() 259 * in the cluster ie all other CPUs are quiescent in a low power state. 286 * other CPUs are quiescent in a low power state or waiting for this CPU
|