Skip to content

timers/migration: Fix NUMA trees + cleanups

Frederic Weisbecker lkml 1 version Applied

Status from this message: The following commit has been merged into the timers/core branch of tip:

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest6 patches 0 repliesApplied

Patches in v1 Applied

#Subject and filesSizeRepliesApplied
1/6timers/migration: Convert "while" loops to use "for"kernel/time/timer_migration.c+13 -100 replies
2/6timers/migration: Remove locking on group connectionkernel/time/timer_migration.c+0 -100 replies
3/6timers/migration: Fix imbalanced NUMA treeskernel/time/timer_migration.c+127 -1040 replies
4/6timers/migration: Assert that hotplug preparing CPU is part of stable active hierarchykernel/time/timer_migration.c+8 -00 replies
5/6timers/migration: Remove unused "cpu" parameter from tmigr_get_group()kernel/time/timer_migration.c+2 -30 replies
6/6timers/migration: Remove dead code handling idle CPU checking for remote timerskernel/time/timer_migration.c+0 -160 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [PATCH 0/6] timers/migration: Fix NUMA trees + cleanups

Hi,

A while ago I found out that NUMA tree layout had flaws but I thought it was only about rare setups. Having had a closer look while thinking about the big.LITTLE handling, I realized the NUMA timer tree are actually imbalanced in many cases, except perhaps when 0-7 CPUs are lucky enough to belong to the same node, and yet up to a certain amount of CPUs.

Here is a fix proposal, plus a bunch of cleanups.

git://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks.git
timers/core

HEAD: 4adecc004d35dbe8a48df3d23ed2b8cf42772716
Thanks,
Frederic
---

Frederic Weisbecker (6):
timers/migration: Convert "while" loops to use "for"
timers/migration: Remove locking on group connection
timers/migration: Fix imbalanced NUMA trees
timers/migration: Assert that hotplug preparing CPU is part of stable active hierarchy timers/migration: Remove unused "cpu" parameter from tmigr_get_group() timers/migration: Remove dead code handling idle CPU checking for remote timers

 kernel/time/timer_migration.c | 279 ++++++++++++++++++++++--------------------
 1 file changed, 143 insertions(+), 136 deletions(-)