#ifndef _LUSTRE_USER_H
#define _LUSTRE_USER_H
+/** \defgroup lustreuser lustreuser
+ *
+ * @{
+ */
+
#include <lustre/ll_fiemap.h>
#if defined(__linux__)
#include <linux/lustre_user.h>
#define LL_IOC_LLOOP_INFO _IOWR('f', 171, long)
#define LL_IOC_LLOOP_DETACH_BYDEV _IOWR('f', 172, long)
#define LL_IOC_PATH2FID _IOR ('f', 173, long)
+#define LL_IOC_GET_MDTIDX _IOR ('f', 174, int)
+
+#define LL_IOC_HSM_CT_START _IOW ('f', 178, struct lustre_kernelcomm *)
#define LL_STATFS_MDC 1
#define LL_STATFS_LOV 2
/* scanf input parse format -- strip '[' first.
e.g. sscanf(fidstr, SFID, RFID(&fid)); */
-#define SFID "0x%llx:0x%x:0x%x"
+/* #define SFID "0x"LPX64i":0x"LPSZX":0x"LPSZX""
+liblustreapi.c:2893: warning: format '%lx' expects type 'long unsigned int *', but argument 4 has type 'unsigned int *'
+liblustreapi.c:2893: warning: format '%lx' expects type 'long unsigned int *', but argument 5 has type 'unsigned int *'
+*/
+#define SFID "0x"LPX64i":0x%x:0x%x"
#define RFID(fid) \
&((fid)->f_seq), \
&((fid)->f_oid), \
CL_SETATTR = 14,
CL_XATTR = 15,
CL_HSM = 16, /* HSM specific events, see flags */
+ CL_TIME = 17, /* mtime, atime, ctime change only */
CL_LAST
};
static const char *changelog_str[] = {
"MARK", "CREAT", "MKDIR", "HLINK", "SLINK", "MKNOD", "UNLNK",
"RMDIR", "RNMFM", "RNMTO", "OPEN", "CLOSE", "IOCTL", "TRUNC",
- "SATTR", "XATTR", "HSM" };
+ "SATTR", "XATTR", "HSM", "TIME" };
if (type >= 0 && type < CL_LAST)
return changelog_str[type];
return NULL;
char cr_name[0]; /**< last element */
} __attribute__((packed));
-struct ioc_changelog_clear {
+struct ioc_changelog {
+ __u64 icc_recno;
__u32 icc_mdtindex;
__u32 icc_id;
- __u64 icc_recno;
+ __u32 icc_flags;
};
enum changelog_message_type {
cfs_size_round(hai->hai_len));
}
+/** @} lustreuser */
#endif /* _LUSTRE_USER_H */