Merge tag 'xfs-5.5-merge-16' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux
[linux-2.6-microblaze.git] / include / linux / falloc.h
index f5c73f0..8bf3d79 100644 (file)
@@ -32,4 +32,27 @@ struct space_resv {
                                         FALLOC_FL_INSERT_RANGE |       \
                                         FALLOC_FL_UNSHARE_RANGE)
 
+/* on ia32 l_start is on a 32-bit boundary */
+#if defined(CONFIG_X86_64)
+struct space_resv_32 {
+       __s16           l_type;
+       __s16           l_whence;
+       __s64           l_start __attribute__((packed));
+                       /* len == 0 means until end of file */
+       __s64           l_len __attribute__((packed));
+       __s32           l_sysid;
+       __u32           l_pid;
+       __s32           l_pad[4];       /* reserve area */
+};
+
+#define FS_IOC_RESVSP_32       _IOW ('X', 40, struct space_resv_32)
+#define FS_IOC_UNRESVSP_32     _IOW ('X', 41, struct space_resv_32)
+#define FS_IOC_RESVSP64_32     _IOW ('X', 42, struct space_resv_32)
+#define FS_IOC_UNRESVSP64_32   _IOW ('X', 43, struct space_resv_32)
+#define FS_IOC_ZERO_RANGE_32   _IOW ('X', 57, struct space_resv_32)
+
+int compat_ioctl_preallocate(struct file *, int, struct space_resv_32 __user *);
+
+#endif
+
 #endif /* _FALLOC_H_ */