From patchwork Tue Nov 29 06:40:59 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yang Xu X-Patchwork-Id: 1710024 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=lists.linux.it (client-ip=213.254.12.146; helo=picard.linux.it; envelope-from=ltp-bounces+incoming=patchwork.ozlabs.org@lists.linux.it; receiver=) Authentication-Results: legolas.ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=fujitsu.com header.i=@fujitsu.com header.a=rsa-sha256 header.s=170520fj header.b=ILsbAU5Q; dkim-atps=neutral Received: from picard.linux.it (picard.linux.it [213.254.12.146]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4NLrll5ZN5z23ng for ; Tue, 29 Nov 2022 16:40:34 +1100 (AEDT) Received: from picard.linux.it (localhost [IPv6:::1]) by picard.linux.it (Postfix) with ESMTP id 4CCB13CC59F for ; Tue, 29 Nov 2022 06:40:31 +0100 (CET) X-Original-To: ltp@lists.linux.it Delivered-To: ltp@picard.linux.it Received: from in-5.smtp.seeweb.it (in-5.smtp.seeweb.it [IPv6:2001:4b78:1:20::5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384)) (No client certificate requested) by picard.linux.it (Postfix) with ESMTPS id 32A573CC590 for ; Tue, 29 Nov 2022 06:40:28 +0100 (CET) Received: from mail1.bemta32.messagelabs.com (mail1.bemta32.messagelabs.com [195.245.230.1]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by in-5.smtp.seeweb.it (Postfix) with ESMTPS id 154F66005E0 for ; Tue, 29 Nov 2022 06:40:25 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fujitsu.com; s=170520fj; t=1669700425; i=@fujitsu.com; bh=X3vvMXA1jI74qO00gUaHRN4dP0VQEw5ekNcpDlYtr5s=; h=From:To:CC:Subject:Date:Message-ID:MIME-Version:Content-Type; b=ILsbAU5QOEyItf5yZBUK1LMnSBhKILgoWWTyGncABrweU4N8i7jiArnhFd2PiEdtG G+nkvtjO1yiFEvdtmMNv1UTZySrbFesDe6JC64pLJezIh/9GyvwI7+mOekG74cHjvW 5BKU3qAfVr73wGDd6FwJGa/COKWS6du169PscyqYkg2fKN1hGWqL2Ynh6vryOPk3q9 IWNBynnbTNQcvB9jonVkhxfeZJLhtmVyKXOqIQQufXYcB3XGooOpE6k/qKu8tYLMjj d5rU37c8wFGrXdWjbhTzKoxyyf32pJcCBlOu8G1PBk5JwuYYmhqnAFjo46F/vLFbMu OxlKP6Y3WiPIg== X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFjrEIsWRWlGSWpSXmKPExsViZ8ORqOsxuzX Z4OAkKYsV33cwOjB67Pu9jjWAMYo1My8pvyKBNePK0sOsBdMmMlY0zuxnb2Bc38jYxcjFISRw llHiw+4nUM4BJolzp3awdTFyAjl7GCVer1IEsdkENCWedS5gBrFFBCQkOhresoPYzALqEssn/ WICsYUF4iR2PtwKVsMioCqx/8RjsDivgIfEplcbwWwJAQWJKQ/fM0PEBSVOznzCAjFHQuLgix fMEDWKEpc6vjFC2BUSs2a1QfWqSVw9t4l5AiP/LCTts5C0L2BkWsVoVpxaVJZapGtorpdUlJm eUZKbmJmjl1ilm6iXWqpbnlpcomuol1herJdaXKxXXJmbnJOil5dasokRGJApxewCOxiPLPuj d4hRkoNJSZT3RUVrshBfUn5KZUZicUZ8UWlOavEhRhkODiUJXsUZQDnBotT01Iq0zBxgdMCkJ Th4lER47SqB0rzFBYm5xZnpEKlTjMYcaxsO7GXmmDr7335mIZa8/LxUKXHenFlApQIgpRmleX CDYFF7iVFWSpiXkYGBQYinILUoN7MEVf4VozgHo5Iwb/B0oCk8mXklcPteAZ3CBHTKJsUmkFN KEhFSUg1McWXLhY/OCnyw1fNxwDRmnadv32Ss/vRv37bIuamPnbz+1nYkP+4I4Lq61Tll9eNl 6V80zfWmik7P9ogWOelVcL72/Qqv0GfzL6c/2eexVHEyB//rh1X5H80DPjdMdefhm7RN4cPsa 5wvj9ZOE+WY9u/cmkPb19Xr+xs/5sg6eX1qwBLXPoMvCnlL5E2uijUsZbnqp8+01s5SpmZbvr X6x7gZ9rd5jqukzt/iuS+2nXeTxUV15lzWutQeC9YqxXtv7aNYzi5ZpHyC5dGlxslT+sOZWFg F7BxvLPThfVtc94TtQVNsWFzOo01Se38INvUYXOE0ypvxYO12Bf/8tcd+zEw67Wm8xl6/W8K/ a+kDJZbijERDLeai4kQAn01yLlUDAAA= X-Env-Sender: xuyang2018.jy@fujitsu.com X-Msg-Ref: server-12.tower-591.messagelabs.com!1669700424!225822!1 X-Originating-IP: [62.60.8.97] X-SYMC-ESS-Client-Auth: outbound-route-from=pass X-StarScan-Received: X-StarScan-Version: 9.101.1; banners=-,-,- X-VirusChecked: Checked Received: (qmail 19958 invoked from network); 29 Nov 2022 05:40:24 -0000 Received: from unknown (HELO n03ukasimr01.n03.fujitsu.local) (62.60.8.97) by server-12.tower-591.messagelabs.com with ECDHE-RSA-AES256-GCM-SHA384 encrypted SMTP; 29 Nov 2022 05:40:24 -0000 Received: from n03ukasimr01.n03.fujitsu.local (localhost [127.0.0.1]) by n03ukasimr01.n03.fujitsu.local (Postfix) with ESMTP id 08799100182 for ; Tue, 29 Nov 2022 05:40:24 +0000 (GMT) Received: from R01UKEXCASM126.r01.fujitsu.local (R01UKEXCASM126 [10.183.43.178]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by n03ukasimr01.n03.fujitsu.local (Postfix) with ESMTPS id F0A29100043 for ; Tue, 29 Nov 2022 05:40:23 +0000 (GMT) Received: from localhost.localdomain (10.167.220.84) by R01UKEXCASM126.r01.fujitsu.local (10.183.43.178) with Microsoft SMTP Server (TLS) id 15.0.1497.32; Tue, 29 Nov 2022 05:40:22 +0000 From: Yang Xu To: Date: Tue, 29 Nov 2022 14:40:59 +0800 Message-ID: <1669704060-5635-1-git-send-email-xuyang2018.jy@fujitsu.com> X-Mailer: git-send-email 1.8.3.1 MIME-Version: 1.0 X-Originating-IP: [10.167.220.84] X-ClientProxiedBy: G08CNEXCHPEKD07.g08.fujitsu.local (10.167.33.80) To R01UKEXCASM126.r01.fujitsu.local (10.183.43.178) X-Virus-Scanned: clamav-milter 0.102.4 at in-5.smtp.seeweb.it X-Virus-Status: Clean X-Spam-Status: No, score=0.1 required=7.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_NONE,SPF_PASS autolearn=disabled version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on in-5.smtp.seeweb.it Subject: [LTP] [PATCH v1 1/2] include/lapi/sched.h: move namespaces_constants.h's constant into here X-BeenThere: ltp@lists.linux.it X-Mailman-Version: 2.1.29 Precedence: list List-Id: Linux Test Project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: ltp-bounces+incoming=patchwork.ozlabs.org@lists.linux.it Sender: "ltp" Kernel header doesn't have this namespaces_constants.h header file and it can be moved into lapi/sched. Also, lapi/clone.h have some duplicated CLONE_* constants, they should be moved into here too. Signed-off-by: Yang Xu Reviewed-by: Li Wang Acked-by: Richard Palethorpe --- include/lapi/namespaces_constants.h | 34 --------------- include/lapi/sched.h | 41 +++++++++++++++++-- lib/tst_net.c | 2 +- testcases/cve/cve-2017-16939.c | 2 +- testcases/cve/icmp_rate_limit01.c | 2 +- .../kernel/containers/libclone/libclone.h | 3 +- testcases/kernel/containers/mountns/mountns.h | 2 +- .../kernel/containers/netns/netns_netlink.c | 3 +- testcases/kernel/containers/pidns/pidns01.c | 2 +- testcases/kernel/containers/pidns/pidns02.c | 2 +- testcases/kernel/containers/pidns/pidns03.c | 2 +- testcases/kernel/containers/pidns/pidns12.c | 2 +- testcases/kernel/containers/pidns/pidns20.c | 2 +- testcases/kernel/containers/pidns/pidns32.c | 2 +- testcases/kernel/containers/share/ns_common.h | 2 +- testcases/kernel/containers/share/ns_create.c | 3 +- testcases/kernel/containers/share/ns_exec.c | 3 +- testcases/kernel/containers/sysvipc/common.h | 2 +- testcases/kernel/containers/timens/timens01.c | 2 +- testcases/kernel/containers/userns/common.h | 2 +- .../kernel/controllers/cgroup/cgroup_core02.c | 3 +- .../syscalls/clock_gettime/clock_gettime03.c | 2 +- .../clock_nanosleep/clock_nanosleep03.c | 2 +- testcases/kernel/syscalls/clone/clone09.c | 3 +- .../kernel/syscalls/fanotify/fanotify17.c | 3 +- .../kernel/syscalls/getxattr/getxattr05.c | 3 +- testcases/kernel/syscalls/ioctl/ioctl_ns01.c | 3 +- testcases/kernel/syscalls/ioctl/ioctl_ns05.c | 3 +- testcases/kernel/syscalls/ioctl/ioctl_ns06.c | 3 +- testcases/kernel/syscalls/setns/setns.h | 2 +- testcases/kernel/syscalls/sysinfo/sysinfo03.c | 2 +- testcases/kernel/syscalls/timerfd/timerfd04.c | 2 +- 32 files changed, 67 insertions(+), 79 deletions(-) delete mode 100644 include/lapi/namespaces_constants.h diff --git a/include/lapi/namespaces_constants.h b/include/lapi/namespaces_constants.h deleted file mode 100644 index e34b0d6a8..000000000 --- a/include/lapi/namespaces_constants.h +++ /dev/null @@ -1,34 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0-or-later -/* - * Copyright (c) 2015 Red Hat, Inc. - */ - -#ifndef LAPI_NAMESPACES_CONSTANTS_H__ -#define LAPI_NAMESPACES_CONSTANTS_H__ - -#ifndef CLONE_NEWIPC -# define CLONE_NEWIPC 0x08000000 -#endif -#ifndef CLONE_NEWNS -# define CLONE_NEWNS 0x00020000 -#endif -#ifndef CLONE_NEWNET -# define CLONE_NEWNET 0x40000000 -#endif -#ifndef CLONE_NEWPID -# define CLONE_NEWPID 0x20000000 -#endif -#ifndef CLONE_NEWUSER -# define CLONE_NEWUSER 0x10000000 -#endif -#ifndef CLONE_NEWCGROUP -# define CLONE_NEWCGROUP 0x02000000 -#endif -#ifndef CLONE_NEWUTS -# define CLONE_NEWUTS 0x04000000 -#endif -#ifndef CLONE_NEWTIME -# define CLONE_NEWTIME 0x00000080 -#endif - -#endif /* LAPI_NAMESPACES_CONSTANTS_H__ */ diff --git a/include/lapi/sched.h b/include/lapi/sched.h index 226d3109a..3b0b4be31 100644 --- a/include/lapi/sched.h +++ b/include/lapi/sched.h @@ -8,6 +8,7 @@ #define LAPI_SCHED_H__ #include +#include #include #include #include "lapi/syscalls.h" @@ -47,19 +48,51 @@ static inline int sched_getattr(pid_t pid, struct sched_attr *attr, #endif #ifndef CLONE_VM -# define CLONE_VM 0x00000100 +# define CLONE_VM 0x00000100 #endif #ifndef CLONE_FS -# define CLONE_FS 0x00000200 +# define CLONE_FS 0x00000200 +#endif + +#ifndef CLONE_NEWNS +# define CLONE_NEWNS 0x00020000 #endif #ifndef CLONE_SYSVSEM -# define CLONE_SYSVSEM 0x00040000 +# define CLONE_SYSVSEM 0x00040000 +#endif + +#ifndef CLONE_NEWCGROUP +# define CLONE_NEWCGROUP 0x02000000 +#endif + +#ifndef CLONE_NEWUTS +# define CLONE_NEWUTS 0x04000000 +#endif + +#ifndef CLONE_NEWIPC +# define CLONE_NEWIPC 0x08000000 +#endif + +#ifndef CLONE_NEWUSER +# define CLONE_NEWUSER 0x10000000 +#endif + +#ifndef CLONE_NEWPID +# define CLONE_NEWPID 0x20000000 +#endif + +#ifndef CLONE_NEWNET +# define CLONE_NEWNET 0x40000000 #endif #ifndef CLONE_IO -# define CLONE_IO 0x80000000 +# define CLONE_IO 0x80000000 +#endif + +#ifndef CLONE_NEWTIME +# define CLONE_NEWTIME 0x00000080 #endif #endif /* LAPI_SCHED_H__ */ diff --git a/lib/tst_net.c b/lib/tst_net.c index 61fc0ea76..a97e25b11 100644 --- a/lib/tst_net.c +++ b/lib/tst_net.c @@ -14,7 +14,7 @@ #include "tst_test.h" #include "tst_net.h" #include "tst_private.h" -#include "lapi/namespaces_constants.h" +#include "lapi/sched.h" void tst_print_svar(const char *name, const char *val) { diff --git a/testcases/cve/cve-2017-16939.c b/testcases/cve/cve-2017-16939.c index eb5400c0c..e41fb274a 100644 --- a/testcases/cve/cve-2017-16939.c +++ b/testcases/cve/cve-2017-16939.c @@ -25,7 +25,7 @@ #include "tst_res_flags.h" #include "tst_safe_macros.h" #include "tst_safe_net.h" -#include "lapi/namespaces_constants.h" +#include "lapi/sched.h" #define BUFSIZE 2048 diff --git a/testcases/cve/icmp_rate_limit01.c b/testcases/cve/icmp_rate_limit01.c index 7a51aa0a4..8ee50a276 100644 --- a/testcases/cve/icmp_rate_limit01.c +++ b/testcases/cve/icmp_rate_limit01.c @@ -34,7 +34,7 @@ #include "lapi/if_addr.h" #include "tst_test.h" #include "tst_netdevice.h" -#include "lapi/namespaces_constants.h" +#include "lapi/sched.h" #define DSTNET 0xfa444e00 /* 250.68.78.0 */ #define SRCNET 0xfa444e40 /* 250.68.78.64 */ diff --git a/testcases/kernel/containers/libclone/libclone.h b/testcases/kernel/containers/libclone/libclone.h index b8740f1bc..e92fdca02 100644 --- a/testcases/kernel/containers/libclone/libclone.h +++ b/testcases/kernel/containers/libclone/libclone.h @@ -19,7 +19,6 @@ #include #include -#include #include #include #include @@ -28,7 +27,7 @@ #include #include "lapi/syscalls.h" #include "test.h" -#include "lapi/namespaces_constants.h" +#include "lapi/sched.h" #define T_UNSHARE 0 #define T_CLONE 1 diff --git a/testcases/kernel/containers/mountns/mountns.h b/testcases/kernel/containers/mountns/mountns.h index 76b37b477..615f1a058 100644 --- a/testcases/kernel/containers/mountns/mountns.h +++ b/testcases/kernel/containers/mountns/mountns.h @@ -8,7 +8,7 @@ #define COMMON_H #include "tst_test.h" -#include "lapi/namespaces_constants.h" +#include "lapi/sched.h" #define DIRA "LTP_DIR_A" #define DIRB "LTP_DIR_B" diff --git a/testcases/kernel/containers/netns/netns_netlink.c b/testcases/kernel/containers/netns/netns_netlink.c index 6f60ff94e..e8df616e2 100644 --- a/testcases/kernel/containers/netns/netns_netlink.c +++ b/testcases/kernel/containers/netns/netns_netlink.c @@ -33,11 +33,10 @@ #include #include #include -#include #include "tst_test.h" #include "tst_safe_macros.h" -#include "lapi/namespaces_constants.h" +#include "lapi/sched.h" #define MAX_TRIES 1000 diff --git a/testcases/kernel/containers/pidns/pidns01.c b/testcases/kernel/containers/pidns/pidns01.c index eba4b806b..5080b6fad 100644 --- a/testcases/kernel/containers/pidns/pidns01.c +++ b/testcases/kernel/containers/pidns/pidns01.c @@ -15,7 +15,7 @@ */ #include "tst_test.h" -#include "lapi/namespaces_constants.h" +#include "lapi/sched.h" static int child_func(LTP_ATTRIBUTE_UNUSED void *arg) { diff --git a/testcases/kernel/containers/pidns/pidns02.c b/testcases/kernel/containers/pidns/pidns02.c index 9f3a46526..b8913d3f6 100644 --- a/testcases/kernel/containers/pidns/pidns02.c +++ b/testcases/kernel/containers/pidns/pidns02.c @@ -14,7 +14,7 @@ */ #include "tst_test.h" -#include "lapi/namespaces_constants.h" +#include "lapi/sched.h" static int child_func(LTP_ATTRIBUTE_UNUSED void *arg) { diff --git a/testcases/kernel/containers/pidns/pidns03.c b/testcases/kernel/containers/pidns/pidns03.c index b9b38b5d9..122ba7891 100644 --- a/testcases/kernel/containers/pidns/pidns03.c +++ b/testcases/kernel/containers/pidns/pidns03.c @@ -13,7 +13,7 @@ #include #include "tst_test.h" -#include "lapi/namespaces_constants.h" +#include "lapi/sched.h" #define PROCDIR "proc" diff --git a/testcases/kernel/containers/pidns/pidns12.c b/testcases/kernel/containers/pidns/pidns12.c index 0e6b17142..fb1ec90ca 100644 --- a/testcases/kernel/containers/pidns/pidns12.c +++ b/testcases/kernel/containers/pidns/pidns12.c @@ -16,7 +16,7 @@ #define _GNU_SOURCE 1 #include #include "tst_test.h" -#include "lapi/namespaces_constants.h" +#include "lapi/sched.h" static volatile pid_t sig_pid = -1; diff --git a/testcases/kernel/containers/pidns/pidns20.c b/testcases/kernel/containers/pidns/pidns20.c index f1e239dde..9f369699a 100644 --- a/testcases/kernel/containers/pidns/pidns20.c +++ b/testcases/kernel/containers/pidns/pidns20.c @@ -15,7 +15,7 @@ #define _GNU_SOURCE 1 #include #include "tst_test.h" -#include "lapi/namespaces_constants.h" +#include "lapi/sched.h" static volatile int signals; static volatile int last_signo; diff --git a/testcases/kernel/containers/pidns/pidns32.c b/testcases/kernel/containers/pidns/pidns32.c index 333e1fcad..3f7df788e 100644 --- a/testcases/kernel/containers/pidns/pidns32.c +++ b/testcases/kernel/containers/pidns/pidns32.c @@ -15,7 +15,7 @@ #include #include "tst_test.h" -#include "lapi/namespaces_constants.h" +#include "lapi/sched.h" #define MAXNEST 32 diff --git a/testcases/kernel/containers/share/ns_common.h b/testcases/kernel/containers/share/ns_common.h index 69e51ce71..0f85aceb4 100644 --- a/testcases/kernel/containers/share/ns_common.h +++ b/testcases/kernel/containers/share/ns_common.h @@ -17,7 +17,7 @@ #ifndef __NS_COMMON_H__ #define __NS_COMMON_H__ #include -#include "lapi/namespaces_constants.h" +#include "lapi/sched.h" #define PROC_PATH "/proc" #define NS_TOTAL 6 diff --git a/testcases/kernel/containers/share/ns_create.c b/testcases/kernel/containers/share/ns_create.c index d4259f38b..3f09e71e0 100644 --- a/testcases/kernel/containers/share/ns_create.c +++ b/testcases/kernel/containers/share/ns_create.c @@ -24,7 +24,6 @@ */ #define _GNU_SOURCE -#include #include #include #include @@ -32,7 +31,7 @@ #include #include #include "test.h" -#include "lapi/namespaces_constants.h" +#include "lapi/sched.h" #include "ns_common.h" char *TCID = "ns_create"; diff --git a/testcases/kernel/containers/share/ns_exec.c b/testcases/kernel/containers/share/ns_exec.c index c492165f0..4abd1063b 100644 --- a/testcases/kernel/containers/share/ns_exec.c +++ b/testcases/kernel/containers/share/ns_exec.c @@ -21,7 +21,6 @@ */ #define _GNU_SOURCE -#include #include #include #include @@ -31,7 +30,7 @@ #include #include "test.h" #include "lapi/syscalls.h" -#include "lapi/namespaces_constants.h" +#include "lapi/sched.h" #include "ns_common.h" char *TCID = "ns_exec"; diff --git a/testcases/kernel/containers/sysvipc/common.h b/testcases/kernel/containers/sysvipc/common.h index 258d355d7..9b0fc16e9 100644 --- a/testcases/kernel/containers/sysvipc/common.h +++ b/testcases/kernel/containers/sysvipc/common.h @@ -11,7 +11,7 @@ #include #include "tst_test.h" #include "lapi/syscalls.h" -#include "lapi/namespaces_constants.h" +#include "lapi/sched.h" enum { T_CLONE, diff --git a/testcases/kernel/containers/timens/timens01.c b/testcases/kernel/containers/timens/timens01.c index 3f6235ec3..3621b3446 100644 --- a/testcases/kernel/containers/timens/timens01.c +++ b/testcases/kernel/containers/timens/timens01.c @@ -15,9 +15,9 @@ */ #define _GNU_SOURCE -#include "lapi/namespaces_constants.h" #include "lapi/posix_clocks.h" #include "tst_test.h" +#include "lapi/sched.h" static struct tcase { const char *desc; diff --git a/testcases/kernel/containers/userns/common.h b/testcases/kernel/containers/userns/common.h index d3bdcc53f..635d0f190 100644 --- a/testcases/kernel/containers/userns/common.h +++ b/testcases/kernel/containers/userns/common.h @@ -8,7 +8,7 @@ #define COMMON_H #include "tst_test.h" -#include "lapi/namespaces_constants.h" +#include "lapi/sched.h" #define UID_MAP 0 #define GID_MAP 1 diff --git a/testcases/kernel/controllers/cgroup/cgroup_core02.c b/testcases/kernel/controllers/cgroup/cgroup_core02.c index e6d599b36..1872a7dff 100644 --- a/testcases/kernel/controllers/cgroup/cgroup_core02.c +++ b/testcases/kernel/controllers/cgroup/cgroup_core02.c @@ -24,14 +24,13 @@ */ #define _GNU_SOURCE -#include #include #include #include #include #include "tst_test.h" #include "tst_safe_file_at.h" -#include "lapi/namespaces_constants.h" +#include "lapi/sched.h" static struct tst_cg_group *cg_child_a, *cg_child_b; static uid_t nobody_uid; diff --git a/testcases/kernel/syscalls/clock_gettime/clock_gettime03.c b/testcases/kernel/syscalls/clock_gettime/clock_gettime03.c index f185977d3..b02d22a14 100644 --- a/testcases/kernel/syscalls/clock_gettime/clock_gettime03.c +++ b/testcases/kernel/syscalls/clock_gettime/clock_gettime03.c @@ -18,7 +18,7 @@ #include "time64_variants.h" #include "tst_safe_clocks.h" #include "tst_timer.h" -#include "lapi/namespaces_constants.h" +#include "lapi/sched.h" static struct tcase { int clk_id; diff --git a/testcases/kernel/syscalls/clock_nanosleep/clock_nanosleep03.c b/testcases/kernel/syscalls/clock_nanosleep/clock_nanosleep03.c index 5bd91fa61..dfc522278 100644 --- a/testcases/kernel/syscalls/clock_nanosleep/clock_nanosleep03.c +++ b/testcases/kernel/syscalls/clock_nanosleep/clock_nanosleep03.c @@ -18,7 +18,7 @@ #include "time64_variants.h" #include "tst_safe_clocks.h" #include "tst_timer.h" -#include "lapi/namespaces_constants.h" +#include "lapi/sched.h" #define OFFSET_S 10 #define SLEEP_US 100000 diff --git a/testcases/kernel/syscalls/clone/clone09.c b/testcases/kernel/syscalls/clone/clone09.c index e9e584564..e4691f513 100644 --- a/testcases/kernel/syscalls/clone/clone09.c +++ b/testcases/kernel/syscalls/clone/clone09.c @@ -4,14 +4,13 @@ */ #define _GNU_SOURCE -#include #include #include #include "tst_test.h" #include "clone_platform.h" #include "lapi/syscalls.h" -#include "lapi/namespaces_constants.h" +#include "lapi/sched.h" static void *child_stack; static int sysctl_net = -1; diff --git a/testcases/kernel/syscalls/fanotify/fanotify17.c b/testcases/kernel/syscalls/fanotify/fanotify17.c index 7d74b2540..3ecb31b6e 100644 --- a/testcases/kernel/syscalls/fanotify/fanotify17.c +++ b/testcases/kernel/syscalls/fanotify/fanotify17.c @@ -20,11 +20,10 @@ #include #include #include -#include #include #include "tst_test.h" -#include "lapi/namespaces_constants.h" +#include "lapi/sched.h" #ifdef HAVE_SYS_FANOTIFY_H #include "fanotify.h" diff --git a/testcases/kernel/syscalls/getxattr/getxattr05.c b/testcases/kernel/syscalls/getxattr/getxattr05.c index 3e73cc567..28eb4cbcf 100644 --- a/testcases/kernel/syscalls/getxattr/getxattr05.c +++ b/testcases/kernel/syscalls/getxattr/getxattr05.c @@ -20,7 +20,6 @@ #include #include #include -#include #include #ifdef HAVE_SYS_XATTR_H @@ -32,7 +31,7 @@ #endif #include "tst_test.h" -#include "lapi/namespaces_constants.h" +#include "lapi/sched.h" #if defined(HAVE_SYS_XATTR_H) && defined(HAVE_LIBACL) diff --git a/testcases/kernel/syscalls/ioctl/ioctl_ns01.c b/testcases/kernel/syscalls/ioctl/ioctl_ns01.c index 95be877dc..06c81ba1b 100644 --- a/testcases/kernel/syscalls/ioctl/ioctl_ns01.c +++ b/testcases/kernel/syscalls/ioctl/ioctl_ns01.c @@ -19,11 +19,10 @@ #define _GNU_SOURCE #include -#include #include #include "tst_test.h" #include "lapi/ioctl_ns.h" -#include "lapi/namespaces_constants.h" +#include "lapi/sched.h" #define STACK_SIZE (1024 * 1024) diff --git a/testcases/kernel/syscalls/ioctl/ioctl_ns05.c b/testcases/kernel/syscalls/ioctl/ioctl_ns05.c index ae2f9da51..36e41c468 100644 --- a/testcases/kernel/syscalls/ioctl/ioctl_ns05.c +++ b/testcases/kernel/syscalls/ioctl/ioctl_ns05.c @@ -18,11 +18,10 @@ #include #include -#include #include #include "tst_test.h" #include "lapi/ioctl_ns.h" -#include "lapi/namespaces_constants.h" +#include "lapi/sched.h" #define STACK_SIZE (1024 * 1024) diff --git a/testcases/kernel/syscalls/ioctl/ioctl_ns06.c b/testcases/kernel/syscalls/ioctl/ioctl_ns06.c index 393ba1437..45fc01ce7 100644 --- a/testcases/kernel/syscalls/ioctl/ioctl_ns06.c +++ b/testcases/kernel/syscalls/ioctl/ioctl_ns06.c @@ -19,11 +19,10 @@ #include #include -#include #include #include "tst_test.h" #include "lapi/ioctl_ns.h" -#include "lapi/namespaces_constants.h" +#include "lapi/sched.h" #define STACK_SIZE (1024 * 1024) diff --git a/testcases/kernel/syscalls/setns/setns.h b/testcases/kernel/syscalls/setns/setns.h index 46beef17f..45c759917 100644 --- a/testcases/kernel/syscalls/setns/setns.h +++ b/testcases/kernel/syscalls/setns/setns.h @@ -4,7 +4,7 @@ */ #include -#include "lapi/namespaces_constants.h" +#include "lapi/sched.h" #define NS_MAX 5 static int ns_types[NS_MAX]; diff --git a/testcases/kernel/syscalls/sysinfo/sysinfo03.c b/testcases/kernel/syscalls/sysinfo/sysinfo03.c index af7cb6421..6b8f0aef7 100644 --- a/testcases/kernel/syscalls/sysinfo/sysinfo03.c +++ b/testcases/kernel/syscalls/sysinfo/sysinfo03.c @@ -14,9 +14,9 @@ */ #include -#include "lapi/namespaces_constants.h" #include "lapi/posix_clocks.h" #include "tst_test.h" +#include "lapi/sched.h" static int offsets[] = { 10, diff --git a/testcases/kernel/syscalls/timerfd/timerfd04.c b/testcases/kernel/syscalls/timerfd/timerfd04.c index eb7f98d5b..b24b4874e 100644 --- a/testcases/kernel/syscalls/timerfd/timerfd04.c +++ b/testcases/kernel/syscalls/timerfd/timerfd04.c @@ -19,7 +19,7 @@ #include "tst_safe_clocks.h" #include "tst_safe_timerfd.h" #include "tst_timer.h" -#include "lapi/namespaces_constants.h" +#include "lapi/sched.h" #define SLEEP_US 40000 From patchwork Tue Nov 29 06:41:00 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yang Xu X-Patchwork-Id: 1710025 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=lists.linux.it (client-ip=213.254.12.146; helo=picard.linux.it; envelope-from=ltp-bounces+incoming=patchwork.ozlabs.org@lists.linux.it; receiver=) Authentication-Results: legolas.ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=fujitsu.com header.i=@fujitsu.com header.a=rsa-sha256 header.s=170520fj header.b=SMMbOAxn; dkim-atps=neutral Received: from picard.linux.it (picard.linux.it [213.254.12.146]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4NLrlw1wnKz23ng for ; Tue, 29 Nov 2022 16:40:44 +1100 (AEDT) Received: from picard.linux.it (localhost [IPv6:::1]) by picard.linux.it (Postfix) with ESMTP id CD2E53CC5D8 for ; Tue, 29 Nov 2022 06:40:41 +0100 (CET) X-Original-To: ltp@lists.linux.it Delivered-To: ltp@picard.linux.it Received: from in-3.smtp.seeweb.it (in-3.smtp.seeweb.it [IPv6:2001:4b78:1:20::3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384)) (No client certificate requested) by picard.linux.it (Postfix) with ESMTPS id 1053D3CC590 for ; Tue, 29 Nov 2022 06:40:29 +0100 (CET) Received: from mail3.bemta32.messagelabs.com (mail3.bemta32.messagelabs.com [195.245.230.81]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by in-3.smtp.seeweb.it (Postfix) with ESMTPS id 015E41A004A2 for ; Tue, 29 Nov 2022 06:40:28 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fujitsu.com; s=170520fj; t=1669700428; i=@fujitsu.com; bh=DrtN8maQo3PLrZhrGW/XISQN/lqwjKfP46PLacRyAoc=; h=From:To:CC:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=SMMbOAxn4hy1OGUkYAQ9WwXCZs/nyjFDsL/d9aJFHGYXoATglDOcKV+yid+mCJAN8 uj/Y+mZKMab1r+jxyPVaKQgFDmxjOo7c58YGqOME3K3ohxFBataZ9FCXWv4e0mtKtY gDK8J0LQs7wLKakk29bjjUIm9bJTQ87kzENyz8A0njtwP5d6+WsN5PAuW4kcn9Hv6F x4rdlq3uGCMriGKeX1XxUucKEp8PK9llkfTOHSo3fjg2uTKDdb0qxOPvpn1aiQo0es kzv4n3sMuZR6vQCPoRGtr6yUHMWIl658i1lQW2Bga70ZeTvkboXuxNxw7lr0Bm3kyD I/FSEX6WBnzaA== X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFrrOIsWRWlGSWpSXmKPExsViZ8OxWdd7dmu ywe4DKhYrvu9gdGD02Pd7HWsAYxRrZl5SfkUCa8afKUeZCnrNKh69OczYwLhWv4uRi0NI4BSj RM/z+4wQzh4midcvprJCOYwSx68dY+5i5ORgE9CUeNa5AMwWEZCQ6Gh4yw5iMwuoSyyf9IsJx BYW8JRYvbSdBcRmEVCVWNLyFayGV8BD4tiv+2A1EgIKElMevgeaw8HBCVR//A1YiRBQSddakL 0g5YISJ2c+YYEYLyFx8MULZohWRYlLHd8YIewKiVmz2qBGqklcPbeJeQKj4Cwk7bOQtC9gZFr FaFqcWlSWWqRropdUlJmeUZKbmJmjl1ilm6iXWqpbnlpcomuol1herJdaXKxXXJmbnJOil5da sokRGLopxWw+Oxj/Lf2jd4hRkoNJSZT3RUVrshBfUn5KZUZicUZ8UWlOavEhRhkODiUJXsUZQ DnBotT01Iq0zBxgHMGkJTh4lER47SqB0rzFBYm5xZnpEKlTjMYcU2f/28/MsWlf1wFmIZa8/L xUKXHenFlApQIgpRmleXCDYPF9iVFWSpiXkYGBQYinILUoN7MEVf4VozgHo5Iwb/B0oCk8mXk lcPteAZ3CBHTKJsUmkFNKEhFSUg1MQb8EVxxR9PzsPWPN3X0HJvrfnF2nb3xuw8k1lXt2PAyR cfV7F2Q/I/tqzUEXzZeuBzd4tsqEXnl2ltfyZ+N+K76vQSdEYr53v4v91KRxNXtG/8fFjw+W6 69L+HbtsMvNhm3vY+y5txQsyO9k509o1Z8ip2HnUp7JOOWR1VFnBV5rhq+1S6097hqduXXwk3 7UgRxr5daZS5bPYP9g42IrK6hl2OHqb22m+bb86softnoyz07+kztlcJFbVeVN8TS3pQIBJTH BZ3KMjzGn8Zy1tW24f++s2arz0yvU52godqtnH4lcxd8X+e162W2b2qnmMoU/W/P2nD725eqK jzM9P31as25WtN634EU11vuFlViKMxINtZiLihMBBk1vnWoDAAA= X-Env-Sender: xuyang2018.jy@fujitsu.com X-Msg-Ref: server-18.tower-585.messagelabs.com!1669700427!321743!1 X-Originating-IP: [62.60.8.179] X-SYMC-ESS-Client-Auth: outbound-route-from=pass X-StarScan-Received: X-StarScan-Version: 9.101.1; banners=-,-,- X-VirusChecked: Checked Received: (qmail 1764 invoked from network); 29 Nov 2022 05:40:27 -0000 Received: from unknown (HELO n03ukasimr04.n03.fujitsu.local) (62.60.8.179) by server-18.tower-585.messagelabs.com with ECDHE-RSA-AES256-GCM-SHA384 encrypted SMTP; 29 Nov 2022 05:40:27 -0000 Received: from n03ukasimr04.n03.fujitsu.local (localhost [127.0.0.1]) by n03ukasimr04.n03.fujitsu.local (Postfix) with ESMTP id 38D25152 for ; Tue, 29 Nov 2022 05:40:27 +0000 (GMT) Received: from R01UKEXCASM126.r01.fujitsu.local (R01UKEXCASM126 [10.183.43.178]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by n03ukasimr04.n03.fujitsu.local (Postfix) with ESMTPS id 2B2C373 for ; Tue, 29 Nov 2022 05:40:27 +0000 (GMT) Received: from localhost.localdomain (10.167.220.84) by R01UKEXCASM126.r01.fujitsu.local (10.183.43.178) with Microsoft SMTP Server (TLS) id 15.0.1497.32; Tue, 29 Nov 2022 05:40:25 +0000 From: Yang Xu To: Date: Tue, 29 Nov 2022 14:41:00 +0800 Message-ID: <1669704060-5635-2-git-send-email-xuyang2018.jy@fujitsu.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1669704060-5635-1-git-send-email-xuyang2018.jy@fujitsu.com> References: <1669704060-5635-1-git-send-email-xuyang2018.jy@fujitsu.com> MIME-Version: 1.0 X-Originating-IP: [10.167.220.84] X-ClientProxiedBy: G08CNEXCHPEKD07.g08.fujitsu.local (10.167.33.80) To R01UKEXCASM126.r01.fujitsu.local (10.183.43.178) X-Virus-Scanned: clamav-milter 0.102.4 at in-3.smtp.seeweb.it X-Virus-Status: Clean X-Spam-Status: No, score=0.1 required=7.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_NONE,SPF_PASS autolearn=disabled version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on in-3.smtp.seeweb.it Subject: [LTP] [PATCH v1 2/2] include/lapi/sched.h: Move lapi/clone.h into here X-BeenThere: ltp@lists.linux.it X-Mailman-Version: 2.1.29 Precedence: list List-Id: Linux Test Project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: ltp-bounces+incoming=patchwork.ozlabs.org@lists.linux.it Sender: "ltp" Like namespaces_constants.h, kernel doesn't have clone.h header. We can also move it into here. Signed-off-by: Yang Xu Reviewed-by: Li Wang Acked-by: Richard Palethorpe --- This patch has been verified on my ltp fork[1]. [1]https://github.com/xuyang0410/ltp/actions/runs/3571298308/jobs/6003048080 include/lapi/clone.h | 56 ------------------- include/lapi/sched.h | 31 ++++++++++ lib/tst_clone.c | 2 +- testcases/kernel/containers/pidns/pidns13.c | 2 +- testcases/kernel/containers/userns/userns08.c | 2 +- testcases/kernel/syscalls/clone3/clone301.c | 2 +- testcases/kernel/syscalls/clone3/clone302.c | 2 +- .../syscalls/close_range/close_range01.c | 2 +- .../syscalls/close_range/close_range02.c | 2 +- 9 files changed, 38 insertions(+), 63 deletions(-) delete mode 100644 include/lapi/clone.h diff --git a/include/lapi/clone.h b/include/lapi/clone.h deleted file mode 100644 index 437d1376f..000000000 --- a/include/lapi/clone.h +++ /dev/null @@ -1,56 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0-or-later -/* - * Copyright (c) 2020 Linaro Limited. All rights reserved. - * Author: Viresh Kumar - */ - -#ifndef LAPI_CLONE_H__ -#define LAPI_CLONE_H__ - -#include -#include -#include -#include - -#include "config.h" -#include "lapi/syscalls.h" - -#ifndef HAVE_CLONE3 -struct clone_args { - uint64_t __attribute__((aligned(8))) flags; - uint64_t __attribute__((aligned(8))) pidfd; - uint64_t __attribute__((aligned(8))) child_tid; - uint64_t __attribute__((aligned(8))) parent_tid; - uint64_t __attribute__((aligned(8))) exit_signal; - uint64_t __attribute__((aligned(8))) stack; - uint64_t __attribute__((aligned(8))) stack_size; - uint64_t __attribute__((aligned(8))) tls; -}; - -static inline int clone3(struct clone_args *args, size_t size) -{ - return tst_syscall(__NR_clone3, args, size); -} -#endif - -#ifndef CLONE_PIDFD -#define CLONE_PIDFD 0x00001000 /* set if a pidfd should be placed in parent */ -#endif - -#ifndef CLONE_NEWUSER -# define CLONE_NEWUSER 0x10000000 -#endif - -static inline void clone3_supported_by_kernel(void) -{ - long ret; - - if ((tst_kvercmp(5, 3, 0)) < 0) { - /* Check if the syscall is backported on an older kernel */ - ret = syscall(__NR_clone3, NULL, 0); - if (ret == -1 && errno == ENOSYS) - tst_brk(TCONF, "Test not supported on kernel version < v5.3"); - } -} - -#endif /* LAPI_CLONE_H__ */ diff --git a/include/lapi/sched.h b/include/lapi/sched.h index 3b0b4be31..1d22a9d7e 100644 --- a/include/lapi/sched.h +++ b/include/lapi/sched.h @@ -11,6 +11,7 @@ #include #include #include +#include "config.h" #include "lapi/syscalls.h" struct sched_attr { @@ -43,6 +44,32 @@ static inline int sched_getattr(pid_t pid, struct sched_attr *attr, return syscall(__NR_sched_getattr, pid, attr, size, flags); } +#ifndef HAVE_CLONE3 +struct clone_args { + uint64_t __attribute__((aligned(8))) flags; + uint64_t __attribute__((aligned(8))) pidfd; + uint64_t __attribute__((aligned(8))) child_tid; + uint64_t __attribute__((aligned(8))) parent_tid; + uint64_t __attribute__((aligned(8))) exit_signal; + uint64_t __attribute__((aligned(8))) stack; + uint64_t __attribute__((aligned(8))) stack_size; + uint64_t __attribute__((aligned(8))) tls; +}; + +static inline int clone3(struct clone_args *args, size_t size) +{ + return tst_syscall(__NR_clone3, args, size); +} +#endif + +static inline void clone3_supported_by_kernel(void) +{ + if ((tst_kvercmp(5, 3, 0)) < 0) { + /* Check if the syscall is backported on an older kernel */ + tst_syscall(__NR_clone3, NULL, 0); + } +} + #ifndef SCHED_DEADLINE # define SCHED_DEADLINE 6 #endif @@ -55,6 +82,10 @@ static inline int sched_getattr(pid_t pid, struct sched_attr *attr, # define CLONE_FS 0x00000200 #endif +#ifndef CLONE_PIDFD +# define CLONE_PIDFD 0x00001000 +#endif + #ifndef CLONE_NEWNS # define CLONE_NEWNS 0x00020000 #endif diff --git a/lib/tst_clone.c b/lib/tst_clone.c index 07e7f0767..ecc84408c 100644 --- a/lib/tst_clone.c +++ b/lib/tst_clone.c @@ -8,7 +8,7 @@ #include #include "tst_test.h" -#include "lapi/clone.h" +#include "lapi/sched.h" pid_t tst_clone(const struct tst_clone_args *tst_args) { diff --git a/testcases/kernel/containers/pidns/pidns13.c b/testcases/kernel/containers/pidns/pidns13.c index 39fd6df7f..6a155027c 100644 --- a/testcases/kernel/containers/pidns/pidns13.c +++ b/testcases/kernel/containers/pidns/pidns13.c @@ -31,7 +31,7 @@ #include "tst_test.h" #include "tst_clone.h" -#include "lapi/clone.h" +#include "lapi/sched.h" static int pipe_fd[2]; diff --git a/testcases/kernel/containers/userns/userns08.c b/testcases/kernel/containers/userns/userns08.c index afdad6cad..2697d874b 100644 --- a/testcases/kernel/containers/userns/userns08.c +++ b/testcases/kernel/containers/userns/userns08.c @@ -25,7 +25,7 @@ #include "tst_test.h" #include "tst_clone.h" -#include "lapi/clone.h" +#include "lapi/sched.h" #include "tst_safe_file_at.h" static pid_t clone_newuser(void) diff --git a/testcases/kernel/syscalls/clone3/clone301.c b/testcases/kernel/syscalls/clone3/clone301.c index f7ef0b2d7..d0fadbc5d 100644 --- a/testcases/kernel/syscalls/clone3/clone301.c +++ b/testcases/kernel/syscalls/clone3/clone301.c @@ -15,7 +15,7 @@ #include #include "tst_test.h" -#include "lapi/clone.h" +#include "lapi/sched.h" #include "lapi/pidfd.h" #define CHILD_SIGNAL SIGUSR1 diff --git a/testcases/kernel/syscalls/clone3/clone302.c b/testcases/kernel/syscalls/clone3/clone302.c index 08d6417ce..b1b4ccebb 100644 --- a/testcases/kernel/syscalls/clone3/clone302.c +++ b/testcases/kernel/syscalls/clone3/clone302.c @@ -14,7 +14,7 @@ #include #include "tst_test.h" -#include "lapi/clone.h" +#include "lapi/sched.h" static struct clone_args *valid_args, *invalid_args; unsigned long stack; diff --git a/testcases/kernel/syscalls/close_range/close_range01.c b/testcases/kernel/syscalls/close_range/close_range01.c index 5e2de4d1e..30bb600b6 100644 --- a/testcases/kernel/syscalls/close_range/close_range01.c +++ b/testcases/kernel/syscalls/close_range/close_range01.c @@ -28,7 +28,7 @@ #include "tst_test.h" #include "tst_clone.h" -#include "lapi/clone.h" +#include "lapi/sched.h" #include "lapi/close_range.h" static int fd[3]; diff --git a/testcases/kernel/syscalls/close_range/close_range02.c b/testcases/kernel/syscalls/close_range/close_range02.c index bd46936bb..aec899261 100644 --- a/testcases/kernel/syscalls/close_range/close_range02.c +++ b/testcases/kernel/syscalls/close_range/close_range02.c @@ -18,7 +18,7 @@ #include "tst_clone.h" #include "lapi/fcntl.h" #include "lapi/close_range.h" -#include "lapi/clone.h" +#include "lapi/sched.h" static int try_close_range(int fd, int flags) {