xref: /aosp_15_r20/bionic/libc/kernel/uapi/linux/fsmap.h (revision 8d67ca893c1523eb926b9080dbe4e2ffd2a27ba1)
1*8d67ca89SAndroid Build Coastguard Worker /*
2*8d67ca89SAndroid Build Coastguard Worker  * This file is auto-generated. Modifications will be lost.
3*8d67ca89SAndroid Build Coastguard Worker  *
4*8d67ca89SAndroid Build Coastguard Worker  * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
5*8d67ca89SAndroid Build Coastguard Worker  * for more information.
6*8d67ca89SAndroid Build Coastguard Worker  */
7*8d67ca89SAndroid Build Coastguard Worker #ifndef _LINUX_FSMAP_H
8*8d67ca89SAndroid Build Coastguard Worker #define _LINUX_FSMAP_H
9*8d67ca89SAndroid Build Coastguard Worker #include <linux/types.h>
10*8d67ca89SAndroid Build Coastguard Worker struct fsmap {
11*8d67ca89SAndroid Build Coastguard Worker   __u32 fmr_device;
12*8d67ca89SAndroid Build Coastguard Worker   __u32 fmr_flags;
13*8d67ca89SAndroid Build Coastguard Worker   __u64 fmr_physical;
14*8d67ca89SAndroid Build Coastguard Worker   __u64 fmr_owner;
15*8d67ca89SAndroid Build Coastguard Worker   __u64 fmr_offset;
16*8d67ca89SAndroid Build Coastguard Worker   __u64 fmr_length;
17*8d67ca89SAndroid Build Coastguard Worker   __u64 fmr_reserved[3];
18*8d67ca89SAndroid Build Coastguard Worker };
19*8d67ca89SAndroid Build Coastguard Worker struct fsmap_head {
20*8d67ca89SAndroid Build Coastguard Worker   __u32 fmh_iflags;
21*8d67ca89SAndroid Build Coastguard Worker   __u32 fmh_oflags;
22*8d67ca89SAndroid Build Coastguard Worker   __u32 fmh_count;
23*8d67ca89SAndroid Build Coastguard Worker   __u32 fmh_entries;
24*8d67ca89SAndroid Build Coastguard Worker   __u64 fmh_reserved[6];
25*8d67ca89SAndroid Build Coastguard Worker   struct fsmap fmh_keys[2];
26*8d67ca89SAndroid Build Coastguard Worker   struct fsmap fmh_recs[];
27*8d67ca89SAndroid Build Coastguard Worker };
28*8d67ca89SAndroid Build Coastguard Worker #define FMH_IF_VALID 0
29*8d67ca89SAndroid Build Coastguard Worker #define FMH_OF_DEV_T 0x1
30*8d67ca89SAndroid Build Coastguard Worker #define FMR_OF_PREALLOC 0x1
31*8d67ca89SAndroid Build Coastguard Worker #define FMR_OF_ATTR_FORK 0x2
32*8d67ca89SAndroid Build Coastguard Worker #define FMR_OF_EXTENT_MAP 0x4
33*8d67ca89SAndroid Build Coastguard Worker #define FMR_OF_SHARED 0x8
34*8d67ca89SAndroid Build Coastguard Worker #define FMR_OF_SPECIAL_OWNER 0x10
35*8d67ca89SAndroid Build Coastguard Worker #define FMR_OF_LAST 0x20
36*8d67ca89SAndroid Build Coastguard Worker #define FMR_OWNER(type,code) (((__u64) type << 32) | ((__u64) code & 0xFFFFFFFFULL))
37*8d67ca89SAndroid Build Coastguard Worker #define FMR_OWNER_TYPE(owner) ((__u32) ((__u64) owner >> 32))
38*8d67ca89SAndroid Build Coastguard Worker #define FMR_OWNER_CODE(owner) ((__u32) (((__u64) owner & 0xFFFFFFFFULL)))
39*8d67ca89SAndroid Build Coastguard Worker #define FMR_OWN_FREE FMR_OWNER(0, 1)
40*8d67ca89SAndroid Build Coastguard Worker #define FMR_OWN_UNKNOWN FMR_OWNER(0, 2)
41*8d67ca89SAndroid Build Coastguard Worker #define FMR_OWN_METADATA FMR_OWNER(0, 3)
42*8d67ca89SAndroid Build Coastguard Worker #define FS_IOC_GETFSMAP _IOWR('X', 59, struct fsmap_head)
43*8d67ca89SAndroid Build Coastguard Worker #endif
44