make[1]: Leaving directory '/var/tmp/portage/dev-libs/libnl-3.6.0/work/libnl-3.6.0-abi_x86_64.amd64' make check-TESTS make[1]: Entering directory '/var/tmp/portage/dev-libs/libnl-3.6.0/work/libnl-3.6.0-abi_x86_64.amd64' make[2]: Entering directory '/var/tmp/portage/dev-libs/libnl-3.6.0/work/libnl-3.6.0-abi_x86_64.amd64' FAIL: tests/check-all ============================================================================ Testsuite summary for libnl 3.6.0 ------------------------------------------------------------------- This is an unstable amd64 chroot image at a tinderbox (==build bot) name: 17.1_desktop-j4_test-20220420-221025 ------------------------------------------------------------------- gcc-config -l: [1] x86_64-pc-linux-gnu-12.0.1 * clang/llvm (if any): clang version 14.0.1 Target: x86_64-pc-linux-gnu Thread model: posix InstalledDir: /usr/lib/llvm/14/bin /usr/lib/llvm/14 14.0.1 Python 3.9.12 Available Ruby profiles: [1] ruby26 (with Rubygems) [2] ruby27 (with Rubygems) [3] ruby31 (with Rubygems) * Available Rust versions: [1] rust-bin-1.60.0 * The following VMs are available for generation-2: *) Eclipse Temurin JDK 11.0.14_p9 [openjdk-bin-11] Available Java Virtual Machines: [1] openjdk-bin-11 system-vm The Glorious Glasgow Haskell Compilation System, version 8.10.4 php cli: [1] php7.4 [2] php8.0 [3] php8.1 * HEAD of ::gentoo commit 71e16c2fbcc7872cdd3edd0fd74e89d38f7048fc Author: Repository mirror & CI <repomirrorci@gentoo.org> Date: Fri Apr 22 07:34:17 2022 +0000 2022-04-22 07:34:16 UTC emerge -qpvO dev-libs/libnl [ebuild N ] dev-libs/libnl-3.6.0 USE="debug test -python -utils" ABI_X86="(64) -32 (-x32)" PYTHON_TARGETS="python3_9 -python3_8 -python3_10"
Created attachment 773126 [details] emerge-info.txt
Created attachment 773129 [details] dev-libs:libnl-3.6.0:20220422-075938.log.bz2
Created attachment 773132 [details] emerge-history.txt
Created attachment 773135 [details] environment
Created attachment 773138 [details] etc.portage.tar.bz2
Created attachment 773141 [details] logs.tar.bz2
Created attachment 773144 [details] temp.tar.bz2
Created attachment 773147 [details] tests.tar.bz2
=================================== libnl 3.6.0: ./test-suite.log =================================== # TOTAL: 1 # PASS: 0 # SKIP: 0 # XFAIL: 0 # FAIL: 1 # XPASS: 0 # ERROR: 0 .. contents:: :depth: 2 FAIL: tests/check-all ===================== Running suite(s): main Abstract addresses Netlink attributes Clone ematch tree netns 90%: Checks: 11, Failures: 1, Errors: 0 /var/tmp/portage/dev-libs/libnl-3.6.0-r1/work/libnl-3.6.0/tests/nl-test-util.c:247:F:Core:cache_and_clone:0: Assertion 'r == 0' failed: r == -10, 0 == 0 FAIL tests/check-all (exit status: 1)
tinderbox_musl has reproduced this issue with version 3.7.0 - Updating summary.
I am able to reproduce this one with different error in container for 3.7.0: 37%: Checks: 29, Failures: 18, Errors: 0 /var/tmp/portage/dev-libs/libnl-3.7.0/work/libnl-3.7.0/tests/nl-test-util.c:179:S:Core:cache_and_clone:0: assert(r == 0) failed (errno=1, Operation not permitted) /var/tmp/portage/dev-libs/libnl-3.7.0/work/libnl-3.7.0/tests/nl-test-util.c:179:S:Core:test_create_iface:0: assert(r == 0) failed (errno=1, Operation not permitted) In all 18 cases it failes on the second mount call here: https://github.com/thom311/libnl/blob/cbafad9ddf24caef5230fef715d34f0539603be0/tests/nl-test-util.c#L177-L179 The related part of strace looks like this: [pid 31994] mount(NULL, "/sys", 0x560e4c039b91, MS_SLAVE, NULL) = 0 [pid 31994] mount("sys", "/sys", "sysfs", MS_RDONLY, NULL) = -1 EPERM (Operation not permitted) I believe it is somehow connected to mount namespaces, because mount_namespaces(7) man page says: Restrictions on mount namespaces [5] The mount(2) flags MS_RDONLY, MS_NOSUID, MS_NOEXEC, and the "atime" flags (MS_NOATIME, MS_NODIRATIME, MS_RELATIME) settings become locked when propagated from a more privileged to a less privileged mount namespace, and may not be changed in the less privileged mount namespace.
I see this with 3.8.0 on sparc inside a chroot: 37%: Checks: 29, Failures: 18, Errors: 0 /var/tmp/portage/dev-libs/libnl-3.8.0/work/libnl-3.8.0/tests/nl-test-util.c:125:S:Core:cache_and_clone:0: assert(r == 0) failed (errno=1, Operation not permitted) /var/tmp/portage/dev-libs/libnl-3.8.0/work/libnl-3.8.0/tests/nl-test-util.c:125:S:Core:test_create_iface:0: assert(r == 0) failed (errno=1, Operation not permitted) More of the last one follow with increasing numbers up until 16 before the assert.
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b2a2324ebb6e86b47ecca117bf7adf5473f6e41f commit b2a2324ebb6e86b47ecca117bf7adf5473f6e41f Author: Sam James <sam@gentoo.org> AuthorDate: 2024-07-20 05:04:56 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2024-07-20 05:06:42 +0000 dev-libs/libnl: restrict tests Bug: https://github.com/thom311/libnl/issues/361 Closes: https://bugs.gentoo.org/840167 Signed-off-by: Sam James <sam@gentoo.org> dev-libs/libnl/libnl-3.10.0.ebuild | 3 ++- dev-libs/libnl/libnl-3.7.0.ebuild | 6 ++++-- dev-libs/libnl/libnl-3.8.0.ebuild | 6 ++++-- dev-libs/libnl/libnl-3.9.0.ebuild | 4 +++- dev-libs/libnl/libnl-9999.ebuild | 4 +++- 5 files changed, 16 insertions(+), 7 deletions(-) Additionally, it has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bf91d1e1e633bcbbf7f3b0ef1c0fc427304b1e1d commit bf91d1e1e633bcbbf7f3b0ef1c0fc427304b1e1d Author: Sam James <sam@gentoo.org> AuthorDate: 2024-07-20 05:03:56 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2024-07-20 05:03:56 +0000 dev-libs/libnl: add 3.10.0 Restrict tests as they need privileges and we keep playing whack-a-mole with them. Bug: https://bugs.gentoo.org/840167 Signed-off-by: Sam James <sam@gentoo.org> dev-libs/libnl/Manifest | 1 + dev-libs/libnl/libnl-3.10.0.ebuild | 132 +++++++++++++++++++++++++++++++++++++ 2 files changed, 133 insertions(+)