[PATCH 0/4 v0.5] sched/umcg: RFC UMCG patchset

From: Peter Oskolkov
Date: Wed Sep 08 2021 - 14:49:15 EST


This is an update on v0.4:
https://lore.kernel.org/lkml/20210801200617.623745-1-posk@xxxxxxxxxx/

Key changes:

v0.3 => v0.4:
- made idle workers list logic simpler
- only one idle server tracking
- removed two fields from struct umcg_task
- added timeout handling
- added worker preemption
- added a doc patch that now documents the syscalls and state
transitions.

v0.4 => v0.5:
- refactored idle workers list management, as suggested by
Thierry Delisle here:
https://lore.kernel.org/lkml/3530714d-125b-e0f5-45b2-72695e2fc4ee@xxxxxxxxxxxx/

I will now clean up libumcg (userspace) and selftests and post them
in a follow-up patchset.

Peter Oskolkov (4):
sched/umcg: add WF_CURRENT_CPU and externise ttwu
sched/umcg: RFC: add userspace atomic helpers
sched/umcg: RFC: implement UMCG syscalls
sched/umcg: add Documentation/userspace-api/umcg.rst

Documentation/userspace-api/umcg.rst | 546 ++++++++++++++++++++++
arch/x86/entry/syscalls/syscall_64.tbl | 2 +
include/linux/sched.h | 6 +
include/linux/syscalls.h | 4 +
include/uapi/asm-generic/unistd.h | 8 +-
include/uapi/linux/umcg.h | 114 +++++
init/Kconfig | 10 +
kernel/exit.c | 7 +
kernel/sched/Makefile | 1 +
kernel/sched/core.c | 20 +-
kernel/sched/fair.c | 4 +
kernel/sched/sched.h | 15 +-
kernel/sched/umcg.c | 618 +++++++++++++++++++++++++
kernel/sched/umcg.h | 325 +++++++++++++
kernel/sys_ni.c | 4 +
15 files changed, 1673 insertions(+), 11 deletions(-)
create mode 100644 Documentation/userspace-api/umcg.rst
create mode 100644 include/uapi/linux/umcg.h
create mode 100644 kernel/sched/umcg.c
create mode 100644 kernel/sched/umcg.h

--
2.25.1