Linux cgroups development
 help / color / mirror / Atom feed
* [PATCH 0/2] Fix DEADLINE bandwidth accounting in root domain changes and hotplug
@ 2024-11-13 12:57 Juri Lelli
  2024-11-13 12:57 ` [PATCH 1/2] sched/deadline: Restore dl_server bandwidth on non-destructive root domain changes Juri Lelli
  2024-11-13 12:57 ` [PATCH 2/2] sched/deadline: Correctly account for allocated bandwidth during hotplug Juri Lelli
  0 siblings, 2 replies; 16+ messages in thread
From: Juri Lelli @ 2024-11-13 12:57 UTC (permalink / raw)
  To: Waiman Long, Tejun Heo, Johannes Weiner, Michal Koutny,
	Ingo Molnar, Peter Zijlstra, Vincent Guittot, Dietmar Eggemann,
	Steven Rostedt, Ben Segall, Mel Gorman, Valentin Schneider
  Cc: Qais Yousef, Sebastian Andrzej Siewior, Joel Fernandes (Google),
	Suleiman Souhlal, Aashish Sharma, Shin Kawamura,
	Vineeth Remanan Pillai, linux-kernel, cgroups, Juri Lelli

Hello!

This patch series addresses two issues affecting DEADLINE bandwidth
accounting during non-destructive changes to root domains and hotplug
operations. The series is based on top of Waiman's "cgroup/cpuset:
Remove redundant rebuild_sched_domains_locked() calls" series [1] which
is now merged into cgroups/for-6.13 (this series is based on top of
that, commit c4c9cebe2fb9). The discussion that eventually led to these
two series can be found at [2].

Patch 01/02 deals with non-destructive root domain changes. Currently,
such operations do not correctly account for dl_server contributions, as
they are only considered on destructive changes (where runqueues are
reattached to new domains). This patch ensures that dl_servers’
bandwidth contributions are properly re-added to root domains that
remain unchanged, preventing accounting discrepancies.

Patch 02/02 deals with hotplug. For CPU hotplug events, DEADLINE
bandwidth needs verification to ensure adequate bandwidth remains after
a CPU goes offline. The current implementation overlooks this check,
potentially leading to overflow conditions. This patch modifies
dl_bw_manage() to correctly detect and handle overflow situations,
special casing dl_servers' bandwidth contibution.

Please go forth and test/review.

Series also available at

git@github.com:jlelli/linux.git upstream/dl-server-apply

Best,
Juri

[1] https://lore.kernel.org/lkml/20241110025023.664487-1-longman@redhat.com/
[2] https://lore.kernel.org/lkml/20241029225116.3998487-1-joel@joelfernandes.org/

Juri Lelli (2):
  sched/deadline: Restore dl_server bandwidth on non-destructive root
    domain changes
  sched/deadline: Correctly account for allocated bandwidth during
    hotplug

 include/linux/sched/deadline.h |  2 +-
 kernel/cgroup/cpuset.c         |  2 +-
 kernel/sched/core.c            |  2 +-
 kernel/sched/deadline.c        | 51 ++++++++++++++++++++++++----------
 kernel/sched/sched.h           |  2 +-
 kernel/sched/topology.c        | 10 ++++---
 6 files changed, 47 insertions(+), 22 deletions(-)

-- 
2.47.0


^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2024-11-17  0:54 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-11-13 12:57 [PATCH 0/2] Fix DEADLINE bandwidth accounting in root domain changes and hotplug Juri Lelli
2024-11-13 12:57 ` [PATCH 1/2] sched/deadline: Restore dl_server bandwidth on non-destructive root domain changes Juri Lelli
2024-11-13 13:43   ` Phil Auld
2024-11-13 14:57     ` Juri Lelli
2024-11-13 16:00   ` Waiman Long
2024-11-17  0:54   ` Joel Fernandes
2024-11-13 12:57 ` [PATCH 2/2] sched/deadline: Correctly account for allocated bandwidth during hotplug Juri Lelli
2024-11-13 13:49   ` Phil Auld
2024-11-13 14:58     ` Juri Lelli
2024-11-13 16:22       ` Phil Auld
2024-11-13 16:06   ` Waiman Long
2024-11-13 16:40     ` Juri Lelli
2024-11-13 16:42       ` Waiman Long
2024-11-13 16:50         ` Waiman Long
2024-11-13 18:11           ` Juri Lelli
2024-11-13 18:19             ` Waiman Long

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox