[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20220113233940.3608440-1-posk@google.com>
Date: Thu, 13 Jan 2022 15:39:35 -0800
From: Peter Oskolkov <posk@...gle.com>
To: Peter Zijlstra <peterz@...radead.org>, mingo@...hat.com,
tglx@...utronix.de, juri.lelli@...hat.com,
vincent.guittot@...aro.org, dietmar.eggemann@....com,
rostedt@...dmis.org, bsegall@...gle.com, mgorman@...e.de,
bristot@...hat.com
Cc: linux-kernel@...r.kernel.org, linux-mm@...ck.org,
linux-api@...r.kernel.org, x86@...nel.org, pjt@...gle.com,
posk@...gle.com, avagin@...gle.com, jannh@...gle.com,
tdelisle@...terloo.ca, posk@...k.io
Subject: [RFC PATCH v2 0/5] User Managed Concurrency Groups
This adds two small patches on top of peterz@'s RFC from
https://lore.kernel.org/lkml/20211214204445.665580974@infradead.org/
The new patches are not fully tested - I'm still working on it.
I'll post another patch shortly that adds worker timeouts in
sys_umcg_wait().
Sending this out just to break the silence and to assess if the
approach I'm taking here is not strongly NACKed.
Peter Oskolkov (3):
sched/umcg: add WF_CURRENT_CPU and externise ttwu
sched: UMCG: add a blocked worker list
sched: UMCG: allow to sys_umcg_kick UMCG servers
Peter Zijlstra (2):
x86/uaccess: Implement unsafe_try_cmpxchg_user()
sched: User Mode Concurency Groups
arch/x86/Kconfig | 1 +
arch/x86/entry/syscalls/syscall_64.tbl | 3 +
arch/x86/include/asm/thread_info.h | 2 +
arch/x86/include/asm/uaccess.h | 57 ++
fs/exec.c | 1 +
include/linux/entry-common.h | 6 +
include/linux/sched.h | 86 +++
include/linux/syscalls.h | 4 +
include/linux/thread_info.h | 2 +
include/uapi/asm-generic/unistd.h | 9 +-
include/uapi/linux/umcg.h | 161 +++++
init/Kconfig | 15 +
kernel/entry/common.c | 18 +-
kernel/exit.c | 5 +
kernel/sched/Makefile | 1 +
kernel/sched/core.c | 12 +-
kernel/sched/fair.c | 4 +
kernel/sched/sched.h | 15 +-
kernel/sched/umcg.c | 913 +++++++++++++++++++++++++
kernel/sys_ni.c | 5 +
20 files changed, 1305 insertions(+), 15 deletions(-)
create mode 100644 include/uapi/linux/umcg.h
create mode 100644 kernel/sched/umcg.c
base-commit: 85538cc07d6b6dcffc1df64a22308fcb05ecddf4
--
2.34.1.703.g22d0c6ccf7-goog
Powered by blists - more mailing lists