From: John Stultz <jstultz@google.com>
To: LKML <linux-kernel@vger.kernel.org>
Cc: John Stultz <jstultz@google.com>,
Joel Fernandes <joelaf@google.com>,
Qais Yousef <qyousef@layalina.io>,
Ingo Molnar <mingo@redhat.com>,
Peter Zijlstra <peterz@infradead.org>,
Juri Lelli <juri.lelli@redhat.com>,
Vincent Guittot <vincent.guittot@linaro.org>,
Dietmar Eggemann <dietmar.eggemann@arm.com>,
Valentin Schneider <vschneid@redhat.com>,
Steven Rostedt <rostedt@goodmis.org>,
Ben Segall <bsegall@google.com>,
Zimuzo Ezeozue <zezeozue@google.com>,
Mel Gorman <mgorman@suse.de>, Will Deacon <will@kernel.org>,
Waiman Long <longman@redhat.com>,
Boqun Feng <boqun.feng@gmail.com>,
"Paul E. McKenney" <paulmck@kernel.org>,
Metin Kaya <Metin.Kaya@arm.com>,
Xuewen Yan <xuewen.yan94@gmail.com>,
K Prateek Nayak <kprateek.nayak@amd.com>,
Thomas Gleixner <tglx@linutronix.de>,
Daniel Lezcano <daniel.lezcano@linaro.org>,
kernel-team@android.com
Subject: [RESEND x3][PATCH v12 0/7] Preparatory changes for Proxy Execution v12
Date: Wed, 9 Oct 2024 16:53:33 -0700 [thread overview]
Message-ID: <20241009235352.1614323-1-jstultz@google.com> (raw)
Hey All,
I wanted to re-send (again) v12 of the preparatory patches for
Proxy Execution - an approach for a generalized form of priority
inheritance. Here again, I’m only submitting the early /
preparatory changes for review, in the hope that we can move
these more straightforward patches along and then iteratively
move through the more interesting patches in the Proxy Execution
series.
There have been a few changes to the preparatory patches in v12:
* Peter suggested I switch from using “selected” to denote the
task chosen to be scheduled, and instead use “donor”
* K Prateek Nayak and Peter both pointed out issues in the
“Remove wakeups from under mutex::wait_lock” patch that needed
some work to solve.
Thank you for all the detailed review and feedback there!
The only change in this resend is rebasing the series on top of
the current tip/sched/core branch and resolving some minor
collisions.
Usually I link to the full proxy-execution series here, but
while these preparatory changes rebased easily, I still have
some work to do on later changes in the full proxy-execution
series to adapt to recent delayed dequeuing and dl_server rework
that landed in 6.12-rc1. I'll post separately with those changes
once I've hammered all the details out.
Credit/Disclaimer:
—--------------------
As mentioned previously, this Proxy Execution series has a long
history:
First described in a paper[1] by Watkins, Straub, Niehaus, then
from patches from Peter Zijlstra, extended with lots of work by
Juri Lelli, Valentin Schneider, and Connor O'Brien. (and thank
you to Steven Rostedt for providing additional details here!)
So again, many thanks to those above, as all the credit for this
series really is due to them - while the mistakes are likely mine.
Thanks so much!
-john
[1] https://static.lwn.net/images/conf/rtlws11/papers/proc/p38.pdf
Cc: Joel Fernandes <joelaf@google.com>
Cc: Qais Yousef <qyousef@layalina.io>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Juri Lelli <juri.lelli@redhat.com>
Cc: Vincent Guittot <vincent.guittot@linaro.org>
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com>
Cc: Valentin Schneider <vschneid@redhat.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Ben Segall <bsegall@google.com>
Cc: Zimuzo Ezeozue <zezeozue@google.com>
Cc: Mel Gorman <mgorman@suse.de>
Cc: Will Deacon <will@kernel.org>
Cc: Waiman Long <longman@redhat.com>
Cc: Boqun Feng <boqun.feng@gmail.com>
Cc: "Paul E. McKenney" <paulmck@kernel.org>
Cc: Metin Kaya <Metin.Kaya@arm.com>
Cc: Xuewen Yan <xuewen.yan94@gmail.com>
Cc: K Prateek Nayak <kprateek.nayak@amd.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Daniel Lezcano <daniel.lezcano@linaro.org>
Cc: kernel-team@android.com
Connor O'Brien (2):
sched: Add move_queued_task_locked helper
sched: Consolidate pick_*_task to task_is_pushable helper
John Stultz (1):
sched: Split out __schedule() deactivate task logic into a helper
Juri Lelli (2):
locking/mutex: Make mutex::wait_lock irq safe
locking/mutex: Expose __mutex_owner()
Peter Zijlstra (2):
locking/mutex: Remove wakeups from under mutex::wait_lock
sched: Split scheduler and execution contexts
kernel/futex/pi.c | 6 +-
kernel/locking/mutex.c | 59 ++++++---------
kernel/locking/mutex.h | 27 +++++++
kernel/locking/rtmutex.c | 49 +++++++++----
kernel/locking/rtmutex_api.c | 11 ++-
kernel/locking/rtmutex_common.h | 3 +-
kernel/locking/rwbase_rt.c | 8 ++-
kernel/locking/rwsem.c | 4 +-
kernel/locking/spinlock_rt.c | 3 +-
kernel/locking/ww_mutex.h | 51 +++++++------
kernel/sched/core.c | 123 ++++++++++++++++++--------------
kernel/sched/deadline.c | 57 ++++++---------
kernel/sched/fair.c | 28 ++++----
kernel/sched/pelt.c | 2 +-
kernel/sched/rt.c | 67 +++++++----------
kernel/sched/sched.h | 50 ++++++++++++-
kernel/sched/syscalls.c | 4 +-
17 files changed, 324 insertions(+), 228 deletions(-)
--
2.47.0.rc0.187.ge670bccf7e-goog
next reply other threads:[~2024-10-09 23:53 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-09 23:53 John Stultz [this message]
2024-10-09 23:53 ` [RESEND x3][PATCH v12 1/7] locking/mutex: Remove wakeups from under mutex::wait_lock John Stultz
2024-10-18 7:07 ` [tip: sched/core] " tip-bot2 for Peter Zijlstra
2024-10-09 23:53 ` [RESEND x3][PATCH v12 2/7] locking/mutex: Make mutex::wait_lock irq safe John Stultz
2024-10-10 14:00 ` Steven Rostedt
2024-10-10 14:05 ` Peter Zijlstra
2024-10-11 2:26 ` John Stultz
2024-10-11 2:31 ` Steven Rostedt
2024-10-18 7:07 ` [tip: sched/core] " tip-bot2 for Juri Lelli
2024-10-09 23:53 ` [RESEND x3][PATCH v12 3/7] locking/mutex: Expose __mutex_owner() John Stultz
2024-10-18 7:07 ` [tip: sched/core] " tip-bot2 for Juri Lelli
2024-10-09 23:53 ` [RESEND x3][PATCH v12 4/7] sched: Add move_queued_task_locked helper John Stultz
2024-10-18 7:07 ` [tip: sched/core] " tip-bot2 for Connor O'Brien
2024-10-09 23:53 ` [RESEND x3][PATCH v12 5/7] sched: Consolidate pick_*_task to task_is_pushable helper John Stultz
2024-10-18 7:07 ` [tip: sched/core] " tip-bot2 for Connor O'Brien
2024-10-09 23:53 ` [RESEND x3][PATCH v12 6/7] sched: Split out __schedule() deactivate task logic into a helper John Stultz
2024-10-18 7:07 ` [tip: sched/core] " tip-bot2 for John Stultz
2024-10-09 23:53 ` [RESEND x3][PATCH v12 7/7] sched: Split scheduler and execution contexts John Stultz
2024-10-18 7:07 ` [tip: sched/core] " tip-bot2 for Peter Zijlstra
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20241009235352.1614323-1-jstultz@google.com \
--to=jstultz@google.com \
--cc=Metin.Kaya@arm.com \
--cc=boqun.feng@gmail.com \
--cc=bsegall@google.com \
--cc=daniel.lezcano@linaro.org \
--cc=dietmar.eggemann@arm.com \
--cc=joelaf@google.com \
--cc=juri.lelli@redhat.com \
--cc=kernel-team@android.com \
--cc=kprateek.nayak@amd.com \
--cc=linux-kernel@vger.kernel.org \
--cc=longman@redhat.com \
--cc=mgorman@suse.de \
--cc=mingo@redhat.com \
--cc=paulmck@kernel.org \
--cc=peterz@infradead.org \
--cc=qyousef@layalina.io \
--cc=rostedt@goodmis.org \
--cc=tglx@linutronix.de \
--cc=vincent.guittot@linaro.org \
--cc=vschneid@redhat.com \
--cc=will@kernel.org \
--cc=xuewen.yan94@gmail.com \
--cc=zezeozue@google.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox