aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/rcu/tree.c
AgeCommit message (Expand)AuthorFilesLines
2024-05-01Merge branches 'fixes.2024.04.15a', 'misc.2024.04.12a', 'rcu-sync-normal-impr...Uladzislau Rezki (Sony)1-11/+364
2024-04-16rcutorture: Make rcutorture support print rcu-tasks gp stateZqiang1-10/+3
2024-04-15rcu: Allocate WQ with WQ_MEM_RECLAIM bit setUladzislau Rezki (Sony)1-1/+5
2024-04-15rcu: Support direct wake-up of synchronize_rcu() usersUladzislau Rezki (Sony)1-1/+23
2024-04-15rcu: Add a trace event for synchronize_rcu_normal()Uladzislau Rezki (Sony)1-1/+6
2024-04-15rcu: Reduce synchronize_rcu() latencyUladzislau Rezki (Sony)1-1/+330
2024-04-15rcu: Make hotplug operations track GP state, not flagsPaul E. McKenney1-6/+6
2024-04-15rcu: Mark loads from rcu_state.n_online_cpusPaul E. McKenney1-1/+3
2024-04-15rcu: Remove redundant READ_ONCE() of rcu_state.gp_flags in tree.cPaul E. McKenney1-7/+4
2024-04-09rcu: Add lockdep checks and kernel-doc header to rcu_softirq_qs()Paul E. McKenney1-0/+28
2024-02-26Merge branches 'rcu-doc.2024.02.14a', 'rcu-nocb.2024.02.14a', 'rcu-exp.2024.0...Boqun Feng1-80/+157
2024-02-25rcu-tasks: Initialize callback lists at rcu_init() timePaul E. McKenney1-0/+2
2024-02-14rcu: Provide a boot time parameter to control lazy RCUQais Yousef1-1/+6
2024-02-14rcu/exp: Remove rcu_par_gp_wqFrederic Weisbecker1-34/+6
2024-02-14rcu/exp: Handle parallel exp gp kworkers affinityFrederic Weisbecker1-5/+74
2024-02-14rcu/exp: Make parallel exp gp kworker per rcu nodeFrederic Weisbecker1-20/+41
2024-02-14rcu/exp: Move expedited kthread worker creation functions above rcutree_prepa...Frederic Weisbecker1-48/+48
2024-02-14rcu: s/boost_kthread_mutex/kthread_mutexFrederic Weisbecker1-1/+1
2024-02-14rcu/exp: Handle RCU expedited grace period kworker allocation failureFrederic Weisbecker1-0/+2
2024-02-14rcu/exp: Fix RCU expedited parallel grace period kworker allocation failure r...Frederic Weisbecker1-0/+1
2024-02-14rcu/nocb: Re-arrange call_rcu() NOCB specific codeFrederic Weisbecker1-24/+20
2024-02-14rcu/nocb: Make IRQs disablement symmetricFrederic Weisbecker1-3/+6
2024-02-14rcu/nocb: Remove needless full barrier after callback advancingFrederic Weisbecker1-0/+6
2024-01-24rcu: Defer RCU kthreads wakeup when CPU is dyingFrederic Weisbecker1-1/+33
2023-12-14rcu: Force quiescent states only for ongoing grace periodZqiang1-0/+2
2023-11-08Merge tag 'rcu-fixes-v6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/f...Linus Torvalds1-11/+32
2023-11-02Merge tag 'mm-stable-2023-11-01-14-33' of git://git.kernel.org/pub/scm/linux/...Linus Torvalds1-9/+12
2023-11-01rcu: Introduce rcu_cpu_online()Frederic Weisbecker1-0/+7
2023-11-01rcu: Break rcu_node_0 --> &rq->__lock orderPeter Zijlstra1-11/+25
2023-10-23Merge branches 'rcu/torture', 'rcu/fixes', 'rcu/docs', 'rcu/refscale', 'rcu/t...Frederic Weisbecker1-72/+170
2023-10-04rcu: Standardize explicit CPU-hotplug callsFrederic Weisbecker1-4/+8
2023-10-04rcu: Conditionally build CPU-hotplug teardown callbacksFrederic Weisbecker1-60/+54
2023-10-04rcu: dynamically allocate the rcu-kfree shrinkerQi Zheng1-9/+12
2023-10-04rcu: Assume rcu_report_dead() is always called locallyFrederic Weisbecker1-2/+2
2023-10-04rcu: Assume IRQS disabled from rcu_report_dead()Frederic Weisbecker1-4/+6
2023-10-04rcu: kmemleak: Ignore kmemleak false positives when RCU-freeing objectsCatalin Marinas1-0/+9
2023-09-13rcu: Eliminate rcu_gp_slow_unregister() false positivePaul E. McKenney1-1/+1
2023-09-13rcu: Dump memory object info if callback function is invalidZhen Lei1-0/+1
2023-09-13rcu: Add sysfs to provide throttled access to rcu_barrier()Paul E. McKenney1-0/+76
2023-09-13rcu/tree: Remove superfluous return from void call_rcu* functionsJoel Fernandes (Google)1-2/+2
2023-09-11rcu/tree: Defer setting of jiffies during stall resetJoel Fernandes (Google)1-0/+12
2023-08-16rcu: Mark __rcu_irq_enter_check_tick() ->rcu_urgent_qs loadPaul E. McKenney1-1/+1
2023-07-19rcu: Clarify rcu_is_watching() kernel-doc commentPaul E. McKenney1-5/+9
2023-06-07Merge branches 'doc.2023.05.10a', 'fixes.2023.05.11a', 'kvfree.2023.05.10a', ...Paul E. McKenney1-43/+88
2023-05-11rcu-tasks: Stop rcu_tasks_invoke_cbs() from using never-onlined CPUsPaul E. McKenney1-1/+11
2023-05-11rcu: Make rcu_cpu_starting() rely on interrupts being disabledPaul E. McKenney1-6/+5
2023-05-11rcu: Mark rcu_cpu_kthread() accesses to ->rcu_cpu_has_workPaul E. McKenney1-2/+2
2023-05-11rcu: Employ jiffies-based backstop to callback time limitPaul E. McKenney1-8/+20
2023-05-11rcu: Check callback-invocation time limit for rcuc kthreadsPaul E. McKenney1-9/+19
2023-05-09rcu/kvfree: Make drain_page_cache() take early return if cache is disabledZqiang1-0/+3
2023-05-09rcu/kvfree: Make fill page cache start from krcp->nr_bkv_objsZqiang1-1/+1
2023-05-09rcu/kvfree: Do not run a page work if a cache is disabledUladzislau Rezki (Sony)1-0/+4
2023-05-09rcu/kvfree: Use consistent krcp when growing kfree_rcu() page cacheZqiang1-1/+1
2023-05-09rcu/kvfree: Invoke debug_rcu_bhead_unqueue() after checking bnode->gp_snapZqiang1-1/+1
2023-05-09rcu/kvfree: Add debug check for GP complete for kfree_rcu_cpu listUladzislau Rezki (Sony)1-1/+7
2023-05-09rcu/kvfree: Add debug to check grace periodsPaul E. McKenney1-18/+19
2023-04-24Merge tag 'rcu.6.4.april5.2023.3' of git://git.kernel.org/pub/scm/linux/kerne...Linus Torvalds1-7/+11
2023-04-06rcu/kvfree: Avoid freeing new kfree_rcu() memory after old grace periodZiwei Dai1-8/+19
2023-04-05Merge branches 'rcu/staging-core', 'rcu/staging-docs' and 'rcu/staging-kfree'...Joel Fernandes (Google)1-0/+2
2023-04-05rcu: Avoid stack overflow due to __rcu_irq_enter_check_tick() being kprobe-edZheng Yejian1-0/+1
2023-04-05rcu: Permit start_poll_synchronize_rcu_expedited() to be invoked earlyZqiang1-3/+2
2023-04-05rcu: Remove never-set needwake assignment from rcu_report_qs_rdp()Zqiang1-4/+6
2023-04-05rcu: Add comment to rcu_do_batch() identifying rcuoc code pathPaul E. McKenney1-0/+2
2023-02-02Merge branch 'stall.2023.01.09a' into HEADPaul E. McKenney1-0/+18
2023-02-02Merge branches 'doc.2023.01.05a', 'fixes.2023.01.23a', 'kvfree.2023.01.03a', ...Paul E. McKenney1-275/+364
2023-01-23rcu: Disable laziness if lazy-tracking says soJoel Fernandes (Google)1-1/+3
2023-01-17rcu: Track laziness during boot and suspendJoel Fernandes (Google)1-0/+2
2023-01-12rcu: Remove redundant call to rcu_boost_kthread_setaffinity()Zqiang1-5/+0
2023-01-05rcu: Add RCU stall diagnosis informationZhen Lei1-0/+18
2023-01-03rcu/kvfree: Split ready for reclaim objects from a batchUladzislau Rezki (Sony)1-33/+54
2023-01-03rcu/kvfree: Carefully reset number of objects in krcpUladzislau Rezki (Sony)1-10/+30
2023-01-03rcu/kvfree: Use READ_ONCE() when access to krcp->headUladzislau Rezki (Sony)1-2/+2
2023-01-03rcu/kvfree: Use a polled API to speedup a reclaim processUladzislau Rezki (Sony)1-8/+39
2023-01-03rcu/kvfree: Move need_offload_krc() out of krcp->lockUladzislau Rezki (Sony)1-7/+4
2023-01-03rcu/kvfree: Move bulk/list reclaim to separate functionsUladzislau Rezki (Sony)1-49/+65
2023-01-03rcu/kvfree: Switch to a generic linked list APIUladzislau Rezki (Sony)1-46/+43
2023-01-03rcu: Refactor kvfree_call_rcu() and high-level helpersUladzislau Rezki (Sony)1-17/+12
2023-01-03rcu: Test synchronous RCU grace periods at the end of rcu_init()Paul E. McKenney1-0/+2
2023-01-03rcu: Make rcu_blocking_is_gp() stop early-boot might_sleep()Zqiang1-2/+3
2023-01-03rcu: Upgrade header comment for poll_state_synchronize_rcu()Paul E. McKenney1-1/+9
2023-01-03rcu: Throttle callback invocation based on number of ready callbacksPaul E. McKenney1-1/+1
2023-01-03rcu: Consolidate initialization and CPU-hotplug codePaul E. McKenney1-156/+158
2022-12-21Merge tag 'rcu-urgent.2022.12.17a' of git://git.kernel.org/pub/scm/linux/kern...Linus Torvalds1-4/+6
2022-12-17rcu: Don't assert interrupts enabled too early in bootPaul E. McKenney1-4/+6
2022-12-12Merge tag 'rcu.2022.12.02a' of git://git.kernel.org/pub/scm/linux/kernel/git/...Linus Torvalds1-56/+96
2022-11-30Merge branches 'doc.2022.10.20a', 'fixes.2022.10.21a', 'lazy.2022.11.30a', 's...Paul E. McKenney1-56/+96
2022-11-29rcu: Make call_rcu() lazy to save powerJoel Fernandes (Google)1-46/+83
2022-10-21rcu: Fix __this_cpu_read() lockdep warning in rcu_force_quiescent_state()Zqiang1-1/+1
2022-10-21rcu: Remove rcu_is_idle_cpu()Yipeng Zou1-6/+0
2022-10-20rcu: Keep synchronize_rcu() from enabling irqs in early bootPaul E. McKenney1-4/+6
2022-10-18rcu: Fix missing nocb gp wake on rcu_barrier()Frederic Weisbecker1-0/+11
2022-10-18rcu: Use READ_ONCE() for lockless read of rnp->qsmaskJoel Fernandes (Google)1-1/+1
2022-10-18rcu: Remove duplicate RCU exp QS report from rcu_report_dead()Zqiang1-2/+0
2022-09-01Merge branches 'doc.2022.08.31b', 'fixes.2022.08.31b', 'kvfree.2022.08.31b', ...Paul E. McKenney1-78/+252
2022-08-31rcu-tasks: Make RCU Tasks Trace check for userspace executionZqiang1-2/+2
2022-08-31rcu: Make synchronize_rcu() fastpath update only boot-CPU countersPaul E. McKenney1-2/+16
2022-08-31rcu: Remove ->rgos_polled field from rcu_gp_oldstate structurePaul E. McKenney1-5/+1
2022-08-31rcu: Make synchronize_rcu() fast path update ->gp_seq countersPaul E. McKenney1-13/+26
2022-08-31rcu-tasks: Remove grace-period fast-path rcu-tasks helperPaul E. McKenney1-2/+0
2022-08-31rcu: Set rcu_data structures' initial ->gpwrap value to truePaul E. McKenney1-0/+1
2022-08-31rcu: Disable run-time single-CPU grace-period optimizationPaul E. McKenney1-31/+9
2022-08-31rcu: Add full-sized polling for cond_sync_full()Paul E. McKenney1-1/+27
2022-08-31rcu: Remove blank line from poll_state_synchronize_rcu() docbook headerPaul E. McKenney1-3/+2
2022-08-31rcu: Add full-sized polling for start_poll()Paul E. McKenney1-13/+45
2022-08-31rcu: Add full-sized polling for get_state()Paul E. McKenney1-0/+33
2022-08-31rcu: Add full-sized polling for get_completed*() and poll_state*()Paul E. McKenney1-4/+72
2022-08-31rcu/kvfree: Update KFREE_DRAIN_JIFFIES intervalUladzislau Rezki (Sony)1-4/+19
2022-08-31rcu/kfree: Fix kfree_rcu_shrink_count() return valueJoel Fernandes (Google)1-1/+1
2022-08-31rcu: Back off upon fill_page_cache_func() allocation failureMichal Hocko1-8/+9
2022-08-05Merge tag 'mm-stable-2022-08-03' of git://git.kernel.org/pub/scm/linux/kernel...Linus Torvalds1-1/+1
2022-07-21Merge branch 'ctxt.2022.07.05a' into HEADPaul E. McKenney1-449/+27
2022-07-21Merge branches 'doc.2022.06.21a', 'fixes.2022.07.19a', 'nocb.2022.07.19a', 'p...Paul E. McKenney1-34/+150
2022-07-21rcu: Add polled expedited grace-period primitivesPaul E. McKenney1-5/+12
2022-07-21rcu: Make polled grace-period API account for expedited grace periodsPaul E. McKenney1-4/+5
2022-07-21rcu: Switch polled grace-period APIs to ->gp_seq_polledPaul E. McKenney1-4/+94
2022-07-19rcu/nocb: Add option to opt rcuo kthreads out of RT priorityUladzislau Rezki (Sony)1-1/+5
2022-07-19rcu: Add nocb_cb_kthread check to rcu_is_callbacks_kthread()Zqiang1-2/+2
2022-07-19rcu/tree: Add comment to describe GP-done condition in fqs loopNeeraj Upadhyay1-1/+9
2022-07-19rcu: Initialize first_gp_fqs at declaration in rcu_gp_fqs()Paul E. McKenney1-2/+1
2022-07-19rcu/kvfree: Remove useless monitor_todo flagJoel Fernandes (Google)1-17/+16
2022-07-19rcu: Cleanup RCU urgency state for offline CPUZqiang1-0/+1
2022-07-19rcu: Add rnp->cbovldmask check in rcutree_migrate_callbacks()Zqiang1-0/+1
2022-07-19rcu: Decrease FQS scan wait time in case of callback overloadingPaul E. McKenney1-1/+6
2022-07-05context_tracking: Convert state to atomic_tFrederic Weisbecker1-7/+6
2022-07-05rcu/context-tracking: Move RCU-dynticks internal functions to context_trackingFrederic Weisbecker1-321/+3
2022-07-05rcu/context-tracking: Move deferred nocb resched to context trackingFrederic Weisbecker1-13/+2
2022-07-05rcu/context_tracking: Move dynticks_nmi_nesting to context trackingFrederic Weisbecker1-27/+21
2022-07-05rcu/context_tracking: Move dynticks_nesting to context trackingFrederic Weisbecker1-15/+16
2022-07-05rcu/context_tracking: Move dynticks counter to context trackingFrederic Weisbecker1-29/+27
2022-07-05rcu/context-tracking: Remove rcu_irq_enter/exit()Frederic Weisbecker1-83/+0
2022-07-05context_tracking: Take idle eqs entrypoints over RCUFrederic Weisbecker1-2/+0
2022-07-03mm: shrinkers: provide shrinkers with namesRoman Gushchin1-1/+1
2022-06-20rcu: Apply noinstr to rcu_idle_enter() and rcu_idle_exit()Paul E. McKenney1-7/+7
2022-06-20rcu: Provide a get_completed_synchronize_rcu() functionPaul E. McKenney1-1/+2
2022-06-20rcu: Make normal polling GP be more precise about sequence numbersPaul E. McKenney1-2/+2
2022-05-11Merge branch 'exp.2022.05.11a' into HEADPaul E. McKenney1-3/+48
2022-05-11rcu: Move expedited grace period (GP) work to RT kthread_workerKalesh Singh1-3/+48
2022-05-03Merge branches 'docs.2022.04.20a', 'fixes.2022.04.20a', 'nocb.2022.04.11b', '...Paul E. McKenney1-17/+78
2022-04-20rcu: Fix preemption mode check on synchronize_rcu[_expedited]()Frederic Weisbecker1-1/+3
2022-04-20rcu: Add comments to final rcu_gp_cleanup() "if" statementPaul E. McKenney1-5/+20
2022-04-11rcu: Check for jiffies going backwardsPaul E. McKenney1-0/+10
2022-04-11rcutorture: Suppress debugging grace period delays during floodingPaul E. McKenney1-3/+29
2022-04-11rcu-tasks: Make Tasks RCU account for userspace executionPaul E. McKenney1-0/+2
2022-04-11rcu/nocb: Initialize nocb kthreads only for boot CPU prior SMP initializationFrederic Weisbecker1-1/+5
2022-04-11rcu: Initialize boost kthread only for boot node prior SMP initializationFrederic Weisbecker1-1/+4
2022-04-11rcu: Assume rcu_init() is called before smpFrederic Weisbecker1-6/+5
2022-03-21Merge tag 'rcu.2022.03.13a' of git://git.kernel.org/pub/scm/linux/kernel/git/...Linus Torvalds1-141/+187
2022-03-07tick/rcu: Remove obsolete rcu_needs_cpu() parametersFrederic Weisbecker1-2/+1
2022-02-24Merge branches 'exp.2022.02.24a', 'fixes.2022.02.14a', 'rcu_barrier.2022.02.0...Paul E. McKenney1-141/+187
2022-02-14kasan: Record work creation stack trace with interrupts enabledZqiang1-1/+1
2022-02-14rcu: Inline __call_rcu() into call_rcu()Paul E. McKenney1-49/+42
2022-02-14rcu: Add mutex for rcu boost kthread spawning and affinity settingDavid Woodhouse1-0/+1
2022-02-08rcu: Create and use an rcu_rdp_cpu_online()Paul E. McKenney1-8/+13
2022-02-08rcu: Make rcu_barrier() no longer block CPU-hotplug operationsPaul E. McKenney1-14/+14
2022-02-08rcu: Rework rcu_barrier() and callback-migration logicPaul E. McKenney1-16/+61
2022-02-08rcu: Refactor rcu_barrier() empty-list handlingPaul E. McKenney1-17/+8
2022-02-08rcu: Kill rnp->ofl_seq and use only rcu_state.ofl_lock for exclusionDavid Woodhouse1-35/+36
2022-02-01rcu: Add per-CPU rcuc task dumps to RCU CPU stall warningsZqiang1-0/+3
2022-02-01rcu: Elevate priority of offloaded callback threadsAlison Chaiken1-1/+1
2022-02-01rcu: Move kthread_prio bounds-check to a separate functionAlison Chaiken1-16/+23
2022-02-01rcu: Create per-cpu rcuc kthreads only when rcutree.use_softirq=0Zqiang1-1/+1
2021-12-09Merge branches 'doc.2021.11.30c', 'exp.2021.12.07a', 'fastnohz.2021.11.30c', ...Paul E. McKenney1-45/+86
2021-12-07rcu/nocb: Don't invoke local rcu core on callback overload from nocb kthreadFrederic Weisbecker1-5/+5
2021-12-07rcu: Apply callbacks processing time limit only on softirqFrederic Weisbecker1-13/+12
2021-12-07rcu: Fix callbacks processing time limit retaining cond_resched()Frederic Weisbecker1-10/+15
2021-12-07rcu/nocb: Limit number of softirq callbacks only on softirqFrederic Weisbecker1-3/+2
2021-12-07rcu/nocb: Use appropriate rcu_nocb_lock_irqsave()Frederic Weisbecker1-5/+3
2021-12-07rcu/nocb: Check a stable offloaded state to manipulate qlen_last_fqs_checkFrederic Weisbecker1-1/+1
2021-12-07rcu/nocb: Make rcu_core() callbacks acceleration (de-)offloading safeFrederic Weisbecker1-2/+16
2021-12-07rcu/nocb: Make rcu_core() callbacks acceleration preempt-safeThomas Gleixner1-2/+3
2021-12-07rcu/nocb: Invoke rcu_core() at the start of deoffloadingFrederic Weisbecker1-0/+17
2021-12-07rcu/nocb: Prepare state machine for a new stepFrederic Weisbecker1-1/+1
2021-12-07rcu: Tighten rcu_advance_cbs_nowake() checksPaul E. McKenney1-3/+4
2021-12-07rcu: Make idle entry report expedited quiescent statesPaul E. McKenney1-1/+1
2021-11-30rcu: Avoid alloc_pages() when recording stackJun Miao1-2/+2
2021-11-30rcu: in_irq() cleanupChangbin Du1-1/+1
2021-11-30rcu: Move rcu_needs_cpu() to tree.cPaul E. McKenney1-0/+18
2021-11-30rcu: Remove the RCU_FAST_NO_HZ Kconfig optionPaul E. McKenney1-11/+0
2021-10-07rcu: Fix rcu_dynticks_curr_cpu_in_eqs() vs noinstrPeter Zijlstra1-1/+1
2021-09-13rcu: Make rcutree_dying_cpu() use its "cpu" parameterPaul E. McKenney1-1/+1
2021-09-13rcu: Simplify rcu_report_dead() call to rcu_report_exp_rdp()Paul E. McKenney1-3/+1
2021-09-13rcu: Move rcu_dynticks_eqs_online() to rcu_cpu_starting()Paul E. McKenney1-1/+1
2021-09-13rcu: Comment rcu_gp_init() code waiting for CPU-hotplug operationsPaul E. McKenney1-0/+2
2021-09-13rcu: Eliminate rcu_implicit_dynticks_qs() local variable ruqpPaul E. McKenney1-5/+3
2021-09-13rcu: Eliminate rcu_implicit_dynticks_qs() local variable rnhqpPaul E. McKenney1-4/+2
2021-09-13rcu: Mark accesses to rcu_state.n_force_qsPaul E. McKenney1-5/+5
2021-08-10Merge branches 'doc.2021.07.20c', 'fixes.2021.08.06a', 'nocb.2021.07.20c', 'n...Paul E. McKenney1-74/+33
2021-08-10rcu: Replace deprecated CPU-hotplug functionsSebastian Andrzej Siewior1-2/+2
2021-08-06rcu: Use per_cpu_ptr to get the pointer of per_cpu variableLiu Song1-1/+1
2021-08-06rcu: Remove useless "ret" update in rcu_gp_fqs_loop()Liu Song1-2/+2
2021-08-06rcu: Make rcu_gp_init() and rcu_gp_fqs_loop noinline to conserve stackPaul E. McKenney1-2/+2
2021-08-06rcu: Weaken ->dynticks accesses and updatesPaul E. McKenney1-8/+18
2021-08-06rcu: Remove special bit at the bottom of the ->dynticks counterJoel Fernandes (Google)1-63/+14
2021-07-20rcu/nocb: Remove NOCB deferred wakeup from rcutree_dead_cpu()Frederic Weisbecker1-3/+0
2021-07-20rcu/nocb: Start moving nocb code to its own plugin fileFrederic Weisbecker1-0/+1
2021-07-04Merge branch 'core-rcu-2021.07.04' of git://git.kernel.org/pub/scm/linux/kern...Linus Torvalds1-139/+174
2021-07-01kernel.h: split out panic and oops helpersAndy Shevchenko1-0/+2
2021-05-18Merge branches 'bitmaprange.2021.05.10c', 'doc.2021.05.10c', 'fixes.2021.05.1...Paul E. McKenney1-139/+174
2021-05-18rcu-tasks: Make ksoftirqd provide RCU Tasks quiescent statesPaul E. McKenney1-0/+1
2021-05-13rcu: Improve comments describing RCU read-side critical sectionsPaul E. McKenney1-10/+14