mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2026-08-25 17:32:06 +00:00
xfstests: upgrade 2025.04.27 -> 2026.06.21
387 commits across 21 fortnightly releases (739 files changed, +16397/-2042). 114 new tests added (xfs x44, generic x32, btrfs x16, f2fs x14, ext4 x3, overlay x2, selftest x2, ceph x1) and one removed (xfs/539). Major themes: * Multi-block atomic writes: new common/atomicwrites, fio atomic-write helpers, fsx atomic-write support, and O_[D]SYNC / sudden-shutdown / bigalloc / hardware-AWU atomic tests. * XFS zoned / RT-device work: common/zoned with zloop helpers, zoned growfs, zone-alignment mkfs checks, zone GC low-space, external and internal realtime device support. * New xfs_healer test family (background repair service). * file_getattr(2)/file_setattr(2) support (new src/file_attr.c, AC_HAVE_FILE_GETATTR probe), VFS delegation tests, and a new fsnotify/fanotify error-reporting helper (src/fs-monitor.c). * Infrastructure: treewide $MOUNT_PROG -> _mount conversion, temp files moved to $TMPDIR, systemd-coredump collection in check. Build-system: configure.ac gains AC_HAVE_FILE_GETATTR and a btrfs_ioctl_received_subvol_args type check; src/Makefile adds unlink-fsync, truncate, rw_hint, fs-monitor, btrfs_ioctl and a conditional file_attr target. No new link libraries, so no DEPENDS change is needed. LICENSE checksum unchanged. Recipe patch changes: * Drop 0002-Drop-detached_mounts_propagation-and-remove-sys-moun.patch: its rationale (glibc sys/mount.h vs linux/mount.h clash reached via src/vfs/utils.c) no longer applies because utils.c no longer includes sys/mount.h, and the src/Makefile hunk no longer applied anyway. * Add 0001-locktest-do-not-tie-struct-delegation-to-the-F_GETDE.patch: glibc 2.43 defines F_GETDELEG/F_SETDELEG but neither glibc nor the kernel UAPI declares struct delegation, so tying the struct to the "#ifndef F_GETDELEG" guard leaves it undefined and locktest fails to build with "variable has incomplete type 'struct delegation'". Also bump the bundled unionmount-testsuite by one commit (dir-weird-open-dir.py adjusted to the upstream kernel). Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
This commit is contained in:
+52
@@ -0,0 +1,52 @@
|
||||
From 784139a16a03cd0c6486e4b587b995e9d5ab21dd Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <khem.raj@oss.qualcomm.com>
|
||||
Date: Wed, 29 Jul 2026 05:10:29 +0000
|
||||
Subject: [PATCH] locktest: do not tie struct delegation to the F_GETDELEG
|
||||
guard
|
||||
|
||||
glibc 2.43 added F_GETDELEG/F_SETDELEG to <bits/fcntl-linux.h>, but it
|
||||
does not declare struct delegation and neither does the kernel UAPI.
|
||||
|
||||
locktest.c defined struct delegation inside "#ifndef F_GETDELEG", which
|
||||
assumes that any libc providing the fcntl commands also provides the
|
||||
struct. On glibc 2.43+ the guard is taken, the struct is never defined
|
||||
and the build fails:
|
||||
|
||||
locktest.c:1065:20: error: variable has incomplete type 'struct delegation'
|
||||
locktest.c:1365:23: error: variable has incomplete type 'struct delegation'
|
||||
locktest.c:1615:20: error: variable has incomplete type 'struct delegation'
|
||||
|
||||
Keep the F_GETDELEG/F_SETDELEG fallbacks guarded, but define the struct
|
||||
unconditionally since no libc declares it.
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
|
||||
---
|
||||
src/locktest.c | 7 ++++++-
|
||||
1 file changed, 6 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/locktest.c b/src/locktest.c
|
||||
index 54ee1f0..e24a0fe 100644
|
||||
--- a/src/locktest.c
|
||||
+++ b/src/locktest.c
|
||||
@@ -80,13 +80,18 @@ extern int h_errno;
|
||||
#ifndef F_GETDELEG
|
||||
#define F_GETDELEG (1024 + 15)
|
||||
#define F_SETDELEG (1024 + 16)
|
||||
+#endif
|
||||
|
||||
+/*
|
||||
+ * glibc 2.43 added F_GETDELEG/F_SETDELEG to <bits/fcntl-linux.h> but it does
|
||||
+ * not declare struct delegation, and neither does the kernel UAPI. Therefore
|
||||
+ * the struct definition cannot be tied to the F_GETDELEG guard above.
|
||||
+ */
|
||||
struct delegation {
|
||||
uint32_t d_flags;
|
||||
uint16_t d_type;
|
||||
uint16_t __pad;
|
||||
};
|
||||
-#endif
|
||||
|
||||
static char *prog;
|
||||
static char *filename = 0;
|
||||
-31
@@ -1,31 +0,0 @@
|
||||
From 340e708f79b824816aacfa74e330d8acdafc5129 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Sun, 14 Aug 2022 13:33:05 -0700
|
||||
Subject: [PATCH] Drop detached_mounts_propagation and remove sys/mount.h from
|
||||
vfs/utils.c
|
||||
|
||||
with glibc 2.36+ sys/mount.h conflicts with linux/mount.h and here
|
||||
linux/mount.h is included via xfs/xfs.h header and we need sys/mount.h
|
||||
for the mount() API prototype. Until thats resolved lets not build this
|
||||
testcase
|
||||
|
||||
Upstream-Status: Inappropriate [Libc specific Workaround]
|
||||
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
src/Makefile | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/Makefile b/src/Makefile
|
||||
index 6ac72b36..5472ba66 100644
|
||||
--- a/src/Makefile
|
||||
+++ b/src/Makefile
|
||||
@@ -34,7 +34,7 @@ LINUX_TARGETS = xfsctl bstat t_mtab getdevicesize preallo_rw_pattern_reader \
|
||||
dio-invalidate-cache stat_test t_encrypted_d_revalidate \
|
||||
attr_replace_test swapon mkswap t_attr_corruption t_open_tmpfiles \
|
||||
fscrypt-crypt-util bulkstat_null_ocount splice-test chprojid_fail \
|
||||
- detached_mounts_propagation ext4_resize t_readdir_3 splice2pipe \
|
||||
+ ext4_resize t_readdir_3 splice2pipe \
|
||||
uuid_ioctl t_snapshot_deleted_subvolume fiemap-fault min_dio_alignment
|
||||
|
||||
EXTRA_EXECS = dmerror fill2attr fill2fs fill2fs_check scaleread.sh \
|
||||
+3
-3
@@ -2,17 +2,17 @@ SUMMARY = "File system QA test suite"
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://LICENSES/GPL-2.0;md5=74274e8a218423e49eefdea80bc55038"
|
||||
|
||||
SRCREV = "92c428db1fe3fa4f7bd2593788bc9b71403d59ae"
|
||||
SRCREV_unionmount = "c6ab621ac19f2b96d34cd98f244e611750e2bb23"
|
||||
SRCREV = "acb6d4cb84205a8e3f19ca470cfcf7bf6d93a509"
|
||||
SRCREV_unionmount = "f48a57d2a7db5f86ff3dbc4444c3c3041e182d7d"
|
||||
SRCREV_FORMAT = "default_unionmount"
|
||||
|
||||
SRC_URI = "git://git.kernel.org/pub/scm/fs/xfs/xfstests-dev.git;branch=master;tag=v${PV} \
|
||||
git://github.com/amir73il/unionmount-testsuite.git;branch=master;protocol=https;name=unionmount;destsuffix=unionmount-testsuite \
|
||||
file://0001-add-missing-FTW_-macros-when-not-available-in-libc.patch \
|
||||
file://0002-Drop-detached_mounts_propagation-and-remove-sys-moun.patch \
|
||||
file://0001-include-libgen.h-for-basename-API-prototype.patch \
|
||||
file://0002-Add-missing-STATX_ATTR_-defines-from-musl-sys-stat.h.patch \
|
||||
file://0001-bstat-use-uint32_t-instead-of-__uint32_t-to-fix-buil.patch \
|
||||
file://0001-locktest-do-not-tie-struct-delegation-to-the-F_GETDE.patch \
|
||||
"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user