1 /* 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 */ 7 #ifndef _LINUX_FSMAP_H 8 #define _LINUX_FSMAP_H 9 #include <linux/types.h> 10 struct fsmap { 11 __u32 fmr_device; 12 __u32 fmr_flags; 13 __u64 fmr_physical; 14 __u64 fmr_owner; 15 __u64 fmr_offset; 16 __u64 fmr_length; 17 __u64 fmr_reserved[3]; 18 }; 19 struct fsmap_head { 20 __u32 fmh_iflags; 21 __u32 fmh_oflags; 22 __u32 fmh_count; 23 __u32 fmh_entries; 24 __u64 fmh_reserved[6]; 25 struct fsmap fmh_keys[2]; 26 struct fsmap fmh_recs[]; 27 }; 28 #define FMH_IF_VALID 0 29 #define FMH_OF_DEV_T 0x1 30 #define FMR_OF_PREALLOC 0x1 31 #define FMR_OF_ATTR_FORK 0x2 32 #define FMR_OF_EXTENT_MAP 0x4 33 #define FMR_OF_SHARED 0x8 34 #define FMR_OF_SPECIAL_OWNER 0x10 35 #define FMR_OF_LAST 0x20 36 #define FMR_OWNER(type,code) (((__u64) type << 32) | ((__u64) code & 0xFFFFFFFFULL)) 37 #define FMR_OWNER_TYPE(owner) ((__u32) ((__u64) owner >> 32)) 38 #define FMR_OWNER_CODE(owner) ((__u32) (((__u64) owner & 0xFFFFFFFFULL))) 39 #define FMR_OWN_FREE FMR_OWNER(0, 1) 40 #define FMR_OWN_UNKNOWN FMR_OWNER(0, 2) 41 #define FMR_OWN_METADATA FMR_OWNER(0, 3) 42 #define FS_IOC_GETFSMAP _IOWR('X', 59, struct fsmap_head) 43 #endif 44