ReactOS 0.4.15-dev-8052-gc0e3179
btrfs.h File Reference
#include <stdint.h>
#include <assert.h>
Include dependency graph for btrfs.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  BTRFS_UUID
 
struct  KEY
 
struct  tree_header
 
struct  leaf_node
 
struct  internal_node
 
struct  DEV_ITEM
 
struct  superblock_backup
 
struct  superblock
 
struct  DIR_ITEM
 
struct  BTRFS_TIME
 
struct  INODE_ITEM
 
struct  ROOT_ITEM
 
struct  CHUNK_ITEM
 
struct  CHUNK_ITEM_STRIPE
 
struct  EXTENT_DATA
 
struct  EXTENT_DATA2
 
struct  INODE_REF
 
struct  INODE_EXTREF
 
struct  EXTENT_ITEM
 
struct  EXTENT_ITEM2
 
struct  EXTENT_ITEM_V0
 
struct  EXTENT_ITEM_TREE
 
struct  TREE_BLOCK_REF
 
struct  EXTENT_DATA_REF
 
struct  BLOCK_GROUP_ITEM
 
struct  EXTENT_REF_V0
 
struct  SHARED_BLOCK_REF
 
struct  SHARED_DATA_REF
 
struct  FREE_SPACE_ENTRY
 
struct  FREE_SPACE_ITEM
 
struct  ROOT_REF
 
struct  DEV_EXTENT
 
struct  BALANCE_ARGS
 
struct  BALANCE_ITEM
 
struct  FREE_SPACE_INFO
 
struct  btrfs_send_header
 
struct  btrfs_send_command
 
struct  btrfs_send_tlv
 

Macros

#define BTRFS_MAGIC   0x4d5f53665248425f
 
#define MAX_LABEL_SIZE   0x100
 
#define SUBVOL_ROOT_INODE   0x100
 
#define BTRFS_LAST_FREE_OBJECTID   0xffffffffffffff00
 
#define TYPE_INODE_ITEM   0x01
 
#define TYPE_INODE_REF   0x0C
 
#define TYPE_INODE_EXTREF   0x0D
 
#define TYPE_XATTR_ITEM   0x18
 
#define TYPE_ORPHAN_INODE   0x30
 
#define TYPE_DIR_ITEM   0x54
 
#define TYPE_DIR_INDEX   0x60
 
#define TYPE_EXTENT_DATA   0x6C
 
#define TYPE_EXTENT_CSUM   0x80
 
#define TYPE_ROOT_ITEM   0x84
 
#define TYPE_ROOT_BACKREF   0x90
 
#define TYPE_ROOT_REF   0x9C
 
#define TYPE_EXTENT_ITEM   0xA8
 
#define TYPE_METADATA_ITEM   0xA9
 
#define TYPE_TREE_BLOCK_REF   0xB0
 
#define TYPE_EXTENT_DATA_REF   0xB2
 
#define TYPE_EXTENT_REF_V0   0xB4
 
#define TYPE_SHARED_BLOCK_REF   0xB6
 
#define TYPE_SHARED_DATA_REF   0xB8
 
#define TYPE_BLOCK_GROUP_ITEM   0xC0
 
#define TYPE_FREE_SPACE_INFO   0xC6
 
#define TYPE_FREE_SPACE_EXTENT   0xC7
 
#define TYPE_FREE_SPACE_BITMAP   0xC8
 
#define TYPE_DEV_EXTENT   0xCC
 
#define TYPE_DEV_ITEM   0xD8
 
#define TYPE_CHUNK_ITEM   0xE4
 
#define TYPE_TEMP_ITEM   0xF8
 
#define TYPE_DEV_STATS   0xF9
 
#define TYPE_SUBVOL_UUID   0xFB
 
#define TYPE_SUBVOL_REC_UUID   0xFC
 
#define BTRFS_ROOT_ROOT   1
 
#define BTRFS_ROOT_EXTENT   2
 
#define BTRFS_ROOT_CHUNK   3
 
#define BTRFS_ROOT_DEVTREE   4
 
#define BTRFS_ROOT_FSTREE   5
 
#define BTRFS_ROOT_TREEDIR   6
 
#define BTRFS_ROOT_CHECKSUM   7
 
#define BTRFS_ROOT_UUID   9
 
#define BTRFS_ROOT_FREE_SPACE   0xa
 
#define BTRFS_ROOT_DATA_RELOC   0xFFFFFFFFFFFFFFF7
 
#define BTRFS_COMPRESSION_NONE   0
 
#define BTRFS_COMPRESSION_ZLIB   1
 
#define BTRFS_COMPRESSION_LZO   2
 
#define BTRFS_COMPRESSION_ZSTD   3
 
#define BTRFS_ENCRYPTION_NONE   0
 
#define BTRFS_ENCODING_NONE   0
 
#define EXTENT_TYPE_INLINE   0
 
#define EXTENT_TYPE_REGULAR   1
 
#define EXTENT_TYPE_PREALLOC   2
 
#define BLOCK_FLAG_DATA   0x001
 
#define BLOCK_FLAG_SYSTEM   0x002
 
#define BLOCK_FLAG_METADATA   0x004
 
#define BLOCK_FLAG_RAID0   0x008
 
#define BLOCK_FLAG_RAID1   0x010
 
#define BLOCK_FLAG_DUPLICATE   0x020
 
#define BLOCK_FLAG_RAID10   0x040
 
#define BLOCK_FLAG_RAID5   0x080
 
#define BLOCK_FLAG_RAID6   0x100
 
#define BLOCK_FLAG_RAID1C3   0x200
 
#define BLOCK_FLAG_RAID1C4   0x400
 
#define FREE_SPACE_CACHE_ID   0xFFFFFFFFFFFFFFF5
 
#define EXTENT_CSUM_ID   0xFFFFFFFFFFFFFFF6
 
#define BALANCE_ITEM_ID   0xFFFFFFFFFFFFFFFC
 
#define BTRFS_INODE_NODATASUM   0x001
 
#define BTRFS_INODE_NODATACOW   0x002
 
#define BTRFS_INODE_READONLY   0x004
 
#define BTRFS_INODE_NOCOMPRESS   0x008
 
#define BTRFS_INODE_PREALLOC   0x010
 
#define BTRFS_INODE_SYNC   0x020
 
#define BTRFS_INODE_IMMUTABLE   0x040
 
#define BTRFS_INODE_APPEND   0x080
 
#define BTRFS_INODE_NODUMP   0x100
 
#define BTRFS_INODE_NOATIME   0x200
 
#define BTRFS_INODE_DIRSYNC   0x400
 
#define BTRFS_INODE_COMPRESS   0x800
 
#define BTRFS_INODE_RO_VERITY   0x1
 
#define BTRFS_SUBVOL_READONLY   0x1
 
#define BTRFS_COMPAT_RO_FLAGS_FREE_SPACE_CACHE   0x1
 
#define BTRFS_COMPAT_RO_FLAGS_FREE_SPACE_CACHE_VALID   0x2
 
#define BTRFS_COMPAT_RO_FLAGS_VERITY   0x4
 
#define BTRFS_INCOMPAT_FLAGS_MIXED_BACKREF   0x0001
 
#define BTRFS_INCOMPAT_FLAGS_DEFAULT_SUBVOL   0x0002
 
#define BTRFS_INCOMPAT_FLAGS_MIXED_GROUPS   0x0004
 
#define BTRFS_INCOMPAT_FLAGS_COMPRESS_LZO   0x0008
 
#define BTRFS_INCOMPAT_FLAGS_COMPRESS_ZSTD   0x0010
 
#define BTRFS_INCOMPAT_FLAGS_BIG_METADATA   0x0020
 
#define BTRFS_INCOMPAT_FLAGS_EXTENDED_IREF   0x0040
 
#define BTRFS_INCOMPAT_FLAGS_RAID56   0x0080
 
#define BTRFS_INCOMPAT_FLAGS_SKINNY_METADATA   0x0100
 
#define BTRFS_INCOMPAT_FLAGS_NO_HOLES   0x0200
 
#define BTRFS_INCOMPAT_FLAGS_METADATA_UUID   0x0400
 
#define BTRFS_INCOMPAT_FLAGS_RAID1C34   0x0800
 
#define BTRFS_SUPERBLOCK_FLAGS_SEEDING   0x100000000
 
#define BTRFS_ORPHAN_INODE_OBJID   0xFFFFFFFFFFFFFFFB
 
#define CSUM_TYPE_CRC32C   0
 
#define CSUM_TYPE_XXHASH   1
 
#define CSUM_TYPE_SHA256   2
 
#define CSUM_TYPE_BLAKE2   3
 
#define HEADER_FLAG_WRITTEN   0x000000000000001
 
#define HEADER_FLAG_SHARED_BACKREF   0x000000000000002
 
#define HEADER_FLAG_MIXED_BACKREF   0x100000000000000
 
#define SYS_CHUNK_ARRAY_SIZE   0x800
 
#define BTRFS_NUM_BACKUP_ROOTS   4
 
#define BTRFS_TYPE_UNKNOWN   0
 
#define BTRFS_TYPE_FILE   1
 
#define BTRFS_TYPE_DIRECTORY   2
 
#define BTRFS_TYPE_CHARDEV   3
 
#define BTRFS_TYPE_BLOCKDEV   4
 
#define BTRFS_TYPE_FIFO   5
 
#define BTRFS_TYPE_SOCKET   6
 
#define BTRFS_TYPE_SYMLINK   7
 
#define BTRFS_TYPE_EA   8
 
#define EXTENT_ITEM_DATA   0x001
 
#define EXTENT_ITEM_TREE_BLOCK   0x002
 
#define EXTENT_ITEM_SHARED_BACKREFS   0x100
 
#define FREE_SPACE_EXTENT   1
 
#define FREE_SPACE_BITMAP   2
 
#define BALANCE_FLAGS_DATA   0x1
 
#define BALANCE_FLAGS_SYSTEM   0x2
 
#define BALANCE_FLAGS_METADATA   0x4
 
#define BALANCE_ARGS_FLAGS_PROFILES   0x001
 
#define BALANCE_ARGS_FLAGS_USAGE   0x002
 
#define BALANCE_ARGS_FLAGS_DEVID   0x004
 
#define BALANCE_ARGS_FLAGS_DRANGE   0x008
 
#define BALANCE_ARGS_FLAGS_VRANGE   0x010
 
#define BALANCE_ARGS_FLAGS_LIMIT   0x020
 
#define BALANCE_ARGS_FLAGS_LIMIT_RANGE   0x040
 
#define BALANCE_ARGS_FLAGS_STRIPES_RANGE   0x080
 
#define BALANCE_ARGS_FLAGS_CONVERT   0x100
 
#define BALANCE_ARGS_FLAGS_SOFT   0x200
 
#define BALANCE_ARGS_FLAGS_USAGE_RANGE   0x400
 
#define BTRFS_FREE_SPACE_USING_BITMAPS   1
 
#define BTRFS_DEV_STAT_WRITE_ERRORS   0
 
#define BTRFS_DEV_STAT_READ_ERRORS   1
 
#define BTRFS_DEV_STAT_FLUSH_ERRORS   2
 
#define BTRFS_DEV_STAT_CORRUPTION_ERRORS   3
 
#define BTRFS_DEV_STAT_GENERATION_ERRORS   4
 
#define BTRFS_SEND_CMD_SUBVOL   1
 
#define BTRFS_SEND_CMD_SNAPSHOT   2
 
#define BTRFS_SEND_CMD_MKFILE   3
 
#define BTRFS_SEND_CMD_MKDIR   4
 
#define BTRFS_SEND_CMD_MKNOD   5
 
#define BTRFS_SEND_CMD_MKFIFO   6
 
#define BTRFS_SEND_CMD_MKSOCK   7
 
#define BTRFS_SEND_CMD_SYMLINK   8
 
#define BTRFS_SEND_CMD_RENAME   9
 
#define BTRFS_SEND_CMD_LINK   10
 
#define BTRFS_SEND_CMD_UNLINK   11
 
#define BTRFS_SEND_CMD_RMDIR   12
 
#define BTRFS_SEND_CMD_SET_XATTR   13
 
#define BTRFS_SEND_CMD_REMOVE_XATTR   14
 
#define BTRFS_SEND_CMD_WRITE   15
 
#define BTRFS_SEND_CMD_CLONE   16
 
#define BTRFS_SEND_CMD_TRUNCATE   17
 
#define BTRFS_SEND_CMD_CHMOD   18
 
#define BTRFS_SEND_CMD_CHOWN   19
 
#define BTRFS_SEND_CMD_UTIMES   20
 
#define BTRFS_SEND_CMD_END   21
 
#define BTRFS_SEND_CMD_UPDATE_EXTENT   22
 
#define BTRFS_SEND_TLV_UUID   1
 
#define BTRFS_SEND_TLV_TRANSID   2
 
#define BTRFS_SEND_TLV_INODE   3
 
#define BTRFS_SEND_TLV_SIZE   4
 
#define BTRFS_SEND_TLV_MODE   5
 
#define BTRFS_SEND_TLV_UID   6
 
#define BTRFS_SEND_TLV_GID   7
 
#define BTRFS_SEND_TLV_RDEV   8
 
#define BTRFS_SEND_TLV_CTIME   9
 
#define BTRFS_SEND_TLV_MTIME   10
 
#define BTRFS_SEND_TLV_ATIME   11
 
#define BTRFS_SEND_TLV_OTIME   12
 
#define BTRFS_SEND_TLV_XATTR_NAME   13
 
#define BTRFS_SEND_TLV_XATTR_DATA   14
 
#define BTRFS_SEND_TLV_PATH   15
 
#define BTRFS_SEND_TLV_PATH_TO   16
 
#define BTRFS_SEND_TLV_PATH_LINK   17
 
#define BTRFS_SEND_TLV_OFFSET   18
 
#define BTRFS_SEND_TLV_DATA   19
 
#define BTRFS_SEND_TLV_CLONE_UUID   20
 
#define BTRFS_SEND_TLV_CLONE_CTRANSID   21
 
#define BTRFS_SEND_TLV_CLONE_PATH   22
 
#define BTRFS_SEND_TLV_CLONE_OFFSET   23
 
#define BTRFS_SEND_TLV_CLONE_LENGTH   24
 
#define BTRFS_SEND_MAGIC   "btrfs-stream"
 

Variables

static const uint64_t superblock_addrs [] = { 0x10000, 0x4000000, 0x4000000000, 0x4000000000000, 0 }
 

Macro Definition Documentation

◆ BALANCE_ARGS_FLAGS_CONVERT

#define BALANCE_ARGS_FLAGS_CONVERT   0x100

Definition at line 488 of file btrfs.h.

◆ BALANCE_ARGS_FLAGS_DEVID

#define BALANCE_ARGS_FLAGS_DEVID   0x004

Definition at line 482 of file btrfs.h.

◆ BALANCE_ARGS_FLAGS_DRANGE

#define BALANCE_ARGS_FLAGS_DRANGE   0x008

Definition at line 483 of file btrfs.h.

◆ BALANCE_ARGS_FLAGS_LIMIT

#define BALANCE_ARGS_FLAGS_LIMIT   0x020

Definition at line 485 of file btrfs.h.

◆ BALANCE_ARGS_FLAGS_LIMIT_RANGE

#define BALANCE_ARGS_FLAGS_LIMIT_RANGE   0x040

Definition at line 486 of file btrfs.h.

◆ BALANCE_ARGS_FLAGS_PROFILES

#define BALANCE_ARGS_FLAGS_PROFILES   0x001

Definition at line 480 of file btrfs.h.

◆ BALANCE_ARGS_FLAGS_SOFT

#define BALANCE_ARGS_FLAGS_SOFT   0x200

Definition at line 489 of file btrfs.h.

◆ BALANCE_ARGS_FLAGS_STRIPES_RANGE

#define BALANCE_ARGS_FLAGS_STRIPES_RANGE   0x080

Definition at line 487 of file btrfs.h.

◆ BALANCE_ARGS_FLAGS_USAGE

#define BALANCE_ARGS_FLAGS_USAGE   0x002

Definition at line 481 of file btrfs.h.

◆ BALANCE_ARGS_FLAGS_USAGE_RANGE

#define BALANCE_ARGS_FLAGS_USAGE_RANGE   0x400

Definition at line 490 of file btrfs.h.

◆ BALANCE_ARGS_FLAGS_VRANGE

#define BALANCE_ARGS_FLAGS_VRANGE   0x010

Definition at line 484 of file btrfs.h.

◆ BALANCE_FLAGS_DATA

#define BALANCE_FLAGS_DATA   0x1

Definition at line 476 of file btrfs.h.

◆ BALANCE_FLAGS_METADATA

#define BALANCE_FLAGS_METADATA   0x4

Definition at line 478 of file btrfs.h.

◆ BALANCE_FLAGS_SYSTEM

#define BALANCE_FLAGS_SYSTEM   0x2

Definition at line 477 of file btrfs.h.

◆ BALANCE_ITEM_ID

#define BALANCE_ITEM_ID   0xFFFFFFFFFFFFFFFC

Definition at line 92 of file btrfs.h.

◆ BLOCK_FLAG_DATA

#define BLOCK_FLAG_DATA   0x001

Definition at line 78 of file btrfs.h.

◆ BLOCK_FLAG_DUPLICATE

#define BLOCK_FLAG_DUPLICATE   0x020

Definition at line 83 of file btrfs.h.

◆ BLOCK_FLAG_METADATA

#define BLOCK_FLAG_METADATA   0x004

Definition at line 80 of file btrfs.h.

◆ BLOCK_FLAG_RAID0

#define BLOCK_FLAG_RAID0   0x008

Definition at line 81 of file btrfs.h.

◆ BLOCK_FLAG_RAID1

#define BLOCK_FLAG_RAID1   0x010

Definition at line 82 of file btrfs.h.

◆ BLOCK_FLAG_RAID10

#define BLOCK_FLAG_RAID10   0x040

Definition at line 84 of file btrfs.h.

◆ BLOCK_FLAG_RAID1C3

#define BLOCK_FLAG_RAID1C3   0x200

Definition at line 87 of file btrfs.h.

◆ BLOCK_FLAG_RAID1C4

#define BLOCK_FLAG_RAID1C4   0x400

Definition at line 88 of file btrfs.h.

◆ BLOCK_FLAG_RAID5

#define BLOCK_FLAG_RAID5   0x080

Definition at line 85 of file btrfs.h.

◆ BLOCK_FLAG_RAID6

#define BLOCK_FLAG_RAID6   0x100

Definition at line 86 of file btrfs.h.

◆ BLOCK_FLAG_SYSTEM

#define BLOCK_FLAG_SYSTEM   0x002

Definition at line 79 of file btrfs.h.

◆ BTRFS_COMPAT_RO_FLAGS_FREE_SPACE_CACHE

#define BTRFS_COMPAT_RO_FLAGS_FREE_SPACE_CACHE   0x1

Definition at line 111 of file btrfs.h.

◆ BTRFS_COMPAT_RO_FLAGS_FREE_SPACE_CACHE_VALID

#define BTRFS_COMPAT_RO_FLAGS_FREE_SPACE_CACHE_VALID   0x2

Definition at line 112 of file btrfs.h.

◆ BTRFS_COMPAT_RO_FLAGS_VERITY

#define BTRFS_COMPAT_RO_FLAGS_VERITY   0x4

Definition at line 113 of file btrfs.h.

◆ BTRFS_COMPRESSION_LZO

#define BTRFS_COMPRESSION_LZO   2

Definition at line 67 of file btrfs.h.

◆ BTRFS_COMPRESSION_NONE

#define BTRFS_COMPRESSION_NONE   0

Definition at line 65 of file btrfs.h.

◆ BTRFS_COMPRESSION_ZLIB

#define BTRFS_COMPRESSION_ZLIB   1

Definition at line 66 of file btrfs.h.

◆ BTRFS_COMPRESSION_ZSTD

#define BTRFS_COMPRESSION_ZSTD   3

Definition at line 68 of file btrfs.h.

◆ BTRFS_DEV_STAT_CORRUPTION_ERRORS

#define BTRFS_DEV_STAT_CORRUPTION_ERRORS   3

Definition at line 542 of file btrfs.h.

◆ BTRFS_DEV_STAT_FLUSH_ERRORS

#define BTRFS_DEV_STAT_FLUSH_ERRORS   2

Definition at line 541 of file btrfs.h.

◆ BTRFS_DEV_STAT_GENERATION_ERRORS

#define BTRFS_DEV_STAT_GENERATION_ERRORS   4

Definition at line 543 of file btrfs.h.

◆ BTRFS_DEV_STAT_READ_ERRORS

#define BTRFS_DEV_STAT_READ_ERRORS   1

Definition at line 540 of file btrfs.h.

◆ BTRFS_DEV_STAT_WRITE_ERRORS

#define BTRFS_DEV_STAT_WRITE_ERRORS   0

Definition at line 539 of file btrfs.h.

◆ BTRFS_ENCODING_NONE

#define BTRFS_ENCODING_NONE   0

Definition at line 72 of file btrfs.h.

◆ BTRFS_ENCRYPTION_NONE

#define BTRFS_ENCRYPTION_NONE   0

Definition at line 70 of file btrfs.h.

◆ BTRFS_FREE_SPACE_USING_BITMAPS

#define BTRFS_FREE_SPACE_USING_BITMAPS   1

Definition at line 532 of file btrfs.h.

◆ BTRFS_INCOMPAT_FLAGS_BIG_METADATA

#define BTRFS_INCOMPAT_FLAGS_BIG_METADATA   0x0020

Definition at line 120 of file btrfs.h.

◆ BTRFS_INCOMPAT_FLAGS_COMPRESS_LZO

#define BTRFS_INCOMPAT_FLAGS_COMPRESS_LZO   0x0008

Definition at line 118 of file btrfs.h.

◆ BTRFS_INCOMPAT_FLAGS_COMPRESS_ZSTD

#define BTRFS_INCOMPAT_FLAGS_COMPRESS_ZSTD   0x0010

Definition at line 119 of file btrfs.h.

◆ BTRFS_INCOMPAT_FLAGS_DEFAULT_SUBVOL

#define BTRFS_INCOMPAT_FLAGS_DEFAULT_SUBVOL   0x0002

Definition at line 116 of file btrfs.h.

◆ BTRFS_INCOMPAT_FLAGS_EXTENDED_IREF

#define BTRFS_INCOMPAT_FLAGS_EXTENDED_IREF   0x0040

Definition at line 121 of file btrfs.h.

◆ BTRFS_INCOMPAT_FLAGS_METADATA_UUID

#define BTRFS_INCOMPAT_FLAGS_METADATA_UUID   0x0400

Definition at line 125 of file btrfs.h.

◆ BTRFS_INCOMPAT_FLAGS_MIXED_BACKREF

#define BTRFS_INCOMPAT_FLAGS_MIXED_BACKREF   0x0001

Definition at line 115 of file btrfs.h.

◆ BTRFS_INCOMPAT_FLAGS_MIXED_GROUPS

#define BTRFS_INCOMPAT_FLAGS_MIXED_GROUPS   0x0004

Definition at line 117 of file btrfs.h.

◆ BTRFS_INCOMPAT_FLAGS_NO_HOLES

#define BTRFS_INCOMPAT_FLAGS_NO_HOLES   0x0200

Definition at line 124 of file btrfs.h.

◆ BTRFS_INCOMPAT_FLAGS_RAID1C34

#define BTRFS_INCOMPAT_FLAGS_RAID1C34   0x0800

Definition at line 126 of file btrfs.h.

◆ BTRFS_INCOMPAT_FLAGS_RAID56

#define BTRFS_INCOMPAT_FLAGS_RAID56   0x0080

Definition at line 122 of file btrfs.h.

◆ BTRFS_INCOMPAT_FLAGS_SKINNY_METADATA

#define BTRFS_INCOMPAT_FLAGS_SKINNY_METADATA   0x0100

Definition at line 123 of file btrfs.h.

◆ BTRFS_INODE_APPEND

#define BTRFS_INODE_APPEND   0x080

Definition at line 101 of file btrfs.h.

◆ BTRFS_INODE_COMPRESS

#define BTRFS_INODE_COMPRESS   0x800

Definition at line 105 of file btrfs.h.

◆ BTRFS_INODE_DIRSYNC

#define BTRFS_INODE_DIRSYNC   0x400

Definition at line 104 of file btrfs.h.

◆ BTRFS_INODE_IMMUTABLE

#define BTRFS_INODE_IMMUTABLE   0x040

Definition at line 100 of file btrfs.h.

◆ BTRFS_INODE_NOATIME

#define BTRFS_INODE_NOATIME   0x200

Definition at line 103 of file btrfs.h.

◆ BTRFS_INODE_NOCOMPRESS

#define BTRFS_INODE_NOCOMPRESS   0x008

Definition at line 97 of file btrfs.h.

◆ BTRFS_INODE_NODATACOW

#define BTRFS_INODE_NODATACOW   0x002

Definition at line 95 of file btrfs.h.

◆ BTRFS_INODE_NODATASUM

#define BTRFS_INODE_NODATASUM   0x001

Definition at line 94 of file btrfs.h.

◆ BTRFS_INODE_NODUMP

#define BTRFS_INODE_NODUMP   0x100

Definition at line 102 of file btrfs.h.

◆ BTRFS_INODE_PREALLOC

#define BTRFS_INODE_PREALLOC   0x010

Definition at line 98 of file btrfs.h.

◆ BTRFS_INODE_READONLY

#define BTRFS_INODE_READONLY   0x004

Definition at line 96 of file btrfs.h.

◆ BTRFS_INODE_RO_VERITY

#define BTRFS_INODE_RO_VERITY   0x1

Definition at line 107 of file btrfs.h.

◆ BTRFS_INODE_SYNC

#define BTRFS_INODE_SYNC   0x020

Definition at line 99 of file btrfs.h.

◆ BTRFS_LAST_FREE_OBJECTID

#define BTRFS_LAST_FREE_OBJECTID   0xffffffffffffff00

Definition at line 21 of file btrfs.h.

◆ BTRFS_MAGIC

#define BTRFS_MAGIC   0x4d5f53665248425f

Definition at line 18 of file btrfs.h.

◆ BTRFS_NUM_BACKUP_ROOTS

#define BTRFS_NUM_BACKUP_ROOTS   4

Definition at line 195 of file btrfs.h.

◆ BTRFS_ORPHAN_INODE_OBJID

#define BTRFS_ORPHAN_INODE_OBJID   0xFFFFFFFFFFFFFFFB

Definition at line 130 of file btrfs.h.

◆ BTRFS_ROOT_CHECKSUM

#define BTRFS_ROOT_CHECKSUM   7

Definition at line 60 of file btrfs.h.

◆ BTRFS_ROOT_CHUNK

#define BTRFS_ROOT_CHUNK   3

Definition at line 56 of file btrfs.h.

◆ BTRFS_ROOT_DATA_RELOC

#define BTRFS_ROOT_DATA_RELOC   0xFFFFFFFFFFFFFFF7

Definition at line 63 of file btrfs.h.

◆ BTRFS_ROOT_DEVTREE

#define BTRFS_ROOT_DEVTREE   4

Definition at line 57 of file btrfs.h.

◆ BTRFS_ROOT_EXTENT

#define BTRFS_ROOT_EXTENT   2

Definition at line 55 of file btrfs.h.

◆ BTRFS_ROOT_FREE_SPACE

#define BTRFS_ROOT_FREE_SPACE   0xa

Definition at line 62 of file btrfs.h.

◆ BTRFS_ROOT_FSTREE

#define BTRFS_ROOT_FSTREE   5

Definition at line 58 of file btrfs.h.

◆ BTRFS_ROOT_ROOT

#define BTRFS_ROOT_ROOT   1

Definition at line 54 of file btrfs.h.

◆ BTRFS_ROOT_TREEDIR

#define BTRFS_ROOT_TREEDIR   6

Definition at line 59 of file btrfs.h.

◆ BTRFS_ROOT_UUID

#define BTRFS_ROOT_UUID   9

Definition at line 61 of file btrfs.h.

◆ BTRFS_SEND_CMD_CHMOD

#define BTRFS_SEND_CMD_CHMOD   18

Definition at line 562 of file btrfs.h.

◆ BTRFS_SEND_CMD_CHOWN

#define BTRFS_SEND_CMD_CHOWN   19

Definition at line 563 of file btrfs.h.

◆ BTRFS_SEND_CMD_CLONE

#define BTRFS_SEND_CMD_CLONE   16

Definition at line 560 of file btrfs.h.

◆ BTRFS_SEND_CMD_END

#define BTRFS_SEND_CMD_END   21

Definition at line 565 of file btrfs.h.

◆ BTRFS_SEND_CMD_LINK

#define BTRFS_SEND_CMD_LINK   10

Definition at line 554 of file btrfs.h.

◆ BTRFS_SEND_CMD_MKDIR

#define BTRFS_SEND_CMD_MKDIR   4

Definition at line 548 of file btrfs.h.

◆ BTRFS_SEND_CMD_MKFIFO

#define BTRFS_SEND_CMD_MKFIFO   6

Definition at line 550 of file btrfs.h.

◆ BTRFS_SEND_CMD_MKFILE

#define BTRFS_SEND_CMD_MKFILE   3

Definition at line 547 of file btrfs.h.

◆ BTRFS_SEND_CMD_MKNOD

#define BTRFS_SEND_CMD_MKNOD   5

Definition at line 549 of file btrfs.h.

◆ BTRFS_SEND_CMD_MKSOCK

#define BTRFS_SEND_CMD_MKSOCK   7

Definition at line 551 of file btrfs.h.

◆ BTRFS_SEND_CMD_REMOVE_XATTR

#define BTRFS_SEND_CMD_REMOVE_XATTR   14

Definition at line 558 of file btrfs.h.

◆ BTRFS_SEND_CMD_RENAME

#define BTRFS_SEND_CMD_RENAME   9

Definition at line 553 of file btrfs.h.

◆ BTRFS_SEND_CMD_RMDIR

#define BTRFS_SEND_CMD_RMDIR   12

Definition at line 556 of file btrfs.h.

◆ BTRFS_SEND_CMD_SET_XATTR

#define BTRFS_SEND_CMD_SET_XATTR   13

Definition at line 557 of file btrfs.h.

◆ BTRFS_SEND_CMD_SNAPSHOT

#define BTRFS_SEND_CMD_SNAPSHOT   2

Definition at line 546 of file btrfs.h.

◆ BTRFS_SEND_CMD_SUBVOL

#define BTRFS_SEND_CMD_SUBVOL   1

Definition at line 545 of file btrfs.h.

◆ BTRFS_SEND_CMD_SYMLINK

#define BTRFS_SEND_CMD_SYMLINK   8

Definition at line 552 of file btrfs.h.

◆ BTRFS_SEND_CMD_TRUNCATE

#define BTRFS_SEND_CMD_TRUNCATE   17

Definition at line 561 of file btrfs.h.

◆ BTRFS_SEND_CMD_UNLINK

#define BTRFS_SEND_CMD_UNLINK   11

Definition at line 555 of file btrfs.h.

◆ BTRFS_SEND_CMD_UPDATE_EXTENT

#define BTRFS_SEND_CMD_UPDATE_EXTENT   22

Definition at line 566 of file btrfs.h.

◆ BTRFS_SEND_CMD_UTIMES

#define BTRFS_SEND_CMD_UTIMES   20

Definition at line 564 of file btrfs.h.

◆ BTRFS_SEND_CMD_WRITE

#define BTRFS_SEND_CMD_WRITE   15

Definition at line 559 of file btrfs.h.

◆ BTRFS_SEND_MAGIC

#define BTRFS_SEND_MAGIC   "btrfs-stream"

Definition at line 593 of file btrfs.h.

◆ BTRFS_SEND_TLV_ATIME

#define BTRFS_SEND_TLV_ATIME   11

Definition at line 578 of file btrfs.h.

◆ BTRFS_SEND_TLV_CLONE_CTRANSID

#define BTRFS_SEND_TLV_CLONE_CTRANSID   21

Definition at line 588 of file btrfs.h.

◆ BTRFS_SEND_TLV_CLONE_LENGTH

#define BTRFS_SEND_TLV_CLONE_LENGTH   24

Definition at line 591 of file btrfs.h.

◆ BTRFS_SEND_TLV_CLONE_OFFSET

#define BTRFS_SEND_TLV_CLONE_OFFSET   23

Definition at line 590 of file btrfs.h.

◆ BTRFS_SEND_TLV_CLONE_PATH

#define BTRFS_SEND_TLV_CLONE_PATH   22

Definition at line 589 of file btrfs.h.

◆ BTRFS_SEND_TLV_CLONE_UUID

#define BTRFS_SEND_TLV_CLONE_UUID   20

Definition at line 587 of file btrfs.h.

◆ BTRFS_SEND_TLV_CTIME

#define BTRFS_SEND_TLV_CTIME   9

Definition at line 576 of file btrfs.h.

◆ BTRFS_SEND_TLV_DATA

#define BTRFS_SEND_TLV_DATA   19

Definition at line 586 of file btrfs.h.

◆ BTRFS_SEND_TLV_GID

#define BTRFS_SEND_TLV_GID   7

Definition at line 574 of file btrfs.h.

◆ BTRFS_SEND_TLV_INODE

#define BTRFS_SEND_TLV_INODE   3

Definition at line 570 of file btrfs.h.

◆ BTRFS_SEND_TLV_MODE

#define BTRFS_SEND_TLV_MODE   5

Definition at line 572 of file btrfs.h.

◆ BTRFS_SEND_TLV_MTIME

#define BTRFS_SEND_TLV_MTIME   10

Definition at line 577 of file btrfs.h.

◆ BTRFS_SEND_TLV_OFFSET

#define BTRFS_SEND_TLV_OFFSET   18

Definition at line 585 of file btrfs.h.

◆ BTRFS_SEND_TLV_OTIME

#define BTRFS_SEND_TLV_OTIME   12

Definition at line 579 of file btrfs.h.

◆ BTRFS_SEND_TLV_PATH

#define BTRFS_SEND_TLV_PATH   15

Definition at line 582 of file btrfs.h.

◆ BTRFS_SEND_TLV_PATH_LINK

#define BTRFS_SEND_TLV_PATH_LINK   17

Definition at line 584 of file btrfs.h.

◆ BTRFS_SEND_TLV_PATH_TO

#define BTRFS_SEND_TLV_PATH_TO   16

Definition at line 583 of file btrfs.h.

◆ BTRFS_SEND_TLV_RDEV

#define BTRFS_SEND_TLV_RDEV   8

Definition at line 575 of file btrfs.h.

◆ BTRFS_SEND_TLV_SIZE

#define BTRFS_SEND_TLV_SIZE   4

Definition at line 571 of file btrfs.h.

◆ BTRFS_SEND_TLV_TRANSID

#define BTRFS_SEND_TLV_TRANSID   2

Definition at line 569 of file btrfs.h.

◆ BTRFS_SEND_TLV_UID

#define BTRFS_SEND_TLV_UID   6

Definition at line 573 of file btrfs.h.

◆ BTRFS_SEND_TLV_UUID

#define BTRFS_SEND_TLV_UUID   1

Definition at line 568 of file btrfs.h.

◆ BTRFS_SEND_TLV_XATTR_DATA

#define BTRFS_SEND_TLV_XATTR_DATA   14

Definition at line 581 of file btrfs.h.

◆ BTRFS_SEND_TLV_XATTR_NAME

#define BTRFS_SEND_TLV_XATTR_NAME   13

Definition at line 580 of file btrfs.h.

◆ BTRFS_SUBVOL_READONLY

#define BTRFS_SUBVOL_READONLY   0x1

Definition at line 109 of file btrfs.h.

◆ BTRFS_SUPERBLOCK_FLAGS_SEEDING

#define BTRFS_SUPERBLOCK_FLAGS_SEEDING   0x100000000

Definition at line 128 of file btrfs.h.

◆ BTRFS_TYPE_BLOCKDEV

#define BTRFS_TYPE_BLOCKDEV   4

Definition at line 266 of file btrfs.h.

◆ BTRFS_TYPE_CHARDEV

#define BTRFS_TYPE_CHARDEV   3

Definition at line 265 of file btrfs.h.

◆ BTRFS_TYPE_DIRECTORY

#define BTRFS_TYPE_DIRECTORY   2

Definition at line 264 of file btrfs.h.

◆ BTRFS_TYPE_EA

#define BTRFS_TYPE_EA   8

Definition at line 270 of file btrfs.h.

◆ BTRFS_TYPE_FIFO

#define BTRFS_TYPE_FIFO   5

Definition at line 267 of file btrfs.h.

◆ BTRFS_TYPE_FILE

#define BTRFS_TYPE_FILE   1

Definition at line 263 of file btrfs.h.

◆ BTRFS_TYPE_SOCKET

#define BTRFS_TYPE_SOCKET   6

Definition at line 268 of file btrfs.h.

◆ BTRFS_TYPE_SYMLINK

#define BTRFS_TYPE_SYMLINK   7

Definition at line 269 of file btrfs.h.

◆ BTRFS_TYPE_UNKNOWN

#define BTRFS_TYPE_UNKNOWN   0

Definition at line 262 of file btrfs.h.

◆ CSUM_TYPE_BLAKE2

#define CSUM_TYPE_BLAKE2   3

Definition at line 135 of file btrfs.h.

◆ CSUM_TYPE_CRC32C

#define CSUM_TYPE_CRC32C   0

Definition at line 132 of file btrfs.h.

◆ CSUM_TYPE_SHA256

#define CSUM_TYPE_SHA256   2

Definition at line 134 of file btrfs.h.

◆ CSUM_TYPE_XXHASH

#define CSUM_TYPE_XXHASH   1

Definition at line 133 of file btrfs.h.

◆ EXTENT_CSUM_ID

#define EXTENT_CSUM_ID   0xFFFFFFFFFFFFFFF6

Definition at line 91 of file btrfs.h.

◆ EXTENT_ITEM_DATA

#define EXTENT_ITEM_DATA   0x001

Definition at line 387 of file btrfs.h.

◆ EXTENT_ITEM_SHARED_BACKREFS

#define EXTENT_ITEM_SHARED_BACKREFS   0x100

Definition at line 389 of file btrfs.h.

◆ EXTENT_ITEM_TREE_BLOCK

#define EXTENT_ITEM_TREE_BLOCK   0x002

Definition at line 388 of file btrfs.h.

◆ EXTENT_TYPE_INLINE

#define EXTENT_TYPE_INLINE   0

Definition at line 74 of file btrfs.h.

◆ EXTENT_TYPE_PREALLOC

#define EXTENT_TYPE_PREALLOC   2

Definition at line 76 of file btrfs.h.

◆ EXTENT_TYPE_REGULAR

#define EXTENT_TYPE_REGULAR   1

Definition at line 75 of file btrfs.h.

◆ FREE_SPACE_BITMAP

#define FREE_SPACE_BITMAP   2

Definition at line 446 of file btrfs.h.

◆ FREE_SPACE_CACHE_ID

#define FREE_SPACE_CACHE_ID   0xFFFFFFFFFFFFFFF5

Definition at line 90 of file btrfs.h.

◆ FREE_SPACE_EXTENT

#define FREE_SPACE_EXTENT   1

Definition at line 445 of file btrfs.h.

◆ HEADER_FLAG_MIXED_BACKREF

#define HEADER_FLAG_MIXED_BACKREF   0x100000000000000

Definition at line 151 of file btrfs.h.

◆ HEADER_FLAG_SHARED_BACKREF

#define HEADER_FLAG_SHARED_BACKREF   0x000000000000002

Definition at line 150 of file btrfs.h.

◆ HEADER_FLAG_WRITTEN

#define HEADER_FLAG_WRITTEN   0x000000000000001

Definition at line 149 of file btrfs.h.

◆ MAX_LABEL_SIZE

#define MAX_LABEL_SIZE   0x100

Definition at line 19 of file btrfs.h.

◆ SUBVOL_ROOT_INODE

#define SUBVOL_ROOT_INODE   0x100

Definition at line 20 of file btrfs.h.

◆ SYS_CHUNK_ARRAY_SIZE

#define SYS_CHUNK_ARRAY_SIZE   0x800

Definition at line 194 of file btrfs.h.

◆ TYPE_BLOCK_GROUP_ITEM

#define TYPE_BLOCK_GROUP_ITEM   0xC0

Definition at line 42 of file btrfs.h.

◆ TYPE_CHUNK_ITEM

#define TYPE_CHUNK_ITEM   0xE4

Definition at line 48 of file btrfs.h.

◆ TYPE_DEV_EXTENT

#define TYPE_DEV_EXTENT   0xCC

Definition at line 46 of file btrfs.h.

◆ TYPE_DEV_ITEM

#define TYPE_DEV_ITEM   0xD8

Definition at line 47 of file btrfs.h.

◆ TYPE_DEV_STATS

#define TYPE_DEV_STATS   0xF9

Definition at line 50 of file btrfs.h.

◆ TYPE_DIR_INDEX

#define TYPE_DIR_INDEX   0x60

Definition at line 29 of file btrfs.h.

◆ TYPE_DIR_ITEM

#define TYPE_DIR_ITEM   0x54

Definition at line 28 of file btrfs.h.

◆ TYPE_EXTENT_CSUM

#define TYPE_EXTENT_CSUM   0x80

Definition at line 31 of file btrfs.h.

◆ TYPE_EXTENT_DATA

#define TYPE_EXTENT_DATA   0x6C

Definition at line 30 of file btrfs.h.

◆ TYPE_EXTENT_DATA_REF

#define TYPE_EXTENT_DATA_REF   0xB2

Definition at line 38 of file btrfs.h.

◆ TYPE_EXTENT_ITEM

#define TYPE_EXTENT_ITEM   0xA8

Definition at line 35 of file btrfs.h.

◆ TYPE_EXTENT_REF_V0

#define TYPE_EXTENT_REF_V0   0xB4

Definition at line 39 of file btrfs.h.

◆ TYPE_FREE_SPACE_BITMAP

#define TYPE_FREE_SPACE_BITMAP   0xC8

Definition at line 45 of file btrfs.h.

◆ TYPE_FREE_SPACE_EXTENT

#define TYPE_FREE_SPACE_EXTENT   0xC7

Definition at line 44 of file btrfs.h.

◆ TYPE_FREE_SPACE_INFO

#define TYPE_FREE_SPACE_INFO   0xC6

Definition at line 43 of file btrfs.h.

◆ TYPE_INODE_EXTREF

#define TYPE_INODE_EXTREF   0x0D

Definition at line 25 of file btrfs.h.

◆ TYPE_INODE_ITEM

#define TYPE_INODE_ITEM   0x01

Definition at line 23 of file btrfs.h.

◆ TYPE_INODE_REF

#define TYPE_INODE_REF   0x0C

Definition at line 24 of file btrfs.h.

◆ TYPE_METADATA_ITEM

#define TYPE_METADATA_ITEM   0xA9

Definition at line 36 of file btrfs.h.

◆ TYPE_ORPHAN_INODE

#define TYPE_ORPHAN_INODE   0x30

Definition at line 27 of file btrfs.h.

◆ TYPE_ROOT_BACKREF

#define TYPE_ROOT_BACKREF   0x90

Definition at line 33 of file btrfs.h.

◆ TYPE_ROOT_ITEM

#define TYPE_ROOT_ITEM   0x84

Definition at line 32 of file btrfs.h.

◆ TYPE_ROOT_REF

#define TYPE_ROOT_REF   0x9C

Definition at line 34 of file btrfs.h.

◆ TYPE_SHARED_BLOCK_REF

#define TYPE_SHARED_BLOCK_REF   0xB6

Definition at line 40 of file btrfs.h.

◆ TYPE_SHARED_DATA_REF

#define TYPE_SHARED_DATA_REF   0xB8

Definition at line 41 of file btrfs.h.

◆ TYPE_SUBVOL_REC_UUID

#define TYPE_SUBVOL_REC_UUID   0xFC

Definition at line 52 of file btrfs.h.

◆ TYPE_SUBVOL_UUID

#define TYPE_SUBVOL_UUID   0xFB

Definition at line 51 of file btrfs.h.

◆ TYPE_TEMP_ITEM

#define TYPE_TEMP_ITEM   0xF8

Definition at line 49 of file btrfs.h.

◆ TYPE_TREE_BLOCK_REF

#define TYPE_TREE_BLOCK_REF   0xB0

Definition at line 37 of file btrfs.h.

◆ TYPE_XATTR_ITEM

#define TYPE_XATTR_ITEM   0x18

Definition at line 26 of file btrfs.h.

Variable Documentation

◆ superblock_addrs