aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2022-08-01 11:49:06 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2022-08-01 11:49:06 -0700
commitb167fdffe9e737007cbf7c691cde5fa489ca58d7 (patch)
tree05f36cf3d602cf7e69d22e2737dd4e8fb9849bfa /lib
parentMerge tag 'slab-for-5.20_or_6.0' of git://git.kernel.org/pub/scm/linux/kernel... (diff)
parentrseq: Kill process when unknown flags are encountered in ABI structures (diff)
downloadlinux-b167fdffe9e737007cbf7c691cde5fa489ca58d7.tar.gz
linux-b167fdffe9e737007cbf7c691cde5fa489ca58d7.zip
Merge tag 'sched-core-2022-08-01' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull scheduler updates from Ingo Molnar: "Load-balancing improvements: - Improve NUMA balancing on AMD Zen systems for affine workloads. - Improve the handling of reduced-capacity CPUs in load-balancing. - Energy Model improvements: fix & refine all the energy fairness metrics (PELT), and remove the conservative threshold requiring 6% energy savings to migrate a task. Doing this improves power efficiency for most workloads, and also increases the reliability of energy-efficiency scheduling. - Optimize/tweak select_idle_cpu() to spend (much) less time searching for an idle CPU on overloaded systems. There's reports of several milliseconds spent there on large systems with large workloads ... [ Since the search logic changed, there might be behavioral side effects. ] - Improve NUMA imbalance behavior. On certain systems with spare capacity, initial placement of tasks is non-deterministic, and such an artificial placement imbalance can persist for a long time, hurting (and sometimes helping) performance. The fix is to make fork-time task placement consistent with runtime NUMA balancing placement. Note that some performance regressions were reported against this, caused by workloads that are not memory bandwith limited, which benefit from the artificial locality of the placement bug(s). Mel Gorman's conclusion, with which we concur, was that consistency is better than random workload benefits from non-deterministic bugs: "Given there is no crystal ball and it's a tradeoff, I think it's better to be consistent and use similar logic at both fork time and runtime even if it doesn't have universal benefit." - Improve core scheduling by fixing a bug in sched_core_update_cookie() that caused unnecessary forced idling. - Improve wakeup-balancing by allowing same-LLC wakeup of idle CPUs for newly woken tasks. - Fix a newidle balancing bug that introduced unnecessary wakeup latencies. ABI improvements/fixes: - Do not check capabilities and do not issue capability check denial messages when a scheduler syscall doesn't require privileges. (Such as increasing niceness.) - Add forced-idle accounting to cgroups too. - Fix/improve the RSEQ ABI to not just silently accept unknown flags. (No existing tooling is known to have learned to rely on the previous behavior.) - Depreciate the (unused) RSEQ_CS_FLAG_NO_RESTART_ON_* flags. Optimizations: - Optimize & simplify leaf_cfs_rq_list() - Micro-optimize set_nr_{and_not,if}_polling() via try_cmpxchg(). Misc fixes & cleanups: - Fix the RSEQ self-tests on RISC-V and Glibc 2.35 systems. - Fix a full-NOHZ bug that can in some cases result in the tick not being re-enabled when the last SCHED_RT task is gone from a runqueue but there's still SCHED_OTHER tasks around. - Various PREEMPT_RT related fixes. - Misc cleanups & smaller fixes" * tag 'sched-core-2022-08-01' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (32 commits) rseq: Kill process when unknown flags are encountered in ABI structures rseq: Deprecate RSEQ_CS_FLAG_NO_RESTART_ON_* flags sched/core: Fix the bug that task won't enqueue into core tree when update cookie nohz/full, sched/rt: Fix missed tick-reenabling bug in dequeue_task_rt() sched/core: Always flush pending blk_plug sched/fair: fix case with reduced capacity CPU sched/core: Use try_cmpxchg in set_nr_{and_not,if}_polling sched/core: add forced idle accounting for cgroups sched/fair: Remove the energy margin in feec() sched/fair: Remove task_util from effective utilization in feec() sched/fair: Use the same cpumask per-PD throughout find_energy_efficient_cpu() sched/fair: Rename select_idle_mask to select_rq_mask sched, drivers: Remove max param from effective_cpu_util()/sched_cpu_util() sched/fair: Decay task PELT values during wakeup migration sched/fair: Provide u64 read for 32-bits arch helper sched/fair: Introduce SIS_UTIL to search idle CPU based on sum of util_avg sched: only perform capability check on privileged operation sched: Remove unused function group_first_cpu() sched/fair: Remove redundant word " *" selftests/rseq: check if libc rseq support is registered ...
Diffstat (limited to 'lib')
0 files changed, 0 insertions, 0 deletions
1e2&follow=1'>drm/amdgpu: Fix PCIe lane width calculationAlex Deucher1-2/+2 2018-04-03drm/radeon: Fix PCIe lane width calculationPaul Parsons1-2/+2 2018-04-03drm/amdgpu/si: implement get/set pcie_lanes asic callbackAlex Deucher1-0/+67 2018-04-03drm/amdgpu: Add support for SRBM selection v3Andrey Grodzovsky6-79/+72 2018-04-03Revert "drm/amdgpu: Don't change preferred domian when fallback GTT v5"Chunming Zhou2-17/+17 2018-04-03drm/amd/powerply: fix power reading on FijiEric Huang1-1/+2 2018-04-03drm/amd/powerplay: Enable ACG SS featureKenneth Feng5-18/+39 2018-04-03drm/amdgpu/sdma: fix mask in emit_pipeline_syncAlex Deucher4-4/+4 2018-04-03drm/amdgpu: Fix KIQ hang on bare metal for device unbind/bind back v2.Andrey Grodzovsky1-1/+53 2018-04-03drm/amd/pp: Clean header file in vega12_smumgr.cRex Zhu1-4/+2 2018-04-03drm/amd/pp: Remove Dead functions on Vega12Rex Zhu4-1419/+23 2018-04-03drm/amd/pp: silence a static checker warningDan Carpenter1-4/+4 2018-04-03drm/amdgpu: drop compute ring timeout setting for non-sriov only (v2)Evan Quan1-3/+9 2018-04-03drm/amdgpu: fix typo of domain fallbackChunming Zhou1-1/+1 2018-03-29ALSA: hda - Silence PM ops build warningLukas Wunner1-3/+1 2018-03-27drm/i915: Fix hibernation with ACPI S0 target stateImre Deak2-13/+11 2018-03-27drm/i915/execlists: Use a locked clear_bit() for synchronisation with interruptChris Wilson1-13/+8 2018-03-27drm/i915: Specify which engines to reset following semaphore/event lockupsChris Wilson1-2/+2 2018-03-27drm/i915/dp: Write to SET_POWER dpcd to enable MST hub.Dhinakaran Pandiyan1-5/+2 2018-03-25Linux 4.16-rc7v4.16-rc7Linus Torvalds1-1/+1 2018-03-25tty: vt: fix up tabstops properlyLinus Torvalds1-4/+4 2018-03-24Revert "mqueue: switch to on-demand creation of internal mount"Eric W. Biederman1-55/+19 2018-03-23x86/entry/64: Don't use IST entry for #BP stackAndy Lutomirski3-10/+9 2018-03-23drm/amdkfd: Use ordered workqueue to restore processesFelix Kuehling3-6/+32 2018-03-23drm/amdgpu: Fix acquiring VM on large-BAR systemsFelix Kuehling1-2/+1 2018-03-23x86/efi: Free efi_pgd with free_pages()Waiman Long1-1/+1