[LTP] [PATCH v3 2/6] fs: add struct fsxattr fallback definitions
Andrea Cervesato
andrea.cervesato@suse.de
Tue Aug 5 09:01:50 CEST 2025
From: Andrea Cervesato <andrea.cervesato@suse.com>
Add strut fsxattr fallback, as well as FS_IOC_FSGETFLAGS and
FS_IOC_FSSETFLAGS.
Signed-off-by: Andrea Cervesato <andrea.cervesato@suse.com>
---
configure.ac | 2 ++
include/lapi/fs.h | 20 ++++++++++++++++++++
2 files changed, 22 insertions(+)
diff --git a/configure.ac b/configure.ac
index 12025be51c865719b68c06ec3c286210dafbfa43..9bd139f602b9f174e5314171f8f03338c06f3df4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -264,6 +264,8 @@ AC_CHECK_TYPES([struct statmount],,,[#include <sys/mount.h>])
AC_CHECK_TYPES([struct pidfd_info],,,[#include <sys/pidfd.h>])
+AC_CHECK_TYPES([struct fsxattr],,,[#include <linux/fs.h>])
+
# Tools knobs
# Bash
diff --git a/include/lapi/fs.h b/include/lapi/fs.h
index 8261ca41dab7d01ea5e7dc9d65e3d5604013cd46..261f9fd016eaa39e3072d9fb48742616b0c5f571 100644
--- a/include/lapi/fs.h
+++ b/include/lapi/fs.h
@@ -14,10 +14,22 @@
# include <linux/fs.h>
#endif
+#include <stdint.h>
#include <sys/user.h>
#include <limits.h>
#include "lapi/abisize.h"
+#ifndef HAVE_STRUCT_FSXATTR
+struct fsxattr {
+ uint32_t fsx_xflags; /* xflags field value (get/set) */
+ uint32_t fsx_extsize; /* extsize field value (get/set)*/
+ uint32_t fsx_nextents; /* nextents field value (get) */
+ uint32_t fsx_projid; /* project identifier (get/set) */
+ uint32_t fsx_cowextsize; /* CoW extsize field value (get/set)*/
+ unsigned char fsx_pad[8];
+};
+#endif
+
#ifndef FS_IOC_GETFLAGS
# define FS_IOC_GETFLAGS _IOR('f', 1, long)
#endif
@@ -26,6 +38,14 @@
# define FS_IOC_SETFLAGS _IOW('f', 2, long)
#endif
+#ifndef FS_IOC_FSGETXATTR
+# define FS_IOC_FSGETXATTR _IOR('X', 31, struct fsxattr)
+#endif
+
+#ifndef FS_IOC_FSSETXATTR
+# define FS_IOC_FSSETXATTR _IOW('X', 32, struct fsxattr)
+#endif
+
#ifndef FS_COMPR_FL
# define FS_COMPR_FL 0x00000004 /* Compress file */
#endif
--
2.50.1
More information about the ltp
mailing list