From: Eugene Syromiatnikov <esyr@redhat.com>
Date: Wed, 25 Aug 2021 19:06:13 +0200
Subject: uapi/linux/prctl: provide macro definitions for the PR_SCHED_CORE
 type argument
Git-commit: 61bc346ce64a3864ac55f5d18bdc1572cda4fb18
Patch-mainline: v5.16-rc1
References: bsc#1194659

Commit 7ac592aa35a684ff ("sched: prctl() core-scheduling interface")
made use of enum pid_type in prctl's arg4; this type and the associated
enumeration definitions are not exposed to userspace.  Christian
has suggested to provide additional macro definitions that convey
the meaning of the type argument more in alignment with its actual
usage, and this patch does exactly that.

Link: https://lore.kernel.org/r/20210825170613.GA3884@asgard.redhat.com
Suggested-by: Christian Brauner <christian.brauner@ubuntu.com>
Acked-by: Christian Brauner <christian.brauner@ubuntu.com>
Signed-off-by: Eugene Syromiatnikov <esyr@redhat.com>
Complements: 7ac592aa35a684ff ("sched: prctl() core-scheduling interface")
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Acked-by: Dario Faggioli <dfaggioli@suse.com>

Get rid of the non-uapi bits, and tweak the path so that it applies.

Signed-off-by: Dario Faggioli <dfaggioli@suse.com>
---
 include/uapi/linux/prctl.h                            | 3 +++
 1 files changed, 3 insertions(+)

diff --git a/include/linux/prctl.h b/include/linux/prctl.h
index 43bd7f713c39..b2e4dc1449b9 100644
--- a/include/linux/prctl.h
+++ b/include/linux/prctl.h
@@ -268,5 +268,8 @@ struct prctl_mm_map {
 # define PR_SCHED_CORE_SHARE_TO		2 /* push core_sched cookie to pid */
 # define PR_SCHED_CORE_SHARE_FROM	3 /* pull core_sched cookie to pid */
 # define PR_SCHED_CORE_MAX		4
+# define PR_SCHED_CORE_SCOPE_THREAD		0
+# define PR_SCHED_CORE_SCOPE_THREAD_GROUP	1
+# define PR_SCHED_CORE_SCOPE_PROCESS_GROUP	2
 
 #endif /* _LINUX_PRCTL_H */
