falloc.h 792 B

123456789101112131415161718192021222324252627282930313233
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. #ifndef _FALLOC_H_
  3. #define _FALLOC_H_
  4. #include <uapi/linux/falloc.h>
  5. /*
  6. * Space reservation ioctls and argument structure
  7. * are designed to be compatible with the legacy XFS ioctls.
  8. */
  9. struct space_resv {
  10. __s16 l_type;
  11. __s16 l_whence;
  12. __s64 l_start;
  13. __s64 l_len; /* len == 0 means until end of file */
  14. __s32 l_sysid;
  15. __u32 l_pid;
  16. __s32 l_pad[4]; /* reserved area */
  17. };
  18. #define FS_IOC_RESVSP _IOW('X', 40, struct space_resv)
  19. #define FS_IOC_RESVSP64 _IOW('X', 42, struct space_resv)
  20. #define FALLOC_FL_SUPPORTED_MASK (FALLOC_FL_KEEP_SIZE | \
  21. FALLOC_FL_PUNCH_HOLE | \
  22. FALLOC_FL_COLLAPSE_RANGE | \
  23. FALLOC_FL_ZERO_RANGE | \
  24. FALLOC_FL_INSERT_RANGE | \
  25. FALLOC_FL_UNSHARE_RANGE)
  26. #endif /* _FALLOC_H_ */