From e8a1c9823b7e55dd2ca7f19a3fd3a05ae676bfe2 Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Fri, 9 Feb 2024 00:40:26 +0100 Subject: xfstests: fix make install race condition MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * sometimes make install was failing with: cp: cannot stat 'group.list': No such file or directory and bunch of non-fatal messages:   mv: failed to preserve ownership for 'group.list': Invalid argument * this was when tools/mkgroupfile did mv -f "$new_groups" "$groupfile" overwritting the group.list file while install-sh was already copying it to output * in the end easily reproducible by 1) removing tests/*/group.list before each make install 2) adding some sleep in mkgroupfile before the mv call Signed-off-by: Martin Jansa Signed-off-by: Khem Raj --- ...ile-make-sure-group.list-DIRT-exists-befo.patch | 239 +++++++++++++++++++++ .../recipes-utils/xfstests/xfstests_2024.01.14.bb | 10 +- 2 files changed, 242 insertions(+), 7 deletions(-) create mode 100644 meta-filesystems/recipes-utils/xfstests/xfstests/0003-tests-Makefile-make-sure-group.list-DIRT-exists-befo.patch (limited to 'meta-filesystems/recipes-utils') diff --git a/meta-filesystems/recipes-utils/xfstests/xfstests/0003-tests-Makefile-make-sure-group.list-DIRT-exists-befo.patch b/meta-filesystems/recipes-utils/xfstests/xfstests/0003-tests-Makefile-make-sure-group.list-DIRT-exists-befo.patch new file mode 100644 index 0000000000..5e8bf0c606 --- /dev/null +++ b/meta-filesystems/recipes-utils/xfstests/xfstests/0003-tests-Makefile-make-sure-group.list-DIRT-exists-befo.patch @@ -0,0 +1,239 @@ +From b30d5690d7245aa8bd5ca2896e629e62ec97afda Mon Sep 17 00:00:00 2001 +From: Martin Jansa +Date: Thu, 8 Feb 2024 23:01:36 +0100 +Subject: [PATCH] tests/*/Makefile: make sure group.list DIRT exists before + install +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +* sometimes make install was failing with: + cp: cannot stat 'group.list': No such file or directory + and bunch of non-fatal messages: +  mv: failed to preserve ownership for 'group.list': Invalid argument + +* this was when tools/mkgroupfile did + mv -f "$new_groups" "$groupfile" + overwritting the group.list file while install-sh was already + copying it to output + +* in the end easily reproducible by + 1) removing tests/*/group.list before each make install + 2) adding some sleep in mkgroupfile before the mv call + +Upstream-Status: Submitted [https://lore.kernel.org/fstests/20240208225241.644701-1-martin.jansa@gmail.com/] + +Signed-off-by: Martin Jansa +--- + tests/btrfs/Makefile | 2 +- + tests/ceph/Makefile | 2 +- + tests/cifs/Makefile | 2 +- + tests/ext4/Makefile | 2 +- + tests/f2fs/Makefile | 2 +- + tests/generic/Makefile | 2 +- + tests/nfs/Makefile | 2 +- + tests/ocfs2/Makefile | 2 +- + tests/overlay/Makefile | 2 +- + tests/perf/Makefile | 2 +- + tests/selftest/Makefile | 2 +- + tests/shared/Makefile | 2 +- + tests/tmpfs/Makefile | 2 +- + tests/udf/Makefile | 2 +- + tests/xfs/Makefile | 2 +- + 15 files changed, 15 insertions(+), 15 deletions(-) + +diff --git a/tests/btrfs/Makefile b/tests/btrfs/Makefile +index 1b72a1a1..6d9995b4 100644 +--- a/tests/btrfs/Makefile ++++ b/tests/btrfs/Makefile +@@ -14,7 +14,7 @@ default: $(DIRT) + + include $(BUILDRULES) + +-install: ++install: default + $(INSTALL) -m 755 -d $(TARGET_DIR) + $(INSTALL) -m 755 $(TESTS) $(TARGET_DIR) + $(INSTALL) -m 644 group.list $(TARGET_DIR) +diff --git a/tests/ceph/Makefile b/tests/ceph/Makefile +index 2761e1e9..5f24d518 100644 +--- a/tests/ceph/Makefile ++++ b/tests/ceph/Makefile +@@ -12,7 +12,7 @@ default: $(DIRT) + + include $(BUILDRULES) + +-install: ++install: default + $(INSTALL) -m 755 -d $(TARGET_DIR) + $(INSTALL) -m 755 $(TESTS) $(TARGET_DIR) + $(INSTALL) -m 644 group.list $(TARGET_DIR) +diff --git a/tests/cifs/Makefile b/tests/cifs/Makefile +index 62c48935..0b89a01d 100644 +--- a/tests/cifs/Makefile ++++ b/tests/cifs/Makefile +@@ -14,7 +14,7 @@ default: $(DIRT) + + include $(BUILDRULES) + +-install: ++install: default + $(INSTALL) -m 755 -d $(TARGET_DIR) + $(INSTALL) -m 755 $(TESTS) $(TARGET_DIR) + $(INSTALL) -m 644 group.list $(TARGET_DIR) +diff --git a/tests/ext4/Makefile b/tests/ext4/Makefile +index a2a0d561..296e3850 100644 +--- a/tests/ext4/Makefile ++++ b/tests/ext4/Makefile +@@ -14,7 +14,7 @@ default: $(DIRT) + + include $(BUILDRULES) + +-install: ++install: default + $(INSTALL) -m 755 -d $(TARGET_DIR) + $(INSTALL) -m 755 $(TESTS) $(TARGET_DIR) + $(INSTALL) -m 644 group.list $(TARGET_DIR) +diff --git a/tests/f2fs/Makefile b/tests/f2fs/Makefile +index 9d1ed3c6..0a90b465 100644 +--- a/tests/f2fs/Makefile ++++ b/tests/f2fs/Makefile +@@ -15,7 +15,7 @@ default: $(DIRT) + + include $(BUILDRULES) + +-install: ++install: default + $(INSTALL) -m 755 -d $(TARGET_DIR) + $(INSTALL) -m 755 $(TESTS) $(TARGET_DIR) + $(INSTALL) -m 644 group.list $(TARGET_DIR) +diff --git a/tests/generic/Makefile b/tests/generic/Makefile +index b464b22b..d6ed3e55 100644 +--- a/tests/generic/Makefile ++++ b/tests/generic/Makefile +@@ -14,7 +14,7 @@ default: $(DIRT) + + include $(BUILDRULES) + +-install: ++install: default + $(INSTALL) -m 755 -d $(TARGET_DIR) + $(INSTALL) -m 755 $(TESTS) $(TARGET_DIR) + $(INSTALL) -m 644 group.list $(TARGET_DIR) +diff --git a/tests/nfs/Makefile b/tests/nfs/Makefile +index 128d2a3a..51590b5c 100644 +--- a/tests/nfs/Makefile ++++ b/tests/nfs/Makefile +@@ -14,7 +14,7 @@ default: $(DIRT) + + include $(BUILDRULES) + +-install: ++install: default + $(INSTALL) -m 755 -d $(TARGET_DIR) + $(INSTALL) -m 755 $(TESTS) $(TARGET_DIR) + $(INSTALL) -m 644 group.list $(TARGET_DIR) +diff --git a/tests/ocfs2/Makefile b/tests/ocfs2/Makefile +index 260ad31b..17e01bf3 100644 +--- a/tests/ocfs2/Makefile ++++ b/tests/ocfs2/Makefile +@@ -14,7 +14,7 @@ default: $(DIRT) + + include $(BUILDRULES) + +-install: ++install: default + $(INSTALL) -m 755 -d $(TARGET_DIR) + $(INSTALL) -m 755 $(TESTS) $(TARGET_DIR) + $(INSTALL) -m 644 group.list $(TARGET_DIR) +diff --git a/tests/overlay/Makefile b/tests/overlay/Makefile +index 2785b94d..c71e78d6 100644 +--- a/tests/overlay/Makefile ++++ b/tests/overlay/Makefile +@@ -14,7 +14,7 @@ default: $(DIRT) + + include $(BUILDRULES) + +-install: ++install: default + $(INSTALL) -m 755 -d $(TARGET_DIR) + $(INSTALL) -m 755 $(TESTS) $(TARGET_DIR) + $(INSTALL) -m 644 group.list $(TARGET_DIR) +diff --git a/tests/perf/Makefile b/tests/perf/Makefile +index 0c74ba39..d72c04d9 100644 +--- a/tests/perf/Makefile ++++ b/tests/perf/Makefile +@@ -14,7 +14,7 @@ default: $(DIRT) + + include $(BUILDRULES) + +-install: ++install: default + $(INSTALL) -m 755 -d $(TARGET_DIR) + $(INSTALL) -m 755 $(TESTS) $(TARGET_DIR) + $(INSTALL) -m 644 group.list $(TARGET_DIR) +diff --git a/tests/selftest/Makefile b/tests/selftest/Makefile +index 3ddfca37..cabc35a9 100644 +--- a/tests/selftest/Makefile ++++ b/tests/selftest/Makefile +@@ -14,7 +14,7 @@ default: $(DIRT) + + include $(BUILDRULES) + +-install: ++install: default + $(INSTALL) -m 755 -d $(TARGET_DIR) + $(INSTALL) -m 755 $(TESTS) $(TARGET_DIR) + $(INSTALL) -m 644 group.list $(TARGET_DIR) +diff --git a/tests/shared/Makefile b/tests/shared/Makefile +index f3128714..2e6aa718 100644 +--- a/tests/shared/Makefile ++++ b/tests/shared/Makefile +@@ -14,7 +14,7 @@ default: $(DIRT) + + include $(BUILDRULES) + +-install: ++install: default + $(INSTALL) -m 755 -d $(TARGET_DIR) + $(INSTALL) -m 755 $(TESTS) $(TARGET_DIR) + $(INSTALL) -m 644 group.list $(TARGET_DIR) +diff --git a/tests/tmpfs/Makefile b/tests/tmpfs/Makefile +index 46544313..46b62dad 100644 +--- a/tests/tmpfs/Makefile ++++ b/tests/tmpfs/Makefile +@@ -14,7 +14,7 @@ default: $(DIRT) + + include $(BUILDRULES) + +-install: ++install: default + $(INSTALL) -m 755 -d $(TARGET_DIR) + $(INSTALL) -m 755 $(TESTS) $(TARGET_DIR) + $(INSTALL) -m 644 group.list $(TARGET_DIR) +diff --git a/tests/udf/Makefile b/tests/udf/Makefile +index ed4434f0..feda69a6 100644 +--- a/tests/udf/Makefile ++++ b/tests/udf/Makefile +@@ -14,7 +14,7 @@ default: $(DIRT) + + include $(BUILDRULES) + +-install: ++install: default + $(INSTALL) -m 755 -d $(TARGET_DIR) + $(INSTALL) -m 755 $(TESTS) $(TARGET_DIR) + $(INSTALL) -m 644 group.list $(TARGET_DIR) +diff --git a/tests/xfs/Makefile b/tests/xfs/Makefile +index 5f413e67..6bfafdb1 100644 +--- a/tests/xfs/Makefile ++++ b/tests/xfs/Makefile +@@ -14,7 +14,7 @@ default: $(DIRT) + + include $(BUILDRULES) + +-install: ++install: default + $(INSTALL) -m 755 -d $(TARGET_DIR) + $(INSTALL) -m 755 $(TESTS) $(TARGET_DIR) + $(INSTALL) -m 644 group.list $(TARGET_DIR) diff --git a/meta-filesystems/recipes-utils/xfstests/xfstests_2024.01.14.bb b/meta-filesystems/recipes-utils/xfstests/xfstests_2024.01.14.bb index 711637a70d..5ff1914569 100644 --- a/meta-filesystems/recipes-utils/xfstests/xfstests_2024.01.14.bb +++ b/meta-filesystems/recipes-utils/xfstests/xfstests_2024.01.14.bb @@ -7,8 +7,9 @@ SRCREV_FORMAT = "xfstests_unionmount" SRC_URI = "git://git.kernel.org/pub/scm/fs/xfs/xfstests-dev.git;branch=master;name=xfstests \ git://github.com/amir73il/unionmount-testsuite.git;branch=master;protocol=https;name=unionmount;destsuffix=unionmount-testsuite \ - file://0002-Drop-detached_mounts_propagation-and-remove-sys-moun.patch \ file://0001-add-missing-FTW_-macros-when-not-available-in-libc.patch \ + file://0002-Drop-detached_mounts_propagation-and-remove-sys-moun.patch \ + file://0003-tests-Makefile-make-sure-group.list-DIRT-exists-befo.patch \ " SRCREV_xfstests = "c46ca4d1f6c0c45f9a3ea18bc31ba5ae89e02c70" @@ -51,12 +52,7 @@ do_configure:prepend() { cp -a ${S}/include/install-sh . } -# Not sure if this is needed, but with old install-sh it was sometimes failing with: -# cp: cannot stat 'group.list': No such file or directory -# http://errors.yoctoproject.org/Errors/Details/752404/ -# PARALLEL_MAKEINST = "-j1" - -do_install:prepend() { +do_install() { # otherwise install-sh duplicates DESTDIR prefix export DIST_ROOT="/" DIST_MANIFEST="" DESTDIR="${D}" oe_runmake install -- cgit 1.2.3-korg