Messages in this thread | | | Date | Thu, 1 Aug 2019 21:55:06 +0200 | From | Christian Brauner <> | Subject | Re: [PATCH 07/12] tools headers UAPI: Sync sched.h with the kernel |
| |
On Mon, Jul 29, 2019 at 06:14:54PM -0300, Arnaldo Carvalho de Melo wrote: > From: Arnaldo Carvalho de Melo <acme@redhat.com> > > To get the changes in: > > a509a7cd7974 ("sched/uclamp: Extend sched_setattr() to support utilization clamping") > 1d6362fa0cfc ("sched/core: Allow sched_setattr() to use the current policy") > 7f192e3cd316 ("fork: add clone3") > > And silence this perf build warning: > > Warning: Kernel ABI header at 'tools/include/uapi/linux/sched.h' differs from latest version at 'include/uapi/linux/sched.h' > diff -u tools/include/uapi/linux/sched.h include/uapi/linux/sched.h > > No changes in tools/ due to the above. > > Cc: Adrian Hunter <adrian.hunter@intel.com> > Cc: Christian Brauner <christian@brauner.io> > Cc: Jiri Olsa <jolsa@kernel.org> > Cc: Luis Cláudio Gonçalves <lclaudio@redhat.com> > Cc: Namhyung Kim <namhyung@kernel.org> > Cc: Patrick Bellasi <patrick.bellasi@arm.com> > Link: https://lkml.kernel.org/n/tip-mtrpsjrux5hgyr5uf8l1aa46@git.kernel.org > Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Thanks! For the struct clone_args addition: Acked-by: Christian Brauner <christian.brauner@ubuntu.com>
> --- > tools/include/uapi/linux/sched.h | 30 +++++++++++++++++++++++++++++- > 1 file changed, 29 insertions(+), 1 deletion(-) > > diff --git a/tools/include/uapi/linux/sched.h b/tools/include/uapi/linux/sched.h > index ed4ee170bee2..b3105ac1381a 100644 > --- a/tools/include/uapi/linux/sched.h > +++ b/tools/include/uapi/linux/sched.h > @@ -2,6 +2,8 @@ > #ifndef _UAPI_LINUX_SCHED_H > #define _UAPI_LINUX_SCHED_H > > +#include <linux/types.h> > + > /* > * cloning flags: > */ > @@ -31,6 +33,20 @@ > #define CLONE_NEWNET 0x40000000 /* New network namespace */ > #define CLONE_IO 0x80000000 /* Clone io context */ > > +/* > + * Arguments for the clone3 syscall > + */ > +struct clone_args { > + __aligned_u64 flags; > + __aligned_u64 pidfd; > + __aligned_u64 child_tid; > + __aligned_u64 parent_tid; > + __aligned_u64 exit_signal; > + __aligned_u64 stack; > + __aligned_u64 stack_size; > + __aligned_u64 tls; > +}; > + > /* > * Scheduling policies > */ > @@ -51,9 +67,21 @@ > #define SCHED_FLAG_RESET_ON_FORK 0x01 > #define SCHED_FLAG_RECLAIM 0x02 > #define SCHED_FLAG_DL_OVERRUN 0x04 > +#define SCHED_FLAG_KEEP_POLICY 0x08 > +#define SCHED_FLAG_KEEP_PARAMS 0x10 > +#define SCHED_FLAG_UTIL_CLAMP_MIN 0x20 > +#define SCHED_FLAG_UTIL_CLAMP_MAX 0x40 > + > +#define SCHED_FLAG_KEEP_ALL (SCHED_FLAG_KEEP_POLICY | \ > + SCHED_FLAG_KEEP_PARAMS) > + > +#define SCHED_FLAG_UTIL_CLAMP (SCHED_FLAG_UTIL_CLAMP_MIN | \ > + SCHED_FLAG_UTIL_CLAMP_MAX) > > #define SCHED_FLAG_ALL (SCHED_FLAG_RESET_ON_FORK | \ > SCHED_FLAG_RECLAIM | \ > - SCHED_FLAG_DL_OVERRUN) > + SCHED_FLAG_DL_OVERRUN | \ > + SCHED_FLAG_KEEP_ALL | \ > + SCHED_FLAG_UTIL_CLAMP) > > #endif /* _UAPI_LINUX_SCHED_H */ > -- > 2.21.0 >
| |