blob: d9028060f6d4cd37d36b41b05ed7ba65b7265666 [file] [log] [blame]
Elliott Hughes180edef2023-11-02 00:08:05 +00001/*
2 * This file is auto-generated. Modifications will be lost.
3 *
4 * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
5 * for more information.
6 */
Christopher Ferris37c3f3c2023-07-10 10:59:05 -07007#ifndef _UAPI_LINUX_EXT4_H
8#define _UAPI_LINUX_EXT4_H
9#include <linux/fiemap.h>
10#include <linux/fs.h>
11#include <linux/ioctl.h>
12#include <linux/types.h>
13#define EXT4_IOC_GETVERSION _IOR('f', 3, long)
14#define EXT4_IOC_SETVERSION _IOW('f', 4, long)
15#define EXT4_IOC_GETVERSION_OLD FS_IOC_GETVERSION
16#define EXT4_IOC_SETVERSION_OLD FS_IOC_SETVERSION
17#define EXT4_IOC_GETRSVSZ _IOR('f', 5, long)
18#define EXT4_IOC_SETRSVSZ _IOW('f', 6, long)
19#define EXT4_IOC_GROUP_EXTEND _IOW('f', 7, unsigned long)
20#define EXT4_IOC_GROUP_ADD _IOW('f', 8, struct ext4_new_group_input)
21#define EXT4_IOC_MIGRATE _IO('f', 9)
22#define EXT4_IOC_ALLOC_DA_BLKS _IO('f', 12)
23#define EXT4_IOC_MOVE_EXT _IOWR('f', 15, struct move_extent)
24#define EXT4_IOC_RESIZE_FS _IOW('f', 16, __u64)
25#define EXT4_IOC_SWAP_BOOT _IO('f', 17)
26#define EXT4_IOC_PRECACHE_EXTENTS _IO('f', 18)
27#define EXT4_IOC_CLEAR_ES_CACHE _IO('f', 40)
28#define EXT4_IOC_GETSTATE _IOW('f', 41, __u32)
29#define EXT4_IOC_GET_ES_CACHE _IOWR('f', 42, struct fiemap)
30#define EXT4_IOC_CHECKPOINT _IOW('f', 43, __u32)
31#define EXT4_IOC_GETFSUUID _IOR('f', 44, struct fsuuid)
32#define EXT4_IOC_SETFSUUID _IOW('f', 44, struct fsuuid)
33#define EXT4_IOC_SHUTDOWN _IOR('X', 125, __u32)
34#define EXT4_IOC32_GETVERSION _IOR('f', 3, int)
35#define EXT4_IOC32_SETVERSION _IOW('f', 4, int)
36#define EXT4_IOC32_GETRSVSZ _IOR('f', 5, int)
37#define EXT4_IOC32_SETRSVSZ _IOW('f', 6, int)
38#define EXT4_IOC32_GROUP_EXTEND _IOW('f', 7, unsigned int)
39#define EXT4_IOC32_GROUP_ADD _IOW('f', 8, struct compat_ext4_new_group_input)
40#define EXT4_IOC32_GETVERSION_OLD FS_IOC32_GETVERSION
41#define EXT4_IOC32_SETVERSION_OLD FS_IOC32_SETVERSION
42#define EXT4_STATE_FLAG_EXT_PRECACHED 0x00000001
43#define EXT4_STATE_FLAG_NEW 0x00000002
44#define EXT4_STATE_FLAG_NEWENTRY 0x00000004
45#define EXT4_STATE_FLAG_DA_ALLOC_CLOSE 0x00000008
46#define EXT4_IOC_CHECKPOINT_FLAG_DISCARD 0x1
47#define EXT4_IOC_CHECKPOINT_FLAG_ZEROOUT 0x2
48#define EXT4_IOC_CHECKPOINT_FLAG_DRY_RUN 0x4
49#define EXT4_IOC_CHECKPOINT_FLAG_VALID (EXT4_IOC_CHECKPOINT_FLAG_DISCARD | EXT4_IOC_CHECKPOINT_FLAG_ZEROOUT | EXT4_IOC_CHECKPOINT_FLAG_DRY_RUN)
50struct fsuuid {
51 __u32 fsu_len;
52 __u32 fsu_flags;
53 __u8 fsu_uuid[];
54};
55struct move_extent {
56 __u32 reserved;
57 __u32 donor_fd;
58 __u64 orig_start;
59 __u64 donor_start;
60 __u64 len;
61 __u64 moved_len;
62};
63#define EXT4_GOING_FLAGS_DEFAULT 0x0
64#define EXT4_GOING_FLAGS_LOGFLUSH 0x1
65#define EXT4_GOING_FLAGS_NOLOGFLUSH 0x2
66struct ext4_new_group_input {
67 __u32 group;
68 __u64 block_bitmap;
69 __u64 inode_bitmap;
70 __u64 inode_table;
71 __u32 blocks_count;
72 __u16 reserved_blocks;
73 __u16 unused;
74};
75#define EXT4_FIEMAP_EXTENT_HOLE 0x08000000
76#endif