aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/rcu/tree.h
AgeCommit message (Expand)AuthorFilesLines
2024-05-01Merge branches 'fixes.2024.04.15a', 'misc.2024.04.12a', 'rcu-sync-normal-impr...Uladzislau Rezki (Sony)1-0/+20
2024-04-15rcu: Support direct wake-up of synchronize_rcu() usersUladzislau Rezki (Sony)1-0/+6
2024-04-15rcu: Make hotplug operations track GP state, not flagsPaul E. McKenney1-2/+2
2024-04-11rcu: Add data structures for synchronize_rcu()Uladzislau Rezki (Sony)1-0/+14
2024-02-26Merge branches 'rcu-doc.2024.02.14a', 'rcu-nocb.2024.02.14a', 'rcu-exp.2024.0...Boqun Feng1-11/+9
2024-02-14rcu/exp: Remove rcu_par_gp_wqFrederic Weisbecker1-5/+1
2024-02-14rcu/exp: Make parallel exp gp kworker per rcu nodeFrederic Weisbecker1-0/+3
2024-02-14rcu: s/boost_kthread_mutex/kthread_mutexFrederic Weisbecker1-1/+1
2024-02-14rcu/nocb: Re-arrange call_rcu() NOCB specific codeFrederic Weisbecker1-5/+4
2023-09-11rcu/tree: Defer setting of jiffies during stall resetJoel Fernandes (Google)1-0/+4
2023-01-05rcu: Add RCU stall diagnosis informationZhen Lei1-0/+19
2022-11-29rcu: Make call_rcu() lazy to save powerJoel Fernandes (Google)1-4/+7
2022-10-18rcu: Fix missing nocb gp wake on rcu_barrier()Frederic Weisbecker1-0/+1
2022-07-21Merge branch 'ctxt.2022.07.05a' into HEADPaul E. McKenney1-8/+0
2022-07-21Merge branches 'doc.2022.06.21a', 'fixes.2022.07.19a', 'nocb.2022.07.19a', 'p...Paul E. McKenney1-1/+12
2022-07-21rcu: Add polled expedited grace-period primitivesPaul E. McKenney1-0/+7
2022-07-21rcu: Make polled grace-period API account for expedited grace periodsPaul E. McKenney1-0/+1
2022-07-21rcu: Switch polled grace-period APIs to ->gp_seq_polledPaul E. McKenney1-0/+2
2022-07-19rcu: Add nocb_cb_kthread check to rcu_is_callbacks_kthread()Zqiang1-1/+1
2022-07-19rcu/nocb: Add/del rdp to iterate from rcuog itselfFrederic Weisbecker1-0/+1
2022-07-05rcu/context-tracking: Move RCU-dynticks internal functions to context_trackingFrederic Weisbecker1-5/+0
2022-07-05rcu/context_tracking: Move dynticks_nmi_nesting to context trackingFrederic Weisbecker1-1/+0
2022-07-05rcu/context_tracking: Move dynticks_nesting to context trackingFrederic Weisbecker1-1/+0
2022-07-05rcu/context_tracking: Move dynticks counter to context trackingFrederic Weisbecker1-1/+0
2022-05-11Merge branch 'exp.2022.05.11a' into HEADPaul E. McKenney1-0/+5
2022-05-11rcu: Move expedited grace period (GP) work to RT kthread_workerKalesh Singh1-0/+5
2022-05-03Merge branches 'docs.2022.04.20a', 'fixes.2022.04.20a', 'nocb.2022.04.11b', '...Paul E. McKenney1-2/+2
2022-04-11rcu: Check for jiffies going backwardsPaul E. McKenney1-0/+1
2022-04-11rcu/nocb: Initialize nocb kthreads only for boot CPU prior SMP initializationFrederic Weisbecker1-1/+0
2022-04-11rcu: Initialize boost kthread only for boot node prior SMP initializationFrederic Weisbecker1-1/+0
2022-04-11rcu/nocb: Move rcu_nocb_is_setup to rcu_stateFrederic Weisbecker1-0/+1
2022-02-24Merge branches 'exp.2022.02.24a', 'fixes.2022.02.14a', 'rcu_barrier.2022.02.0...Paul E. McKenney1-6/+12
2022-02-14rcu: Add mutex for rcu boost kthread spawning and affinity settingDavid Woodhouse1-0/+3
2022-02-08rcu: Make rcu_barrier() no longer block CPU-hotplug operationsPaul E. McKenney1-1/+2
2022-02-08rcu: Rework rcu_barrier() and callback-migration logicPaul E. McKenney1-0/+2
2022-02-08rcu: Kill rnp->ofl_seq and use only rcu_state.ofl_lock for exclusionDavid Woodhouse1-3/+1
2022-02-01rcu: Add per-CPU rcuc task dumps to RCU CPU stall warningsZqiang1-0/+1
2022-02-01rcu: Remove unused rcu_state.boostNeeraj Upadhyay1-3/+2
2022-02-01rcu/nocb: Handle concurrent nocb kthreads creationNeeraj Upadhyay1-0/+2
2021-12-09Merge branches 'doc.2021.11.30c', 'exp.2021.12.07a', 'fastnohz.2021.11.30c', ...Paul E. McKenney1-16/+15
2021-12-09rcu/nocb: Remove rcu_node structure from nocb list when de-offloadedFrederic Weisbecker1-2/+5
2021-12-07rcu/nocb: Make local rcu_nocb_lock_irqsave() safe against concurrent deoffloa...Frederic Weisbecker1-6/+10
2021-12-07rcu: Remove rcu_data.exp_deferred_qs and convert to rcu_data.cpu no_qs.b.expFrederic Weisbecker1-1/+0
2021-11-30rcu: Remove the RCU_FAST_NO_HZ Kconfig optionPaul E. McKenney1-7/+0
2021-05-18Merge branches 'bitmaprange.2021.05.10c', 'doc.2021.05.10c', 'fixes.2021.05.1...Paul E. McKenney1-7/+7
2021-05-12rcu: Fix various typos in commentsIngo Molnar1-1/+1
2021-05-12rcu/nocb: Unify timersFrederic Weisbecker1-3/+3
2021-05-12rcu/nocb: Prepare for fine-grained deferred wakeupFrederic Weisbecker1-1/+1
2021-05-10rcu: Make RCU priority boosting work on single-CPU rcu_node structuresPaul E. McKenney1-1/+1
2021-05-10rcu: Add quiescent states and boost states to show_rcu_gp_kthreads() outputPaul E. McKenney1-0/+1
2021-05-10rcu/nocb: Use the rcuog CPU's ->nocb_timerFrederic Weisbecker1-1/+0
2021-02-21Merge tag 'sched-core-2021-02-17' of git://git.kernel.org/pub/scm/linux/kerne...Linus Torvalds1-1/+1
2021-02-17rcu/nocb: Trigger self-IPI on late deferred wake up before user resumeFrederic Weisbecker1-1/+1
2021-01-06rcu/nocb: Shutdown nocb timer on de-offloadingFrederic Weisbecker1-0/+1
2021-01-06rcu/nocb: De-offloading CB kthreadFrederic Weisbecker1-0/+1
2020-11-19rcu: Prevent lockdep-RCU splats on lock acquisition/releasePaul E. McKenney1-0/+1
2020-11-19rcu: Fix single-CPU check in rcu_blocking_is_gp()Neeraj Upadhyay1-0/+1
2020-09-03Merge branch 'strictgp.2020.08.24a' into HEADPaul E. McKenney1-0/+1
2020-08-24rcu: Execute RCU reader shortly after rcu_core for strict GPsPaul E. McKenney1-0/+1
2020-08-24rcu: Move rcu_cpu_started per-CPU variable to rcu_dataPaul E. McKenney1-0/+1
2020-06-29rcu: grpnum just records group numberWei Yang1-1/+1
2020-06-29rcu: grplo/grphi just records CPU numberWei Yang1-2/+2
2020-06-29rcu: gp_max is protected by root rcu_node's lockWei Yang1-2/+2
2020-06-29rcu: Update comment from rsp->rcu_gp_seq to rsp->gp_seqLihao Liang1-2/+2
2020-06-29rcu: Add callbacks-invoked countersPaul E. McKenney1-0/+1
2020-05-07Merge branches 'fixes.2020.04.27a', 'kfree_rcu.2020.04.27a', 'rcu-tasks.2020....Paul E. McKenney1-0/+2
2020-04-27rcu-tasks: Avoid IPIing userspace/idle tasks if kernel is so builtPaul E. McKenney1-0/+2
2020-04-27rcu: Expedite first two FQS scans under callback-overload conditionsPaul E. McKenney1-0/+1
2020-02-20rcu: React to callback overload by aggressively seeking quiescent statesPaul E. McKenney1-0/+4
2020-01-24Merge branches 'doc.2019.12.10a', 'exp.2019.12.09a', 'fixes.2020.01.24a', 'kf...Paul E. McKenney1-17/+1
2020-01-24rcu: Remove unused stop-machine #includePaul E. McKenney1-1/+0
2020-01-24rcu: Move gp_state_names[] and gp_state_getname() to tree_stall.hLai Jiangshan1-12/+0
2020-01-24rcu: Remove the declaration of call_rcu() in tree.hLai Jiangshan1-1/+0
2020-01-24rcu: Remove kfree_rcu() special casing and lazy-callback handlingJoel Fernandes (Google)1-1/+0
2019-12-12rcu: Mark non-global functions and variables as staticPaul E. McKenney1-2/+0
2019-12-09rcu: Enable tick for nohz_full CPUs slow to provide expedited QSPaul E. McKenney1-0/+1
2019-10-28rcu: Force tick on for nohz_full CPUs not reaching quiescent statesPaul E. McKenney1-0/+1
2019-08-13rcu/nocb: Print no-CBs diagnostics when rcutorture writer unduly delayedPaul E. McKenney1-1/+6
2019-08-13rcu/nocb: Add bypass callback queueingPaul E. McKenney1-10/+18
2019-08-13rcu/nocb: Reduce ->nocb_lock contention with separate ->nocb_gp_lockPaul E. McKenney1-1/+2
2019-08-13rcu/nocb: Avoid ->nocb_lock capture by corresponding CPUPaul E. McKenney1-1/+17
2019-08-13rcu/nocb: Remove obsolete nocb_gp_head and nocb_gp_tail fieldsPaul E. McKenney1-4/+2
2019-08-13rcu/nocb: Remove obsolete nocb_cb_tail and nocb_cb_head fieldsPaul E. McKenney1-2/+0
2019-08-13rcu/nocb: Remove obsolete nocb_q_count and nocb_q_count_lazy fieldsPaul E. McKenney1-3/+0
2019-08-13rcu/nocb: Remove obsolete nocb_head and nocb_tail fieldsPaul E. McKenney1-3/+0
2019-08-13rcu/nocb: Use rcu_segcblist for no-CBs CPUsPaul E. McKenney1-6/+8
2019-08-13rcu/nocb: Leave ->cblist enabled for no-CBs CPUsPaul E. McKenney1-1/+0
2019-08-13rcu/nocb: Provide separate no-CBs grace-period kthreadsPaul E. McKenney1-2/+4
2019-08-13rcu/nocb: Update comments to prepare for forward-progress workPaul E. McKenney1-4/+4
2019-08-13rcu/nocb: Rename rcu_data fields to prepare for forward-progress workPaul E. McKenney1-7/+7
2019-05-28rcu: Rename rcu_data's ->deferred_qs to ->exp_deferred_qsPaul E. McKenney1-1/+1
2019-05-25rcu: Use irq_work to get scheduler's attention in clean contextPaul E. McKenney1-0/+2
2019-05-25rcu: Enable elimination of Tree-RCU softirq processingSebastian Andrzej Siewior1-1/+1
2019-03-26rcu: Move forward-progress checkers into tree_stall.hPaul E. McKenney1-0/+2
2019-03-26rcu: Move irq-disabled stall-warning checking to tree_stall.hPaul E. McKenney1-0/+1
2019-03-26rcu: Organize functions in tree_stall.hPaul E. McKenney1-1/+0
2019-03-26rcu: Move FAST_NO_HZ stall-warning code to tree_stall.hPaul E. McKenney1-1/+0
2019-03-26rcu: Inline RCU stall-warning info helper functionsPaul E. McKenney1-2/+0
2019-03-26rcu: Inline RCU task stall-warning helper functionsPaul E. McKenney1-1/+0
2019-03-26rcu: Move RCU CPU stall-warning code out of tree.cPaul E. McKenney1-3/+7
2019-02-09Merge branches 'doc.2019.01.26a', 'fixes.2019.01.26a', 'sil.2019.01.26a', 'sp...Paul E. McKenney1-24/+3
2019-02-09rcu/tree: Convert to SPDX license identifierPaul E. McKenney1-15/+2
2019-01-25srcu: Remove srcu_queue_delayed_work_on()Sebastian Andrzej Siewior1-8/+0
2019-01-25rcu: Rename rcu_check_callbacks() to rcu_sched_clock_irq()Paul E. McKenney1-1/+1
2019-01-25Merge branches 'consolidate.2019.01.26a' and 'fwd.2019.01.26a' into HEADPaul E. McKenney1-8/+9
2019-01-25rcu: Improve diagnostics for failed RCU grace-period startPaul E. McKenney1-0/+2
2019-01-25rcu: Remove unused rcu_cpu_kthread_cpu per-CPU variablePaul E. McKenney1-4/+0
2019-01-25rcu: Move rcu_cpu_has_work to rcu_data structurePaul E. McKenney1-2/+1
2019-01-25rcu: Remove unused rcu_cpu_kthread_loops per-CPU variablePaul E. McKenney1-1/+0
2019-01-25rcu: Move rcu_cpu_kthread_status to rcu_data structurePaul E. McKenney1-1/+2
2019-01-25rcu: Move rcu_cpu_kthread_task to rcu_data structurePaul E. McKenney1-1/+5
2019-01-25rcu: Discard separate per-CPU callback countsPaul E. McKenney1-5/+1
2019-01-25rcu: Determine expedited-GP IPI handler at build timePaul E. McKenney1-1/+0
2019-01-25rcu: Rename and comment changes due to only one rcuo kthread per CPUPaul E. McKenney1-1/+1
2018-12-01rcutorture: Print time since GP end upon forward-progress failurePaul E. McKenney1-0/+2
2018-12-01rcu: Account for nocb-CPU callback counts in RCU CPU stall warningsPaul E. McKenney1-0/+1
2018-11-08rcu: Fix rcu_{node,data} comments about gp_seq_neededJoel Fernandes (Google)1-2/+2
2018-11-08rcu: Remove unused rcu_state externsJoel Fernandes (Google)1-11/+0
2018-08-30rcu: Convert rcu_state.ofl_lock to raw_spinlock_tMike Galbraith1-1/+1
2018-08-30rcu: Remove obsolete ->dynticks_fqs and ->cond_resched_completedPaul E. McKenney1-9/+3
2018-08-30rcu: Switch ->dynticks to rcu_data structure, remove rcu_dynticksPaul E. McKenney1-23/+12
2018-08-30rcu: Switch dyntick nesting counters to rcu_data structurePaul E. McKenney1-2/+0
2018-08-30rcu: Switch urgent quiescent-state requests to rcu_data structurePaul E. McKenney1-2/+0
2018-08-30rcu: Switch lazy counts to rcu_data structurePaul E. McKenney1-7/+0
2018-08-30rcu: Switch last accelerate/advance to rcu_data structurePaul E. McKenney1-4/+0
2018-08-30rcu: Switch ->tick_nohz_enabled_snap to rcu_data structurePaul E. McKenney1-1/+0
2018-08-30rcu: Merge rcu_dynticks structure into rcu_data structurePaul E. McKenney1-0/+17
2018-08-30rcu: Convert "1UL << x" to "BIT(x)"Paul E. McKenney1-1/+1
2018-08-30rcu: More aggressively enlist scheduler aid for nohz_full CPUsPaul E. McKenney1-0/+1
2018-08-30rcu: Eliminate ->rcu_qs_ctr from the rcu_dynticks structurePaul E. McKenney1-3/+0
2018-08-30rcu: Inline _rcu_barrier() into its sole remaining callerPaul E. McKenney1-2/+2
2018-08-30rcu: Inline increment_cpu_stall_ticks() into its sole callerPaul E. McKenney1-1/+0
2018-08-30rcu: Remove for_each_rcu_flavor() flavor-traversal macroPaul E. McKenney1-7/+0
2018-08-30rcu: Remove rcu_data structure's ->rsp fieldPaul E. McKenney1-1/+0
2018-08-30rcu: Remove rsp parameter from expedited grace-period functionsPaul E. McKenney1-1/+0
2018-08-30rcu: Remove rsp parameter from no-CBs CPU functionsPaul E. McKenney1-3/+3
2018-08-30rcu: Remove rsp parameter from print_cpu_stall_info()Paul E. McKenney1-1/+1
2018-08-30rcu: Remove rsp parameter from rcu_spawn_one_boost_kthread()Paul E. McKenney1-4/+0
2018-08-30rcu: Remove rsp parameter from dump_blkd_tasks() and friendPaul E. McKenney1-4/+2
2018-08-30rcu: Remove rsp parameter from rcu_print_detail_task_stall()Paul E. McKenney1-1/+1
2018-08-30rcu: Remove rcu_state structure's ->rda fieldPaul E. McKenney1-1/+0
2018-08-30rcu: Eliminate rcu_state structure's ->call fieldPaul E. McKenney1-1/+0
2018-08-30rcu: Remove RCU_STATE_INITIALIZER()Paul E. McKenney1-6/+23
2018-08-30rcu: Define RCU-sched API in terms of RCU for Tree RCU PREEMPT buildsPaul E. McKenney1-7/+2
2018-08-30rcu: Apply RCU-bh QSes to RCU-sched and RCU-preempt when safePaul E. McKenney1-0/+1
2018-08-30rcu: Defer reporting RCU-preempt quiescent states when disabledPaul E. McKenney1-0/+3
2018-07-12rcu: Remove unused rcu_kick_nohz_cpu() functionPaul E. McKenney1-1/+0
2018-07-12rcu: Add diagnostics for offline CPUs failing to report QSPaul E. McKenney1-0/+1
2018-07-12rcu: Record ->gp_state for both phases of grace-period initializationPaul E. McKenney1-4/+8
2018-07-12rcu: Add CPU online/offline state to dump_blkd_tasks()Paul E. McKenney1-3/+9
2018-07-12rcu: Remove CPU-hotplug failsafe from force-quiescent-state code pathPaul E. McKenney1-1/+0
2018-07-12rcu: Fix grace-period hangs due to race with CPU offlinePaul E. McKenney1-0/+4
2018-07-12rcu: Remove ->gpnum and ->completedPaul E. McKenney1-13/+1
2018-07-12rcu: Move from ->need_future_gp[] to ->gp_seq_neededPaul E. McKenney1-17/+2
2018-07-12rcu: Convert grace-period requests to ->gp_seqPaul E. McKenney1-1/+1
2018-07-12rcu: Convert ->rcu_iw_gpnum to ->gp_seqPaul E. McKenney1-1/+1
2018-07-12rcu: Introduce grace-period sequence numbersPaul E. McKenney1-0/+3
2018-07-12rcu: Diagnostics for grace-period startup hangsPaul E. McKenney1-0/+2
2018-06-26rcu: Add debugging info to assertionPaul E. McKenney1-0/+2
2018-05-15Merge branches 'exp.2018.05.15a', 'fixes.2018.05.15a', 'lock.2018.05.15a' and...Paul E. McKenney1-9/+17
2018-05-15rcu: Convert ->need_future_gp[] array to booleanPaul E. McKenney1-1/+1
2018-05-15rcu: Make rcu_future_needs_gp() check all ->need_future_gps[] elementsPaul E. McKenney1-1/+2
2018-05-15rcu: Avoid losing ->need_future_gp[] values due to GP start/end racesPaul E. McKenney1-2/+1
2018-05-15rcu: Make rcu_gp_cleanup() more accurately predict need for new GPPaul E. McKenney1-1/+0
2018-05-15rcu: Add accessor macros for the ->need_future_gp[] arrayPaul E. McKenney1-0/+15
2018-05-15rcu: Declare rcu_eqs_special_set() in public headerYury Norov1-1/+0
2018-05-15rcu: Remove deprecated RCU debugfs tracing codeByungchul Park1-4/+0
2018-05-15rcu: Inline rcu_preempt_do_callback() into its sole callerByungchul Park1-1/+0
2018-05-15rcu: Parallelize expedited grace-period initializationPaul E. McKenney1-0/+10
2018-02-20rcu: Remove redundant nxttail index macro defineLiu, Changcheng1-7/+0
2018-02-20rcu: Remove obsolete force-quiescent-state statistics for debugfsPaul E. McKenney1-4/+0
2018-02-20rcu: Remove obsolete __rcu_pending() statistics for debugfsPaul E. McKenney1-14/+3
2018-02-20rcu: Remove obsolete callback-invocation statistics for debugfsPaul E. McKenney1-2/+0
2018-02-20rcu: Remove obsolete boost statistics for debugfsPaul E. McKenney1-6/+0
2017-11-28rcu: Shrink ->dynticks_{nmi_,}nesting from long long to longPaul E. McKenney1-2/+2
2017-11-27rcu: Make ->dynticks_nesting be a simple counterPaul E. McKenney1-1/+0
2017-10-09rcu: Make RCU CPU stall warnings check for irq-disabled CPUsPaul E. McKenney1-0/+5
2017-08-17Merge branches 'doc.2017.08.17a', 'fixes.2017.08.17a', 'hotplug.2017.07.25b',...Paul E. McKenney1-12/+3
2017-07-25rcu: Localize rcu_state ->orphan_pend and ->orphan_donePaul E. McKenney1-6/+0
2017-07-25rcu: Eliminate rcu_state ->orphan_lockPaul E. McKenney1-3/+0
2017-07-25rcu: Make NOCB CPUs migrate CBs directly from outgoing CPUPaul E. McKenney1-1/+1
2017-07-25rcu: Remove orphan/adopt event-tracing fieldsPaul E. McKenney1-2/+0
2017-07-25rcu: Use timer as backstop for NOCB deferred wakeupsPaul E. McKenney1-0/+2
2017-06-08rcu: Remove debugfs tracingPaul E. McKenney1-27/+0
2017-06-08rcu: Remove nohz_full full-system-idle state machinePaul E. McKenney1-16/+0
2017-06-08rcu: Move rnp->lock wrappers for SRCU usePaul E. McKenney1-53/+0
2017-06-08rcu: Convert rnp->lock wrappers to macros for SRCU usePaul E. McKenney1-26/+21
2017-06-08rcu: Use RCU_NOCB_WAKE rather than RCU_NOGP_WAKEPaul E. McKenney1-3/+3
2017-06-08rcu: Complain if blocking in preemptible RCU read-side critical sectionPaul E. McKenney1-1/+1
2017-05-02srcu: Debloat the <linux/rcu_segcblist.h> headerIngo Molnar1-1/+2
2017-04-21srcu: Parallelize callback handlingPaul E. McKenney1-0/+8
2017-04-18srcu: Move rcu_node traversal macros to rcu.hPaul E. McKenney1-35/+0
2017-04-18srcu: Move combining-tree definitions for SRCU's benefitPaul E. McKenney1-70/+1
2017-04-18srcu: Use rcu_segcblist to track SRCU callbacksPaul E. McKenney1-1/+1
2017-04-18srcu: Abstract multi-tail callback list handlingPaul E. McKenney1-34/+7
2017-04-18rcu: Default RCU_FANOUT_LEAF to 16 unless explicitly changedPaul E. McKenney1-5/+1
2017-04-18rcu: Place guard on rcu_all_qs() and rcu_note_context_switch() actionsPaul E. McKenney1-1/+2
2017-04-18rcu: Eliminate flavor scan in rcu_momentary_dyntick_idle()Paul E. McKenney1-2/+1
2017-04-18rcu: Pull rcu_qs_ctr into rcu_dynticks structurePaul E. McKenney1-1/+2
2017-04-18rcu: Pull rcu_sched_qs_mask into rcu_dynticks structurePaul E. McKenney1-0/+1