From: "Yann E. MORIN" <yann.morin.1998@free.fr>
To: Petr Vorel <petr.vorel@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>,
Fabrice Fontaine <fontaine.fabrice@gmail.com>,
Petr Vorel <pevik@seznam.cz>,
buildroot@buildroot.org
Subject: Re: [Buildroot] [PATCH 1/2] package/ltp-testsuite: bump version to 20230127
Date: Fri, 14 Apr 2023 21:01:17 +0200 [thread overview]
Message-ID: <20230414190117.GY2819@scaer> (raw)
In-Reply-To: <CAB1t1Cyz6=SM2MWOeqMtj9U8KKsarvFEcJaPeJ_nDXtaQ_bK1w@mail.gmail.com>
Petr, All,
On 2023-04-12 20:12 +0200, Petr Vorel spake thusly:
> On Mon, 10 Apr 2023 at 19:24, Yann E. MORIN <yann.morin.1998@free.fr> wrote:
> >
> > On 2023-04-05 22:14 +0200, Petr Vorel spake thusly:
> > > From: Petr Vorel <petr.vorel@gmail.com>
> > >
> > > Remove musl related sysinfo.h patch. This Buildroot specific workaround
> > > is not needed any more (kernel got fixed in a85cbe6159ff ("uapi: move
> > > constants from <linux/kernel.h> to <linux/const.h>") in v5.11, some time
> >
> > So what about people building with a toolchain that uses kernel headers
> > older than 5.11 or, as I understand it, any of the stable versions the
> > fix was back-ported to?
>
> Yes, it was backported to all stable branches, including v4.14.214 (as
> b732e14e6218bd925e15c539165f037081ae5176), therefore it should be
> really safe to remove this workaround.
The problem is for people who do use toolchains with *older* kernel
headers. Those toolchains do exist and they do not have the fixed
headers. So the build will fail for those people.
> And if not, it'll be trivial to
> rebase the patch to newer LTP (reintroduce the patch).
Unless the upstream ltp has provision for supporting both kind of
headers, with or without the fix, then yes, I think this should be
rebased and kept. And re-submit upstream to explain it will support
older, existing toolchains.
Regards,
Yann E. MORIN.
> Also the second patch (backport) fixes long standing issue on some
> toolchains, thus it'd be good to merge the patchset.
>
> Kind regards,
> Petr
>
> >
> > Regards,
> > Yann E. MORIN.
> >
> > > took to rebuilt Buildroot toolchains, but even that was more than year
> > > ago).
> > >
> > > Signed-off-by: Petr Vorel <petr.vorel@gmail.com>
> > > ---
> > > The same as v1.
> > > Was there anything missing in v1 [1]? Or could this please be merged
> > > without runltp-ng being postponed for some time later? I don't have much
> > > time for implementing it now and V1 was waiting for 2 months.
> > >
> > > Kind regards,
> > > Petr
> > >
> > > [1] https://lore.kernel.org/buildroot/20230127223256.132401-1-pevik@seznam.cz/
> > >
> > > ...ysinfo.h-to-fix-build-with-MUSL-libc.patch | 211 ------------------
> > > package/ltp-testsuite/ltp-testsuite.hash | 5 +-
> > > package/ltp-testsuite/ltp-testsuite.mk | 2 +-
> > > 3 files changed, 3 insertions(+), 215 deletions(-)
> > > delete mode 100644 package/ltp-testsuite/0001-lapi-Add-sysinfo.h-to-fix-build-with-MUSL-libc.patch
> > >
> > > diff --git a/package/ltp-testsuite/0001-lapi-Add-sysinfo.h-to-fix-build-with-MUSL-libc.patch b/package/ltp-testsuite/0001-lapi-Add-sysinfo.h-to-fix-build-with-MUSL-libc.patch
> > > deleted file mode 100644
> > > index 1553908cf8..0000000000
> > > --- a/package/ltp-testsuite/0001-lapi-Add-sysinfo.h-to-fix-build-with-MUSL-libc.patch
> > > +++ /dev/null
> > > @@ -1,211 +0,0 @@
> > > -From f34c6ca3d543968e900d6327d8b5900db63f08ad Mon Sep 17 00:00:00 2001
> > > -From: Petr Vorel <petr.vorel@gmail.com>
> > > -Date: Thu, 1 Oct 2020 23:28:39 +0200
> > > -Subject: [PATCH] lapi: Add sysinfo.h to fix build with MUSL libc
> > > -MIME-Version: 1.0
> > > -Content-Type: text/plain; charset=UTF-8
> > > -Content-Transfer-Encoding: 8bit
> > > -
> > > -The reason is to avoid indirect <linux/sysinfo.h> include when using
> > > -some network headers: <linux/netlink.h> or others -> <linux/kernel.h>
> > > --> <linux/sysinfo.h>
> > > -
> > > -This indirect include causes on MUSL redefinition of struct sysinfo when
> > > -included both <sys/sysinfo.h> and some of UAPI headers:
> > > -
> > > -In file included from x86_64-buildroot-linux-musl/sysroot/usr/include/linux/kernel.h:5,
> > > - from x86_64-buildroot-linux-musl/sysroot/usr/include/linux/netlink.h:5,
> > > - from ../include/tst_netlink.h:14,
> > > - from tst_crypto.c:13:
> > > -x86_64-buildroot-linux-musl/sysroot/usr/include/linux/sysinfo.h:8:8: error: redefinition of ‘struct sysinfo’
> > > - struct sysinfo {
> > > - ^~~~~~~
> > > -In file included from ../include/tst_safe_macros.h:15,
> > > - from ../include/tst_test.h:93,
> > > - from tst_crypto.c:11:
> > > -x86_64-buildroot-linux-musl/sysroot/usr/include/sys/sysinfo.h:10:8: note: originally defined here
> > > -
> > > -Signed-off-by: Petr Vorel <petr.vorel@gmail.com>
> > > -
> > > -[ upstream status:
> > > -https://patchwork.ozlabs.org/project/ltp/patch/20201001231256.6930-1-petr.vorel@gmail.com/,
> > > -rebased for 20220527 ]
> > > -
> > > -But this patch is not going to get upstreamed because it got fixed in Linux kernel:
> > > -a85cbe6159ff "uapi: move constants from <linux/kernel.h> to <linux/const.h>"
> > > -
> > > -This patch was also backported to stable and LTS versions,
> > > -which we use since buildroot 54584d233b "{linux, linux-headers}: bump
> > > -5.{4, 10}.x 4.{4, 9, 14, 19} series".
> > > -We just wait for all musl based toolchains to be rebuilt. ]
> > > -
> > > -Signed-off-by: Petr Vorel <petr.vorel@gmail.com>
> > > ----
> > > - include/lapi/sysinfo.h | 22 +++++++++++++++++++
> > > - include/tst_safe_macros.h | 2 +-
> > > - lib/safe_macros.c | 2 +-
> > > - lib/tst_memutils.c | 2 +-
> > > - testcases/kernel/mem/mtest01/mtest01.c | 2 +-
> > > - testcases/kernel/syscalls/madvise/madvise06.c | 2 +-
> > > - testcases/kernel/syscalls/sysinfo/sysinfo01.c | 2 +-
> > > - testcases/kernel/syscalls/sysinfo/sysinfo02.c | 2 +-
> > > - testcases/kernel/syscalls/sysinfo/sysinfo03.c | 2 +-
> > > - .../interfaces/pthread_cond_broadcast/1-2.c | 2 +-
> > > - 10 files changed, 31 insertions(+), 9 deletions(-)
> > > - create mode 100644 include/lapi/sysinfo.h
> > > -
> > > -diff --git a/include/lapi/sysinfo.h b/include/lapi/sysinfo.h
> > > -new file mode 100644
> > > -index 000000000..d0e0e93d7
> > > ---- /dev/null
> > > -+++ b/include/lapi/sysinfo.h
> > > -@@ -0,0 +1,22 @@
> > > -+// SPDX-License-Identifier: GPL-2.0-or-later
> > > -+/*
> > > -+ * Copyright (c) 2020 Petr Vorel <petr.vorel@gmail.com>
> > > -+ */
> > > -+
> > > -+#ifndef SYSINFO_H__
> > > -+
> > > -+/*
> > > -+ * Don't use <sys/sysinfo.h> as it breaks build MUSL toolchain.
> > > -+ * Use <linux/sysinfo.h> instead.
> > > -+ *
> > > -+ * Some kernel UAPI headers do indirect <linux/sysinfo.h> include:
> > > -+ * <linux/netlink.h> or others -> <linux/kernel.h> -> <linux/sysinfo.h>
> > > -+ *
> > > -+ * This indirect include causes on MUSL redefinition of struct sysinfo when
> > > -+ * included both <sys/sysinfo.h> and some of UAPI headers:
> > > -+ */
> > > -+#include <linux/sysinfo.h>
> > > -+
> > > -+#define SYSINFO_H__
> > > -+
> > > -+#endif /* SYSINFO_H__ */
> > > -diff --git a/include/tst_safe_macros.h b/include/tst_safe_macros.h
> > > -index 81c4b0844..a8c02d7df 100644
> > > ---- a/include/tst_safe_macros.h
> > > -+++ b/include/tst_safe_macros.h
> > > -@@ -12,7 +12,7 @@
> > > - #include <sys/resource.h>
> > > - #include <sys/stat.h>
> > > - #include <sys/vfs.h>
> > > --#include <sys/sysinfo.h>
> > > -+#include <linux/sysinfo.h>
> > > - #include <fcntl.h>
> > > - #include <libgen.h>
> > > - #include <signal.h>
> > > -diff --git a/lib/safe_macros.c b/lib/safe_macros.c
> > > -index a5b6bc504..87d922a92 100644
> > > ---- a/lib/safe_macros.c
> > > -+++ b/lib/safe_macros.c
> > > -@@ -11,7 +11,7 @@
> > > - #include <sys/wait.h>
> > > - #include <sys/mount.h>
> > > - #include <sys/xattr.h>
> > > --#include <sys/sysinfo.h>
> > > -+#include "lapi/sysinfo.h"
> > > - #include <errno.h>
> > > - #include <fcntl.h>
> > > - #include <libgen.h>
> > > -diff --git a/lib/tst_memutils.c b/lib/tst_memutils.c
> > > -index 0d20bb17c..21a3a5ba0 100644
> > > ---- a/lib/tst_memutils.c
> > > -+++ b/lib/tst_memutils.c
> > > -@@ -6,7 +6,7 @@
> > > - #include <stdio.h>
> > > - #include <unistd.h>
> > > - #include <limits.h>
> > > --#include <sys/sysinfo.h>
> > > -+#include "lapi/sysinfo.h"
> > > - #include <stdlib.h>
> > > -
> > > - #define TST_NO_DEFAULT_MAIN
> > > -diff --git a/testcases/kernel/mem/mtest01/mtest01.c b/testcases/kernel/mem/mtest01/mtest01.c
> > > -index fb991ce8b..0fccd5405 100644
> > > ---- a/testcases/kernel/mem/mtest01/mtest01.c
> > > -+++ b/testcases/kernel/mem/mtest01/mtest01.c
> > > -@@ -20,7 +20,6 @@
> > > - */
> > > -
> > > - #include <sys/types.h>
> > > --#include <sys/sysinfo.h>
> > > - #include <sys/wait.h>
> > > - #include <limits.h>
> > > - #include <signal.h>
> > > -@@ -29,6 +28,7 @@
> > > - #include <unistd.h>
> > > -
> > > - #include "lapi/abisize.h"
> > > -+#include "lapi/sysinfo.h"
> > > - #include "tst_test.h"
> > > -
> > > - #define FIVE_HUNDRED_MB (500ULL*1024*1024)
> > > -diff --git a/testcases/kernel/syscalls/madvise/madvise06.c b/testcases/kernel/syscalls/madvise/madvise06.c
> > > -index 6d218801c..8af11a030 100644
> > > ---- a/testcases/kernel/syscalls/madvise/madvise06.c
> > > -+++ b/testcases/kernel/syscalls/madvise/madvise06.c
> > > -@@ -46,7 +46,7 @@
> > > - #include <errno.h>
> > > - #include <stdio.h>
> > > - #include <sys/mount.h>
> > > --#include <sys/sysinfo.h>
> > > -+#include "lapi/sysinfo.h"
> > > - #include "tst_test.h"
> > > -
> > > - #define CHUNK_SZ (400*1024*1024L)
> > > -diff --git a/testcases/kernel/syscalls/sysinfo/sysinfo01.c b/testcases/kernel/syscalls/sysinfo/sysinfo01.c
> > > -index 2ea44a2be..a237345ef 100644
> > > ---- a/testcases/kernel/syscalls/sysinfo/sysinfo01.c
> > > -+++ b/testcases/kernel/syscalls/sysinfo/sysinfo01.c
> > > -@@ -69,7 +69,7 @@
> > > - #include <sys/types.h>
> > > - #include <sys/stat.h>
> > > - #include <sys/signal.h>
> > > --#include <sys/sysinfo.h>
> > > -+#include "lapi/sysinfo.h"
> > > -
> > > - #include "test.h"
> > > -
> > > -diff --git a/testcases/kernel/syscalls/sysinfo/sysinfo02.c b/testcases/kernel/syscalls/sysinfo/sysinfo02.c
> > > -index 7ad0e8bdc..61fa1ab75 100644
> > > ---- a/testcases/kernel/syscalls/sysinfo/sysinfo02.c
> > > -+++ b/testcases/kernel/syscalls/sysinfo/sysinfo02.c
> > > -@@ -65,7 +65,7 @@
> > > - #include <sys/types.h>
> > > - #include <sys/stat.h>
> > > - #include <sys/signal.h>
> > > --#include <sys/sysinfo.h>
> > > -+#include "lapi/sysinfo.h"
> > > - #include <stdint.h>
> > > -
> > > - #include "test.h"
> > > -diff --git a/testcases/kernel/syscalls/sysinfo/sysinfo03.c b/testcases/kernel/syscalls/sysinfo/sysinfo03.c
> > > -index af7cb6421..dc5ae65e3 100644
> > > ---- a/testcases/kernel/syscalls/sysinfo/sysinfo03.c
> > > -+++ b/testcases/kernel/syscalls/sysinfo/sysinfo03.c
> > > -@@ -13,7 +13,7 @@
> > > -
> > > - */
> > > -
> > > --#include <sys/sysinfo.h>
> > > -+#include "lapi/sysinfo.h"
> > > - #include "lapi/namespaces_constants.h"
> > > - #include "lapi/posix_clocks.h"
> > > - #include "tst_test.h"
> > > -diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_cond_broadcast/1-2.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_cond_broadcast/1-2.c
> > > -index 22e7c3638..572701f9f 100644
> > > ---- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_cond_broadcast/1-2.c
> > > -+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_cond_broadcast/1-2.c
> > > -@@ -43,7 +43,7 @@
> > > - #include <sys/wait.h>
> > > - #include <semaphore.h>
> > > - #ifdef __linux__
> > > --#include <sys/sysinfo.h>
> > > -+#include "lapi/sysinfo.h"
> > > - #endif
> > > -
> > > - #include "../testfrmw/testfrmw.h"
> > > ---
> > > -2.36.1
> > > -
> > > diff --git a/package/ltp-testsuite/ltp-testsuite.hash b/package/ltp-testsuite/ltp-testsuite.hash
> > > index 8b411a8ffe..59ba5d0045 100644
> > > --- a/package/ltp-testsuite/ltp-testsuite.hash
> > > +++ b/package/ltp-testsuite/ltp-testsuite.hash
> > > @@ -1,5 +1,4 @@
> > > -# From: https://github.com/linux-test-project/ltp/releases/download/20220527/ltp-full-20220527.tar.bz2.sha1
> > > -sha1 c8d658cd3ab1f5a5c7b5bf56398d3a9525012c6b ltp-full-20220930.tar.xz
> > > +# From: https://github.com/linux-test-project/ltp/releases/download/20230127/ltp-full-20230127.tar.xz.sha256
> > > +sha256 254412a52c7238f35a247337da186f485e76fb64c6549ed849b3442fc7a417ef ltp-full-20230127.tar.xz
> > > # Locally computed
> > > sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING
> > > -sha256 533ab63915b916640667ecce17ee4998006d80d394d4b1f1d105a7aa1df50d38 ltp-full-20220930.tar.xz
> > > diff --git a/package/ltp-testsuite/ltp-testsuite.mk b/package/ltp-testsuite/ltp-testsuite.mk
> > > index 34412d562f..78271b0730 100644
> > > --- a/package/ltp-testsuite/ltp-testsuite.mk
> > > +++ b/package/ltp-testsuite/ltp-testsuite.mk
> > > @@ -4,7 +4,7 @@
> > > #
> > > ################################################################################
> > >
> > > -LTP_TESTSUITE_VERSION = 20220930
> > > +LTP_TESTSUITE_VERSION = 20230127
> > > LTP_TESTSUITE_SOURCE = ltp-full-$(LTP_TESTSUITE_VERSION).tar.xz
> > > LTP_TESTSUITE_SITE = https://github.com/linux-test-project/ltp/releases/download/$(LTP_TESTSUITE_VERSION)
> > >
> > > --
> > > 2.40.0
> > >
> > > _______________________________________________
> > > buildroot mailing list
> > > buildroot@buildroot.org
> > > https://lists.buildroot.org/mailman/listinfo/buildroot
> >
> > --
> > .-----------------.--------------------.------------------.--------------------.
> > | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
> > | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
> > | +33 561 099 427 `------------.-------: X AGAINST | \e/ There is no |
> > | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
> > '------------------------------^-------^------------------^--------------------'
> > _______________________________________________
> > buildroot mailing list
> > buildroot@buildroot.org
> > https://lists.buildroot.org/mailman/listinfo/buildroot
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 561 099 427 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
next prev parent reply other threads:[~2023-04-14 19:01 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-04-05 20:14 [Buildroot] [PATCH 1/2] package/ltp-testsuite: bump version to 20230127 Petr Vorel
2023-04-05 20:14 ` [Buildroot] [PATCH 2/2] package/ltp-testsuite: Backport fix for buildroot toolchain Petr Vorel
2023-04-05 20:27 ` [Buildroot] [PATCH 1/2] package/ltp-testsuite: bump version to 20230127 Petr Vorel
2023-04-10 17:24 ` Yann E. MORIN
2023-04-12 18:12 ` Petr Vorel
2023-04-14 19:01 ` Yann E. MORIN [this message]
2023-04-14 20:54 ` Petr Vorel
2023-04-15 8:05 ` Yann E. MORIN
2023-04-15 8:40 ` Yann E. MORIN
2023-04-15 23:21 ` Petr Vorel
2023-04-16 7:45 ` Yann E. MORIN
2023-04-16 15:08 ` Petr Vorel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230414190117.GY2819@scaer \
--to=yann.morin.1998@free.fr \
--cc=buildroot@buildroot.org \
--cc=fontaine.fabrice@gmail.com \
--cc=petr.vorel@gmail.com \
--cc=pevik@seznam.cz \
--cc=thomas.petazzoni@free-electrons.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox