* [GIT PULL] scheduler updates for v4.15
@ 2017-11-13 8:00 Ingo Molnar
2017-11-13 9:23 ` Mike Galbraith
0 siblings, 1 reply; 3+ messages in thread
From: Ingo Molnar @ 2017-11-13 8:00 UTC (permalink / raw)
To: Linus Torvalds
Cc: linux-kernel, Peter Zijlstra, Mike Galbraith, Thomas Gleixner,
Andrew Morton
Linus,
Please pull the latest sched-core-for-linus git tree from:
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git sched-core-for-linus
# HEAD: 765cc3a4b224e22bf524fabe40284a524f37cdd0 sched/core: Optimize sched_feat() for !CONFIG_SCHED_DEBUG builds
The main updates in this cycle were:
- Group balancing enhancements and cleanups (Brendan Jackman)
- Move CPU isolation related functionality into its separate
kernel/sched/isolation.c file, with related 'housekeeping_*()' namespace and
nomenclature et al. (Frederic Weisbecker)
- Improve the interactive/cpu-intense fairness calculation (Josef Bacik)
- Improve the PELT code and related cleanups (Peter Zijlstra)
- Improve the logic of pick_next_task_fair() (Uladzislau Rezki)
- Improve the RT IPI based balancing logic (Steven Rostedt)
- Various micro-optimizations:
- better !CONFIG_SCHED_DEBUG optimizations (Patrick Bellasi)
- better idle loop (Cheng Jian)
- ... plus misc fixes, cleanups and updates.
Thanks,
Ingo
------------------>
Brendan Jackman (7):
sched/fair: Sync task util before slow-path wakeup
sched/fair: Force balancing on NOHZ balance if local group has capacity
sched/fair: Move select_task_rq_fair() slow-path into its own function
sched/fair: Remove unnecessary comparison with -1
sched/fair: Fix find_idlest_group() when local group is not allowed
sched/fair: Fix usage of find_idlest_group() when no groups are allowed
sched/fair: Fix usage of find_idlest_group() when the local group is idlest
Cheng Jian (1):
sched/idle: Micro-optimize the idle loop
Dou Liyang (1):
x86/tsc: Append the 'tsc=' description for the 'tsc=unstable' boot parameter
Frederic Weisbecker (12):
sched/isolation: Move housekeeping related code to its own file
sched/isolation, watchdog: Use housekeeping_cpumask() instead of ad-hoc version
sched/isolation: Provide a dynamic off-case to housekeeping_any_cpu()
sched/isolation: Make the housekeeping cpumask private
sched/isolation: Use its own static key
sched/isolation: Rename is_housekeeping_cpu() to housekeeping_cpu()
sched/isolation: Split out new CONFIG_CPU_ISOLATION=y config from CONFIG_NO_HZ_FULL
sched/isolation: Introduce housekeeping flags
sched/isolation: Handle the nohz_full= parameter
sched/isolation: Move isolcpus= handling to the housekeeping code
sched/isolation: Add basic isolcpus flags
sched/isolation: Document isolcpus= boot parameter flags, mark it deprecated
Josef Bacik (1):
sched/fair: Calculate runnable_weight slightly differently
Luca Abeni (1):
sched/deadline: Fix switching to -deadline
Matthias Kaehlcke (1):
sched/sysctl: Fix attributes of some extern declarations
Patrick Bellasi (1):
sched/core: Optimize sched_feat() for !CONFIG_SCHED_DEBUG builds
Peter Zijlstra (20):
sched/fair: Clean up calc_cfs_shares()
sched/fair: Add comment to calc_cfs_shares()
sched/fair: Cure calc_cfs_shares() vs. reweight_entity()
sched/fair: Remove se->load.weight from se->avg.load_sum
sched/fair: Change update_load_avg() arguments
sched/fair: Move enqueue migrate handling
sched/fair: Rename {en,de}queue_entity_load_avg()
sched/fair: Introduce {en,de}queue_load_avg()
sched/fair: More accurate reweight_entity()
sched/fair: Rewrite cfs_rq->removed_*avg
sched/fair: Rewrite PELT migration propagation
sched/fair: Propagate an effective runnable_load_avg
sched/fair: Implement synchonous PELT detach on load-balance migrate
sched/fair: Align PELT windows between cfs_rq and its se
sched/fair: Implement more accurate async detach
sched/fair: Update calc_group_*() comments
sched/idle: Move quiet_vmstate() into the NOHZ code
sched/debug: Rename task-state printing helpers
sched/deadline: Rename __dl_clear() to __dl_sub()
sched/topology: Restore SD_PREFER_SIBLING on MC domains
Rakib Mullick (1):
sched/isolcpus: Fix "isolcpus=" boot parameter handling when !CONFIG_CPUMASK_OFFSTACK
Sebastian Andrzej Siewior (2):
sched/rt: Add a helper to test for a RT task
block/ioprio: Use a helper to check for RT prio
Steven Rostedt (Red Hat) (1):
sched/rt: Simplify the IPI based RT balancing logic
Suravee Suthikulpanit (1):
sched/topology: Introduce NUMA identity node sched domain
Uladzislau Rezki (1):
sched/fair: Search a task from the tail of the queue
Vincent Guittot (1):
sched/fair: Use reweight_entity() for set_user_nice()
luca abeni (2):
sched/headers: Remove duplicate prototype of __dl_clear_params()
sched/deadline: Use C bitfields for the state flags
Documentation/admin-guide/kernel-parameters.txt | 40 +-
drivers/base/cpu.c | 11 +-
drivers/net/ethernet/tile/tilegx.c | 6 +-
fs/proc/array.c | 2 +-
include/linux/cpumask.h | 16 +
include/linux/ioprio.h | 3 +-
include/linux/sched.h | 19 +-
include/linux/sched/isolation.h | 51 ++
include/linux/sched/rt.h | 11 +
include/linux/sched/sysctl.h | 6 +-
include/linux/tick.h | 39 +-
include/trace/events/sched.h | 2 +-
init/Kconfig | 7 +
init/main.c | 2 +
kernel/cgroup/cpuset.c | 15 +-
kernel/rcu/tree_plugin.h | 3 +-
kernel/rcu/update.c | 3 +-
kernel/sched/Makefile | 1 +
kernel/sched/core.c | 56 +-
kernel/sched/deadline.c | 21 +-
kernel/sched/debug.c | 18 +-
kernel/sched/fair.c | 1049 +++++++++++++++--------
kernel/sched/idle.c | 4 +-
kernel/sched/isolation.c | 155 ++++
kernel/sched/rt.c | 316 +++----
kernel/sched/sched.h | 73 +-
kernel/sched/topology.c | 49 +-
kernel/time/tick-sched.c | 33 +-
kernel/trace/trace_output.c | 12 +-
kernel/trace/trace_sched_wakeup.c | 8 +-
kernel/watchdog.c | 13 +-
31 files changed, 1270 insertions(+), 774 deletions(-)
create mode 100644 include/linux/sched/isolation.h
create mode 100644 kernel/sched/isolation.c
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [GIT PULL] scheduler updates for v4.15
2017-11-13 8:00 [GIT PULL] scheduler updates for v4.15 Ingo Molnar
@ 2017-11-13 9:23 ` Mike Galbraith
2017-11-13 15:13 ` Ingo Molnar
0 siblings, 1 reply; 3+ messages in thread
From: Mike Galbraith @ 2017-11-13 9:23 UTC (permalink / raw)
To: Ingo Molnar, Linus Torvalds
Cc: linux-kernel, Peter Zijlstra, Thomas Gleixner, Andrew Morton,
Steven Rostedt
On Mon, 2017-11-13 at 09:00 +0100, Ingo Molnar wrote:
>
> - Improve the RT IPI based balancing logic (Steven Rostedt)
Well how 'bout that, serendipity strikes again:
I just got a report that a proggy Gregory Haskins wrote back in 2007
(preempt-test) was claiming RT was broken, but no, it's every kernel
containing b6366f048e0c. What the proggy does is to start a gaggle of
RT tasks of descending priority, giving each an identical quantum of
work to do, expecting higher priority tasks to get it done before
lower. That currently does not always happen, we occasionally do not
get a task pushed for long enough that a task that should have been
preempted by a push shortly after hitting the CPU, manages to remain
long enough to finish well before it should have been able to.
This patch fixed it up before I could even get my troubleshooting
wheels properly smoking (they spin a bit before getting traction).
Given that, not to mention b6366f048e0c being capable of log jamming
even fairly modest boxen, perhaps this patch wants a stable tag?
-Mike
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [GIT PULL] scheduler updates for v4.15
2017-11-13 9:23 ` Mike Galbraith
@ 2017-11-13 15:13 ` Ingo Molnar
0 siblings, 0 replies; 3+ messages in thread
From: Ingo Molnar @ 2017-11-13 15:13 UTC (permalink / raw)
To: Mike Galbraith, Greg Kroah-Hartman
Cc: Linus Torvalds, linux-kernel, Peter Zijlstra, Thomas Gleixner,
Andrew Morton, Steven Rostedt
* Mike Galbraith <efault@gmx.de> wrote:
> On Mon, 2017-11-13 at 09:00 +0100, Ingo Molnar wrote:
> >
> > - Improve the RT IPI based balancing logic (Steven Rostedt)
>
> Well how 'bout that, serendipity strikes again:
>
> I just got a report that a proggy Gregory Haskins wrote back in 2007
> (preempt-test) was claiming RT was broken, but no, it's every kernel
> containing b6366f048e0c. What the proggy does is to start a gaggle of
> RT tasks of descending priority, giving each an identical quantum of
> work to do, expecting higher priority tasks to get it done before
> lower. That currently does not always happen, we occasionally do not
> get a task pushed for long enough that a task that should have been
> preempted by a push shortly after hitting the CPU, manages to remain
> long enough to finish well before it should have been able to.
>
> This patch fixed it up before I could even get my troubleshooting
> wheels properly smoking (they spin a bit before getting traction).
> Given that, not to mention b6366f048e0c being capable of log jamming
> even fairly modest boxen, perhaps this patch wants a stable tag?
Ok, agreed - I've forwarded 4bdced5c9a29 to Greg for -stable inclusion.
Thanks,
Ingo
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2017-11-13 15:13 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-11-13 8:00 [GIT PULL] scheduler updates for v4.15 Ingo Molnar
2017-11-13 9:23 ` Mike Galbraith
2017-11-13 15:13 ` Ingo Molnar
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.