Android-cuttlefish cvd tool
Classes | Macros | Typedefs | Enumerations
f2fs_io.h File Reference
#include <sys/types.h>
#include <sys/ioctl.h>
Include dependency graph for f2fs_io.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  fscrypt_policy_v1
 
struct  fscrypt_policy_v2
 
struct  fscrypt_get_policy_ex_arg
 
struct  fsverity_enable_arg
 
struct  f2fs_gc_range
 
struct  f2fs_defragment
 
struct  f2fs_move_range
 
struct  f2fs_flush_device
 
struct  f2fs_comp_option
 

Macros

#define UNUSED(x)   x
 
#define F2FS_DEFAULT_BLKSIZE   4096
 
#define NEW_ADDR   0xFFFFFFFF
 
#define FS_IOC_GETFLAGS   _IOR('f', 1, long)
 
#define FS_IOC_SETFLAGS   _IOW('f', 2, long)
 
#define F2FS_IOCTL_MAGIC   0xf5
 
#define F2FS_IOC_GETFLAGS   FS_IOC_GETFLAGS
 
#define F2FS_IOC_SETFLAGS   FS_IOC_SETFLAGS
 
#define F2FS_IOC_START_ATOMIC_WRITE   _IO(F2FS_IOCTL_MAGIC, 1)
 
#define F2FS_IOC_COMMIT_ATOMIC_WRITE   _IO(F2FS_IOCTL_MAGIC, 2)
 
#define F2FS_IOC_START_VOLATILE_WRITE   _IO(F2FS_IOCTL_MAGIC, 3)
 
#define F2FS_IOC_RELEASE_VOLATILE_WRITE   _IO(F2FS_IOCTL_MAGIC, 4)
 
#define F2FS_IOC_ABORT_VOLATILE_WRITE   _IO(F2FS_IOCTL_MAGIC, 5)
 
#define F2FS_IOC_GARBAGE_COLLECT   _IOW(F2FS_IOCTL_MAGIC, 6, __u32)
 
#define F2FS_IOC_WRITE_CHECKPOINT   _IO(F2FS_IOCTL_MAGIC, 7)
 
#define F2FS_IOC_DEFRAGMENT
 
#define F2FS_IOC_MOVE_RANGE
 
#define F2FS_IOC_FLUSH_DEVICE
 
#define F2FS_IOC_GARBAGE_COLLECT_RANGE
 
#define F2FS_IOC_GET_FEATURES   _IOR(F2FS_IOCTL_MAGIC, 12, __u32)
 
#define F2FS_IOC_SET_PIN_FILE   _IOW(F2FS_IOCTL_MAGIC, 13, __u32)
 
#define F2FS_IOC_GET_PIN_FILE   _IOR(F2FS_IOCTL_MAGIC, 14, __u32)
 
#define F2FS_IOC_PRECACHE_EXTENTS   _IO(F2FS_IOCTL_MAGIC, 15)
 
#define F2FS_IOC_RESIZE_FS   _IOW(F2FS_IOCTL_MAGIC, 16, __u64)
 
#define F2FS_IOC_GET_COMPRESS_BLOCKS   _IOR(F2FS_IOCTL_MAGIC, 17, __u64)
 
#define F2FS_IOC_RELEASE_COMPRESS_BLOCKS    _IOR(F2FS_IOCTL_MAGIC, 18, __u64)
 
#define F2FS_IOC_RESERVE_COMPRESS_BLOCKS    _IOR(F2FS_IOCTL_MAGIC, 19, __u64)
 
#define F2FS_IOC_GET_COMPRESS_OPTION
 
#define F2FS_IOC_SET_COMPRESS_OPTION
 
#define F2FS_IOC_DECOMPRESS_FILE   _IO(F2FS_IOCTL_MAGIC, 23)
 
#define F2FS_IOC_COMPRESS_FILE   _IO(F2FS_IOCTL_MAGIC, 24)
 
#define F2FS_IOC_START_ATOMIC_REPLACE   _IO(F2FS_IOCTL_MAGIC, 25)
 
#define F2FS_IOC_GET_DEV_ALIAS_FILE   _IOR(F2FS_IOCTL_MAGIC, 26, __u32)
 
#define F2FS_IOC_IO_PRIO   _IOW(F2FS_IOCTL_MAGIC, 27, __u32)
 
#define FSCRYPT_POLICY_V1   0
 
#define FSCRYPT_KEY_DESCRIPTOR_SIZE   8
 
#define FS_IOC_GET_ENCRYPTION_POLICY   _IOW('f', 21, struct fscrypt_policy_v1)
 
#define FSCRYPT_POLICY_V2   2
 
#define FSCRYPT_KEY_IDENTIFIER_SIZE   16
 
#define FS_IOC_GET_ENCRYPTION_POLICY_EX   _IOWR('f', 22, __u8[9]) /* size + version */
 
#define F2FS_IOC_SET_ENCRYPTION_POLICY   FS_IOC_SET_ENCRYPTION_POLICY
 
#define F2FS_IOC_GET_ENCRYPTION_POLICY   FS_IOC_GET_ENCRYPTION_POLICY
 
#define F2FS_IOC_GET_ENCRYPTION_PWSALT   FS_IOC_GET_ENCRYPTION_PWSALT
 
#define FS_IOC_ENABLE_VERITY   _IOW('f', 133, struct fsverity_enable_arg)
 
#define FS_VERITY_HASH_ALG_SHA256   1
 
#define F2FS_NOCOW_FL   0x00800000 /* Do not cow file */
 
#define F2FS_IOC_SHUTDOWN   _IOR('X', 125, __u32) /* Shutdown */
 
#define F2FS_GOING_DOWN_FULLSYNC   0x0 /* going down with full sync */
 
#define F2FS_GOING_DOWN_METASYNC   0x1 /* going down with metadata */
 
#define F2FS_GOING_DOWN_NOSYNC   0x2 /* going down */
 
#define F2FS_GOING_DOWN_METAFLUSH   0x3 /* going down with meta flush */
 
#define F2FS_GOING_DOWN_NEED_FSCK   0x4 /* going down to trigger fsck */
 
#define F2FS_GOING_DOWN_MAX   0x5
 
#define F2FS_IOC_FSGETXATTR   FS_IOC_FSGETXATTR
 
#define F2FS_IOC_FSSETXATTR   FS_IOC_FSSETXATTR
 
#define F2FS_SYSTEM_ADVISE_NAME   "system.advise"
 
#define FADVISE_COLD_BIT   0x01
 
#define FADVISE_LOST_PINO_BIT   0x02
 
#define FADVISE_ENCRYPT_BIT   0x04
 
#define FADVISE_ENC_NAME_BIT   0x08
 
#define FADVISE_KEEP_SIZE_BIT   0x10
 
#define FADVISE_HOT_BIT   0x20
 
#define FADVISE_VERITY_BIT   0x40
 
#define FADVISE_TRUNC_BIT   0x80
 
#define FS_IMMUTABLE_FL   0x00000010 /* Immutable file */
 
#define FS_ENCRYPT_FL   0x00000800 /* Encrypted file */
 
#define FS_VERITY_FL   0x00100000 /* Verity protected inode */
 
#define FS_INLINE_DATA_FL   0x10000000 /* Inline data for regular/symlink files */
 
#define FS_NOCOW_FL   0x00800000 /* Do not cow file */
 
#define FS_NOCOMP_FL   0x00000400 /* Don't compress */
 
#define FS_COMPR_FL   0x00000004 /* Compress file */
 
#define FS_CASEFOLD_FL   0x40000000 /* Folder is case insensitive */
 

Typedefs

typedef uint64_t u64
 
typedef uint32_t u32
 
typedef uint16_t u16
 
typedef uint8_t u8
 
typedef u8 __u8
 
typedef u16 __u16
 
typedef u32 __u32
 
typedef u16 __le16
 
typedef u32 __le32
 
typedef u16 __be16
 
typedef u32 __be32
 

Enumerations

enum  { F2FS_IOPRIO_WRITE = 1 }
 

Macro Definition Documentation

◆ F2FS_DEFAULT_BLKSIZE

#define F2FS_DEFAULT_BLKSIZE   4096

◆ F2FS_GOING_DOWN_FULLSYNC

#define F2FS_GOING_DOWN_FULLSYNC   0x0 /* going down with full sync */

◆ F2FS_GOING_DOWN_MAX

#define F2FS_GOING_DOWN_MAX   0x5

◆ F2FS_GOING_DOWN_METAFLUSH

#define F2FS_GOING_DOWN_METAFLUSH   0x3 /* going down with meta flush */

◆ F2FS_GOING_DOWN_METASYNC

#define F2FS_GOING_DOWN_METASYNC   0x1 /* going down with metadata */

◆ F2FS_GOING_DOWN_NEED_FSCK

#define F2FS_GOING_DOWN_NEED_FSCK   0x4 /* going down to trigger fsck */

◆ F2FS_GOING_DOWN_NOSYNC

#define F2FS_GOING_DOWN_NOSYNC   0x2 /* going down */

◆ F2FS_IOC_ABORT_VOLATILE_WRITE

#define F2FS_IOC_ABORT_VOLATILE_WRITE   _IO(F2FS_IOCTL_MAGIC, 5)

◆ F2FS_IOC_COMMIT_ATOMIC_WRITE

#define F2FS_IOC_COMMIT_ATOMIC_WRITE   _IO(F2FS_IOCTL_MAGIC, 2)

◆ F2FS_IOC_COMPRESS_FILE

#define F2FS_IOC_COMPRESS_FILE   _IO(F2FS_IOCTL_MAGIC, 24)

◆ F2FS_IOC_DECOMPRESS_FILE

#define F2FS_IOC_DECOMPRESS_FILE   _IO(F2FS_IOCTL_MAGIC, 23)

◆ F2FS_IOC_DEFRAGMENT

#define F2FS_IOC_DEFRAGMENT
Value:
_IOWR(F2FS_IOCTL_MAGIC, 8, \
#define F2FS_IOCTL_MAGIC
Definition: f2fs_io.h:61
Definition: f2fs_io.h:235

◆ F2FS_IOC_FLUSH_DEVICE

#define F2FS_IOC_FLUSH_DEVICE
Value:
_IOW(F2FS_IOCTL_MAGIC, 10, \
Definition: f2fs_io.h:247

◆ F2FS_IOC_FSGETXATTR

#define F2FS_IOC_FSGETXATTR   FS_IOC_FSGETXATTR

◆ F2FS_IOC_FSSETXATTR

#define F2FS_IOC_FSSETXATTR   FS_IOC_FSSETXATTR

◆ F2FS_IOC_GARBAGE_COLLECT

#define F2FS_IOC_GARBAGE_COLLECT   _IOW(F2FS_IOCTL_MAGIC, 6, __u32)

◆ F2FS_IOC_GARBAGE_COLLECT_RANGE

#define F2FS_IOC_GARBAGE_COLLECT_RANGE
Value:
_IOW(F2FS_IOCTL_MAGIC, 11, \
struct f2fs_gc_range)
Definition: f2fs_io.h:229

◆ F2FS_IOC_GET_COMPRESS_BLOCKS

#define F2FS_IOC_GET_COMPRESS_BLOCKS   _IOR(F2FS_IOCTL_MAGIC, 17, __u64)

◆ F2FS_IOC_GET_COMPRESS_OPTION

#define F2FS_IOC_GET_COMPRESS_OPTION
Value:
_IOR(F2FS_IOCTL_MAGIC, 21, \
Definition: f2fs_io.h:252

◆ F2FS_IOC_GET_DEV_ALIAS_FILE

#define F2FS_IOC_GET_DEV_ALIAS_FILE   _IOR(F2FS_IOCTL_MAGIC, 26, __u32)

◆ F2FS_IOC_GET_ENCRYPTION_POLICY

#define F2FS_IOC_GET_ENCRYPTION_POLICY   FS_IOC_GET_ENCRYPTION_POLICY

◆ F2FS_IOC_GET_ENCRYPTION_PWSALT

#define F2FS_IOC_GET_ENCRYPTION_PWSALT   FS_IOC_GET_ENCRYPTION_PWSALT

◆ F2FS_IOC_GET_FEATURES

#define F2FS_IOC_GET_FEATURES   _IOR(F2FS_IOCTL_MAGIC, 12, __u32)

◆ F2FS_IOC_GET_PIN_FILE

#define F2FS_IOC_GET_PIN_FILE   _IOR(F2FS_IOCTL_MAGIC, 14, __u32)

◆ F2FS_IOC_GETFLAGS

#define F2FS_IOC_GETFLAGS   FS_IOC_GETFLAGS

◆ F2FS_IOC_IO_PRIO

#define F2FS_IOC_IO_PRIO   _IOW(F2FS_IOCTL_MAGIC, 27, __u32)

◆ F2FS_IOC_MOVE_RANGE

#define F2FS_IOC_MOVE_RANGE
Value:
_IOWR(F2FS_IOCTL_MAGIC, 9, \
Definition: f2fs_io.h:240

◆ F2FS_IOC_PRECACHE_EXTENTS

#define F2FS_IOC_PRECACHE_EXTENTS   _IO(F2FS_IOCTL_MAGIC, 15)

◆ F2FS_IOC_RELEASE_COMPRESS_BLOCKS

#define F2FS_IOC_RELEASE_COMPRESS_BLOCKS    _IOR(F2FS_IOCTL_MAGIC, 18, __u64)

◆ F2FS_IOC_RELEASE_VOLATILE_WRITE

#define F2FS_IOC_RELEASE_VOLATILE_WRITE   _IO(F2FS_IOCTL_MAGIC, 4)

◆ F2FS_IOC_RESERVE_COMPRESS_BLOCKS

#define F2FS_IOC_RESERVE_COMPRESS_BLOCKS    _IOR(F2FS_IOCTL_MAGIC, 19, __u64)

◆ F2FS_IOC_RESIZE_FS

#define F2FS_IOC_RESIZE_FS   _IOW(F2FS_IOCTL_MAGIC, 16, __u64)

◆ F2FS_IOC_SET_COMPRESS_OPTION

#define F2FS_IOC_SET_COMPRESS_OPTION
Value:
_IOW(F2FS_IOCTL_MAGIC, 22, \

◆ F2FS_IOC_SET_ENCRYPTION_POLICY

#define F2FS_IOC_SET_ENCRYPTION_POLICY   FS_IOC_SET_ENCRYPTION_POLICY

◆ F2FS_IOC_SET_PIN_FILE

#define F2FS_IOC_SET_PIN_FILE   _IOW(F2FS_IOCTL_MAGIC, 13, __u32)

◆ F2FS_IOC_SETFLAGS

#define F2FS_IOC_SETFLAGS   FS_IOC_SETFLAGS

◆ F2FS_IOC_SHUTDOWN

#define F2FS_IOC_SHUTDOWN   _IOR('X', 125, __u32) /* Shutdown */

◆ F2FS_IOC_START_ATOMIC_REPLACE

#define F2FS_IOC_START_ATOMIC_REPLACE   _IO(F2FS_IOCTL_MAGIC, 25)

◆ F2FS_IOC_START_ATOMIC_WRITE

#define F2FS_IOC_START_ATOMIC_WRITE   _IO(F2FS_IOCTL_MAGIC, 1)

◆ F2FS_IOC_START_VOLATILE_WRITE

#define F2FS_IOC_START_VOLATILE_WRITE   _IO(F2FS_IOCTL_MAGIC, 3)

◆ F2FS_IOC_WRITE_CHECKPOINT

#define F2FS_IOC_WRITE_CHECKPOINT   _IO(F2FS_IOCTL_MAGIC, 7)

◆ F2FS_IOCTL_MAGIC

#define F2FS_IOCTL_MAGIC   0xf5

◆ F2FS_NOCOW_FL

#define F2FS_NOCOW_FL   0x00800000 /* Do not cow file */

◆ F2FS_SYSTEM_ADVISE_NAME

#define F2FS_SYSTEM_ADVISE_NAME   "system.advise"

◆ FADVISE_COLD_BIT

#define FADVISE_COLD_BIT   0x01

◆ FADVISE_ENC_NAME_BIT

#define FADVISE_ENC_NAME_BIT   0x08

◆ FADVISE_ENCRYPT_BIT

#define FADVISE_ENCRYPT_BIT   0x04

◆ FADVISE_HOT_BIT

#define FADVISE_HOT_BIT   0x20

◆ FADVISE_KEEP_SIZE_BIT

#define FADVISE_KEEP_SIZE_BIT   0x10

◆ FADVISE_LOST_PINO_BIT

#define FADVISE_LOST_PINO_BIT   0x02

◆ FADVISE_TRUNC_BIT

#define FADVISE_TRUNC_BIT   0x80

◆ FADVISE_VERITY_BIT

#define FADVISE_VERITY_BIT   0x40

◆ FS_CASEFOLD_FL

#define FS_CASEFOLD_FL   0x40000000 /* Folder is case insensitive */

◆ FS_COMPR_FL

#define FS_COMPR_FL   0x00000004 /* Compress file */

◆ FS_ENCRYPT_FL

#define FS_ENCRYPT_FL   0x00000800 /* Encrypted file */

◆ FS_IMMUTABLE_FL

#define FS_IMMUTABLE_FL   0x00000010 /* Immutable file */

◆ FS_INLINE_DATA_FL

#define FS_INLINE_DATA_FL   0x10000000 /* Inline data for regular/symlink files */

◆ FS_IOC_ENABLE_VERITY

#define FS_IOC_ENABLE_VERITY   _IOW('f', 133, struct fsverity_enable_arg)

◆ FS_IOC_GET_ENCRYPTION_POLICY

#define FS_IOC_GET_ENCRYPTION_POLICY   _IOW('f', 21, struct fscrypt_policy_v1)

◆ FS_IOC_GET_ENCRYPTION_POLICY_EX

#define FS_IOC_GET_ENCRYPTION_POLICY_EX   _IOWR('f', 22, __u8[9]) /* size + version */

◆ FS_IOC_GETFLAGS

#define FS_IOC_GETFLAGS   _IOR('f', 1, long)

◆ FS_IOC_SETFLAGS

#define FS_IOC_SETFLAGS   _IOW('f', 2, long)

◆ FS_NOCOMP_FL

#define FS_NOCOMP_FL   0x00000400 /* Don't compress */

◆ FS_NOCOW_FL

#define FS_NOCOW_FL   0x00800000 /* Do not cow file */

◆ FS_VERITY_FL

#define FS_VERITY_FL   0x00100000 /* Verity protected inode */

◆ FS_VERITY_HASH_ALG_SHA256

#define FS_VERITY_HASH_ALG_SHA256   1

◆ FSCRYPT_KEY_DESCRIPTOR_SIZE

#define FSCRYPT_KEY_DESCRIPTOR_SIZE   8

◆ FSCRYPT_KEY_IDENTIFIER_SIZE

#define FSCRYPT_KEY_IDENTIFIER_SIZE   16

◆ FSCRYPT_POLICY_V1

#define FSCRYPT_POLICY_V1   0

◆ FSCRYPT_POLICY_V2

#define FSCRYPT_POLICY_V2   2

◆ NEW_ADDR

#define NEW_ADDR   0xFFFFFFFF

◆ UNUSED

#define UNUSED (   x)    x

Typedef Documentation

◆ __be16

typedef u16 __be16

◆ __be32

typedef u32 __be32

◆ __le16

typedef u16 __le16

◆ __le32

typedef u32 __le32

◆ __u16

typedef u16 __u16

◆ __u32

typedef u32 __u32

◆ __u8

typedef u8 __u8

◆ u16

typedef uint16_t u16

◆ u32

typedef uint32_t u32

◆ u64

typedef uint64_t u64

◆ u8

typedef uint8_t u8

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
F2FS_IOPRIO_WRITE