122851890Sopenharmony_ci/**************************************************************************** 222851890Sopenharmony_ci **************************************************************************** 322851890Sopenharmony_ci *** 422851890Sopenharmony_ci *** This header was automatically generated from a Linux kernel header 522851890Sopenharmony_ci *** of the same name, to make information necessary for userspace to 622851890Sopenharmony_ci *** call into the kernel available to libc. It contains only constants, 722851890Sopenharmony_ci *** structures, and macros generated from the original header, and thus, 822851890Sopenharmony_ci *** contains no copyrightable information. 922851890Sopenharmony_ci *** 1022851890Sopenharmony_ci *** To edit the content of this header, modify the corresponding 1122851890Sopenharmony_ci *** source file (e.g. under external/kernel-headers/original/) then 1222851890Sopenharmony_ci *** run bionic/libc/kernel/tools/update_all.py 1322851890Sopenharmony_ci *** 1422851890Sopenharmony_ci *** Any manual change here will be lost the next time this script will 1522851890Sopenharmony_ci *** be run. You've been warned! 1622851890Sopenharmony_ci *** 1722851890Sopenharmony_ci **************************************************************************** 1822851890Sopenharmony_ci ****************************************************************************/ 1922851890Sopenharmony_ci#ifndef _LINUX_FSMAP_H 2022851890Sopenharmony_ci#define _LINUX_FSMAP_H 2122851890Sopenharmony_ci#include <linux/types.h> 2222851890Sopenharmony_cistruct fsmap { 2322851890Sopenharmony_ci __u32 fmr_device; 2422851890Sopenharmony_ci __u32 fmr_flags; 2522851890Sopenharmony_ci __u64 fmr_physical; 2622851890Sopenharmony_ci __u64 fmr_owner; 2722851890Sopenharmony_ci __u64 fmr_offset; 2822851890Sopenharmony_ci __u64 fmr_length; 2922851890Sopenharmony_ci __u64 fmr_reserved[3]; 3022851890Sopenharmony_ci}; 3122851890Sopenharmony_cistruct fsmap_head { 3222851890Sopenharmony_ci __u32 fmh_iflags; 3322851890Sopenharmony_ci __u32 fmh_oflags; 3422851890Sopenharmony_ci __u32 fmh_count; 3522851890Sopenharmony_ci __u32 fmh_entries; 3622851890Sopenharmony_ci __u64 fmh_reserved[6]; 3722851890Sopenharmony_ci struct fsmap fmh_keys[2]; 3822851890Sopenharmony_ci struct fsmap fmh_recs[]; 3922851890Sopenharmony_ci}; 4022851890Sopenharmony_ci#define FMH_IF_VALID 0 4122851890Sopenharmony_ci#define FMH_OF_DEV_T 0x1 4222851890Sopenharmony_ci#define FMR_OF_PREALLOC 0x1 4322851890Sopenharmony_ci#define FMR_OF_ATTR_FORK 0x2 4422851890Sopenharmony_ci#define FMR_OF_EXTENT_MAP 0x4 4522851890Sopenharmony_ci#define FMR_OF_SHARED 0x8 4622851890Sopenharmony_ci#define FMR_OF_SPECIAL_OWNER 0x10 4722851890Sopenharmony_ci#define FMR_OF_LAST 0x20 4822851890Sopenharmony_ci#define FMR_OWNER(type,code) (((__u64) type << 32) | ((__u64) code & 0xFFFFFFFFULL)) 4922851890Sopenharmony_ci#define FMR_OWNER_TYPE(owner) ((__u32) ((__u64) owner >> 32)) 5022851890Sopenharmony_ci#define FMR_OWNER_CODE(owner) ((__u32) (((__u64) owner & 0xFFFFFFFFULL))) 5122851890Sopenharmony_ci#define FMR_OWN_FREE FMR_OWNER(0, 1) 5222851890Sopenharmony_ci#define FMR_OWN_UNKNOWN FMR_OWNER(0, 2) 5322851890Sopenharmony_ci#define FMR_OWN_METADATA FMR_OWNER(0, 3) 5422851890Sopenharmony_ci#define FS_IOC_GETFSMAP _IOWR('X', 59, struct fsmap_head) 5522851890Sopenharmony_ci#endif 56