[RFC PATCH v2 0/5] User Managed Concurrency Groups

From: Peter Oskolkov
Date: Thu Jan 13 2022 - 18:40:08 EST


This adds two small patches on top of peterz@'s RFC from
https://lore.kernel.org/lkml/20211214204445.665580974@xxxxxxxxxxxxx/


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