Psyduck - 可達鴨 之 鴨力山大2


Server : LiteSpeed
System : Linux premium217.web-hosting.com 4.18.0-553.54.1.lve.el8.x86_64 #1 SMP Wed Jun 4 13:01:13 UTC 2025 x86_64
User : alloknri ( 880)
PHP Version : 8.1.34
Disable Function : NONE
Directory :  /usr/include/linux/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //usr/include/linux/btrfs_tree.h
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
#ifndef _BTRFS_CTREE_H_
#define _BTRFS_CTREE_H_

#include <linux/btrfs.h>
#include <linux/types.h>

/*
 * This header contains the structure definitions and constants used
 * by file system objects that can be retrieved using
 * the BTRFS_IOC_SEARCH_TREE ioctl.  That means basically anything that
 * is needed to describe a leaf node's key or item contents.
 */

/* holds pointers to all of the tree roots */
#define BTRFS_ROOT_TREE_OBJECTID 1ULL

/* stores information about which extents are in use, and reference counts */
#define BTRFS_EXTENT_TREE_OBJECTID 2ULL

/*
 * chunk tree stores translations from logical -> physical block numbering
 * the super block points to the chunk tree
 */
#define BTRFS_CHUNK_TREE_OBJECTID 3ULL

/*
 * stores information about which areas of a given device are in use.
 * one per device.  The tree of tree roots points to the device tree
 */
#define BTRFS_DEV_TREE_OBJECTID 4ULL

/* one per subvolume, storing files and directories */
#define BTRFS_FS_TREE_OBJECTID 5ULL

/* directory objectid inside the root tree */
#define BTRFS_ROOT_TREE_DIR_OBJECTID 6ULL

/* holds checksums of all the data extents */
#define BTRFS_CSUM_TREE_OBJECTID 7ULL

/* holds quota configuration and tracking */
#define BTRFS_QUOTA_TREE_OBJECTID 8ULL

/* for storing items that use the BTRFS_UUID_KEY* types */
#define BTRFS_UUID_TREE_OBJECTID 9ULL

/* tracks free space in block groups. */
#define BTRFS_FREE_SPACE_TREE_OBJECTID 10ULL

/* device stats in the device tree */
#define BTRFS_DEV_STATS_OBJECTID 0ULL

/* for storing balance parameters in the root tree */
#define BTRFS_BALANCE_OBJECTID -4ULL

/* orhpan objectid for tracking unlinked/truncated files */
#define BTRFS_ORPHAN_OBJECTID -5ULL

/* does write ahead logging to speed up fsyncs */
#define BTRFS_TREE_LOG_OBJECTID -6ULL
#define BTRFS_TREE_LOG_FIXUP_OBJECTID -7ULL

/* for space balancing */
#define BTRFS_TREE_RELOC_OBJECTID -8ULL
#define BTRFS_DATA_RELOC_TREE_OBJECTID -9ULL

/*
 * extent checksums all have this objectid
 * this allows them to share the logging tree
 * for fsyncs
 */
#define BTRFS_EXTENT_CSUM_OBJECTID -10ULL

/* For storing free space cache */
#define BTRFS_FREE_SPACE_OBJECTID -11ULL

/*
 * The inode number assigned to the special inode for storing
 * free ino cache
 */
#define BTRFS_FREE_INO_OBJECTID -12ULL

/* dummy objectid represents multiple objectids */
#define BTRFS_MULTIPLE_OBJECTIDS -255ULL

/*
 * All files have objectids in this range.
 */
#define BTRFS_FIRST_FREE_OBJECTID 256ULL
#define BTRFS_LAST_FREE_OBJECTID -256ULL
#define BTRFS_FIRST_CHUNK_TREE_OBJECTID 256ULL


/*
 * the device items go into the chunk tree.  The key is in the form
 * [ 1 BTRFS_DEV_ITEM_KEY device_id ]
 */
#define BTRFS_DEV_ITEMS_OBJECTID 1ULL

#define BTRFS_BTREE_INODE_OBJECTID 1

#define BTRFS_EMPTY_SUBVOL_DIR_OBJECTID 2

#define BTRFS_DEV_REPLACE_DEVID 0ULL

/*
 * inode items have the data typically returned from stat and store other
 * info about object characteristics.  There is one for every file and dir in
 * the FS
 */
#define BTRFS_INODE_ITEM_KEY		1
#define BTRFS_INODE_REF_KEY		12
#define BTRFS_INODE_EXTREF_KEY		13
#define BTRFS_XATTR_ITEM_KEY		24
#define BTRFS_ORPHAN_ITEM_KEY		48
/* reserve 2-15 close to the inode for later flexibility */

/*
 * dir items are the name -> inode pointers in a directory.  There is one
 * for every name in a directory.
 */
#define BTRFS_DIR_LOG_ITEM_KEY  60
#define BTRFS_DIR_LOG_INDEX_KEY 72
#define BTRFS_DIR_ITEM_KEY	84
#define BTRFS_DIR_INDEX_KEY	96
/*
 * extent data is for file data
 */
#define BTRFS_EXTENT_DATA_KEY	108

/*
 * extent csums are stored in a separate tree and hold csums for
 * an entire extent on disk.
 */
#define BTRFS_EXTENT_CSUM_KEY	128

/*
 * root items point to tree roots.  They are typically in the root
 * tree used by the super block to find all the other trees
 */
#define BTRFS_ROOT_ITEM_KEY	132

/*
 * root backrefs tie subvols and snapshots to the directory entries that
 * reference them
 */
#define BTRFS_ROOT_BACKREF_KEY	144

/*
 * root refs make a fast index for listing all of the snapshots and
 * subvolumes referenced by a given root.  They point directly to the
 * directory item in the root that references the subvol
 */
#define BTRFS_ROOT_REF_KEY	156

/*
 * extent items are in the extent map tree.  These record which blocks
 * are used, and how many references there are to each block
 */
#define BTRFS_EXTENT_ITEM_KEY	168

/*
 * The same as the BTRFS_EXTENT_ITEM_KEY, except it's metadata we already know
 * the length, so we save the level in key->offset instead of the length.
 */
#define BTRFS_METADATA_ITEM_KEY	169

#define BTRFS_TREE_BLOCK_REF_KEY	176

#define BTRFS_EXTENT_DATA_REF_KEY	178

#define BTRFS_EXTENT_REF_V0_KEY		180

#define BTRFS_SHARED_BLOCK_REF_KEY	182

#define BTRFS_SHARED_DATA_REF_KEY	184

/*
 * block groups give us hints into the extent allocation trees.  Which
 * blocks are free etc etc
 */
#define BTRFS_BLOCK_GROUP_ITEM_KEY 192

/*
 * Every block group is represented in the free space tree by a free space info
 * item, which stores some accounting information. It is keyed on
 * (block_group_start, FREE_SPACE_INFO, block_group_length).
 */
#define BTRFS_FREE_SPACE_INFO_KEY 198

/*
 * A free space extent tracks an extent of space that is free in a block group.
 * It is keyed on (start, FREE_SPACE_EXTENT, length).
 */
#define BTRFS_FREE_SPACE_EXTENT_KEY 199

/*
 * When a block group becomes very fragmented, we convert it to use bitmaps
 * instead of extents. A free space bitmap is keyed on
 * (start, FREE_SPACE_BITMAP, length); the corresponding item is a bitmap with
 * (length / sectorsize) bits.
 */
#define BTRFS_FREE_SPACE_BITMAP_KEY 200

#define BTRFS_DEV_EXTENT_KEY	204
#define BTRFS_DEV_ITEM_KEY	216
#define BTRFS_CHUNK_ITEM_KEY	228

/*
 * Records the overall state of the qgroups.
 * There's only one instance of this key present,
 * (0, BTRFS_QGROUP_STATUS_KEY, 0)
 */
#define BTRFS_QGROUP_STATUS_KEY         240
/*
 * Records the currently used space of the qgroup.
 * One key per qgroup, (0, BTRFS_QGROUP_INFO_KEY, qgroupid).
 */
#define BTRFS_QGROUP_INFO_KEY           242
/*
 * Contains the user configured limits for the qgroup.
 * One key per qgroup, (0, BTRFS_QGROUP_LIMIT_KEY, qgroupid).
 */
#define BTRFS_QGROUP_LIMIT_KEY          244
/*
 * Records the child-parent relationship of qgroups. For
 * each relation, 2 keys are present:
 * (childid, BTRFS_QGROUP_RELATION_KEY, parentid)
 * (parentid, BTRFS_QGROUP_RELATION_KEY, childid)
 */
#define BTRFS_QGROUP_RELATION_KEY       246

/*
 * Obsolete name, see BTRFS_TEMPORARY_ITEM_KEY.
 */
#define BTRFS_BALANCE_ITEM_KEY	248

/*
 * The key type for tree items that are stored persistently, but do not need to
 * exist for extended period of time. The items can exist in any tree.
 *
 * [subtype, BTRFS_TEMPORARY_ITEM_KEY, data]
 *
 * Existing items:
 *
 * - balance status item
 *   (BTRFS_BALANCE_OBJECTID, BTRFS_TEMPORARY_ITEM_KEY, 0)
 */
#define BTRFS_TEMPORARY_ITEM_KEY	248

/*
 * Obsolete name, see BTRFS_PERSISTENT_ITEM_KEY
 */
#define BTRFS_DEV_STATS_KEY		249

/*
 * The key type for tree items that are stored persistently and usually exist
 * for a long period, eg. filesystem lifetime. The item kinds can be status
 * information, stats or preference values. The item can exist in any tree.
 *
 * [subtype, BTRFS_PERSISTENT_ITEM_KEY, data]
 *
 * Existing items:
 *
 * - device statistics, store IO stats in the device tree, one key for all
 *   stats
 *   (BTRFS_DEV_STATS_OBJECTID, BTRFS_DEV_STATS_KEY, 0)
 */
#define BTRFS_PERSISTENT_ITEM_KEY	249

/*
 * Persistantly stores the device replace state in the device tree.
 * The key is built like this: (0, BTRFS_DEV_REPLACE_KEY, 0).
 */
#define BTRFS_DEV_REPLACE_KEY	250

/*
 * Stores items that allow to quickly map UUIDs to something else.
 * These items are part of the filesystem UUID tree.
 * The key is built like this:
 * (UUID_upper_64_bits, BTRFS_UUID_KEY*, UUID_lower_64_bits).
 */
#if BTRFS_UUID_SIZE != 16
#error "UUID items require BTRFS_UUID_SIZE == 16!"
#endif
#define BTRFS_UUID_KEY_SUBVOL	251	/* for UUIDs assigned to subvols */
#define BTRFS_UUID_KEY_RECEIVED_SUBVOL	252	/* for UUIDs assigned to
						 * received subvols */

/*
 * string items are for debugging.  They just store a short string of
 * data in the FS
 */
#define BTRFS_STRING_ITEM_KEY	253



/* 32 bytes in various csum fields */
#define BTRFS_CSUM_SIZE 32

/* csum types */
#define BTRFS_CSUM_TYPE_CRC32	0

/*
 * flags definitions for directory entry item type
 *
 * Used by:
 * struct btrfs_dir_item.type
 */
#define BTRFS_FT_UNKNOWN	0
#define BTRFS_FT_REG_FILE	1
#define BTRFS_FT_DIR		2
#define BTRFS_FT_CHRDEV		3
#define BTRFS_FT_BLKDEV		4
#define BTRFS_FT_FIFO		5
#define BTRFS_FT_SOCK		6
#define BTRFS_FT_SYMLINK	7
#define BTRFS_FT_XATTR		8
#define BTRFS_FT_MAX		9

/*
 * The key defines the order in the tree, and so it also defines (optimal)
 * block layout.
 *
 * objectid corresponds to the inode number.
 *
 * type tells us things about the object, and is a kind of stream selector.
 * so for a given inode, keys with type of 1 might refer to the inode data,
 * type of 2 may point to file data in the btree and type == 3 may point to
 * extents.
 *
 * offset is the starting byte offset for this key in the stream.
 *
 * btrfs_disk_key is in disk byte order.  struct btrfs_key is always
 * in cpu native order.  Otherwise they are identical and their sizes
 * should be the same (ie both packed)
 */
struct btrfs_disk_key {
	__le64 objectid;
	__u8 type;
	__le64 offset;
} __attribute__ ((__packed__));

struct btrfs_key {
	__u64 objectid;
	__u8 type;
	__u64 offset;
} __attribute__ ((__packed__));

struct btrfs_dev_item {
	/* the internal btrfs device id */
	__le64 devid;

	/* size of the device */
	__le64 total_bytes;

	/* bytes used */
	__le64 bytes_used;

	/* optimal io alignment for this device */
	__le32 io_align;

	/* optimal io width for this device */
	__le32 io_width;

	/* minimal io size for this device */
	__le32 sector_size;

	/* type and info about this device */
	__le64 type;

	/* expected generation for this device */
	__le64 generation;

	/*
	 * starting byte of this partition on the device,
	 * to allow for stripe alignment in the future
	 */
	__le64 start_offset;

	/* grouping information for allocation decisions */
	__le32 dev_group;

	/* seek speed 0-100 where 100 is fastest */
	__u8 seek_speed;

	/* bandwidth 0-100 where 100 is fastest */
	__u8 bandwidth;

	/* btrfs generated uuid for this device */
	__u8 uuid[BTRFS_UUID_SIZE];

	/* uuid of FS who owns this device */
	__u8 fsid[BTRFS_UUID_SIZE];
} __attribute__ ((__packed__));

struct btrfs_stripe {
	__le64 devid;
	__le64 offset;
	__u8 dev_uuid[BTRFS_UUID_SIZE];
} __attribute__ ((__packed__));

struct btrfs_chunk {
	/* size of this chunk in bytes */
	__le64 length;

	/* objectid of the root referencing this chunk */
	__le64 owner;

	__le64 stripe_len;
	__le64 type;

	/* optimal io alignment for this chunk */
	__le32 io_align;

	/* optimal io width for this chunk */
	__le32 io_width;

	/* minimal io size for this chunk */
	__le32 sector_size;

	/* 2^16 stripes is quite a lot, a second limit is the size of a single
	 * item in the btree
	 */
	__le16 num_stripes;

	/* sub stripes only matter for raid10 */
	__le16 sub_stripes;
	struct btrfs_stripe stripe;
	/* additional stripes go here */
} __attribute__ ((__packed__));

#define BTRFS_FREE_SPACE_EXTENT	1
#define BTRFS_FREE_SPACE_BITMAP	2

struct btrfs_free_space_entry {
	__le64 offset;
	__le64 bytes;
	__u8 type;
} __attribute__ ((__packed__));

struct btrfs_free_space_header {
	struct btrfs_disk_key location;
	__le64 generation;
	__le64 num_entries;
	__le64 num_bitmaps;
} __attribute__ ((__packed__));

#define BTRFS_HEADER_FLAG_WRITTEN	(1ULL << 0)
#define BTRFS_HEADER_FLAG_RELOC		(1ULL << 1)

/* Super block flags */
/* Errors detected */
#define BTRFS_SUPER_FLAG_ERROR		(1ULL << 2)

#define BTRFS_SUPER_FLAG_SEEDING	(1ULL << 32)
#define BTRFS_SUPER_FLAG_METADUMP	(1ULL << 33)
#define BTRFS_SUPER_FLAG_METADUMP_V2	(1ULL << 34)
#define BTRFS_SUPER_FLAG_CHANGING_FSID	(1ULL << 35)


/*
 * items in the extent btree are used to record the objectid of the
 * owner of the block and the number of references
 */

struct btrfs_extent_item {
	__le64 refs;
	__le64 generation;
	__le64 flags;
} __attribute__ ((__packed__));

struct btrfs_extent_item_v0 {
	__le32 refs;
} __attribute__ ((__packed__));


#define BTRFS_EXTENT_FLAG_DATA		(1ULL << 0)
#define BTRFS_EXTENT_FLAG_TREE_BLOCK	(1ULL << 1)

/* following flags only apply to tree blocks */

/* use full backrefs for extent pointers in the block */
#define BTRFS_BLOCK_FLAG_FULL_BACKREF	(1ULL << 8)

/*
 * this flag is only used internally by scrub and may be changed at any time
 * it is only declared here to avoid collisions
 */
#define BTRFS_EXTENT_FLAG_SUPER		(1ULL << 48)

struct btrfs_tree_block_info {
	struct btrfs_disk_key key;
	__u8 level;
} __attribute__ ((__packed__));

struct btrfs_extent_data_ref {
	__le64 root;
	__le64 objectid;
	__le64 offset;
	__le32 count;
} __attribute__ ((__packed__));

struct btrfs_shared_data_ref {
	__le32 count;
} __attribute__ ((__packed__));

struct btrfs_extent_inline_ref {
	__u8 type;
	__le64 offset;
} __attribute__ ((__packed__));

/* old style backrefs item */
struct btrfs_extent_ref_v0 {
	__le64 root;
	__le64 generation;
	__le64 objectid;
	__le32 count;
} __attribute__ ((__packed__));


/* dev extents record free space on individual devices.  The owner
 * field points back to the chunk allocation mapping tree that allocated
 * the extent.  The chunk tree uuid field is a way to double check the owner
 */
struct btrfs_dev_extent {
	__le64 chunk_tree;
	__le64 chunk_objectid;
	__le64 chunk_offset;
	__le64 length;
	__u8 chunk_tree_uuid[BTRFS_UUID_SIZE];
} __attribute__ ((__packed__));

struct btrfs_inode_ref {
	__le64 index;
	__le16 name_len;
	/* name goes here */
} __attribute__ ((__packed__));

struct btrfs_inode_extref {
	__le64 parent_objectid;
	__le64 index;
	__le16 name_len;
	__u8   name[0];
	/* name goes here */
} __attribute__ ((__packed__));

struct btrfs_timespec {
	__le64 sec;
	__le32 nsec;
} __attribute__ ((__packed__));

struct btrfs_inode_item {
	/* nfs style generation number */
	__le64 generation;
	/* transid that last touched this inode */
	__le64 transid;
	__le64 size;
	__le64 nbytes;
	__le64 block_group;
	__le32 nlink;
	__le32 uid;
	__le32 gid;
	__le32 mode;
	__le64 rdev;
	__le64 flags;

	/* modification sequence number for NFS */
	__le64 sequence;

	/*
	 * a little future expansion, for more than this we can
	 * just grow the inode item and version it
	 */
	__le64 reserved[4];
	struct btrfs_timespec atime;
	struct btrfs_timespec ctime;
	struct btrfs_timespec mtime;
	struct btrfs_timespec otime;
} __attribute__ ((__packed__));

struct btrfs_dir_log_item {
	__le64 end;
} __attribute__ ((__packed__));

struct btrfs_dir_item {
	struct btrfs_disk_key location;
	__le64 transid;
	__le16 data_len;
	__le16 name_len;
	__u8 type;
} __attribute__ ((__packed__));

#define BTRFS_ROOT_SUBVOL_RDONLY	(1ULL << 0)

/*
 * Internal in-memory flag that a subvolume has been marked for deletion but
 * still visible as a directory
 */
#define BTRFS_ROOT_SUBVOL_DEAD		(1ULL << 48)

struct btrfs_root_item {
	struct btrfs_inode_item inode;
	__le64 generation;
	__le64 root_dirid;
	__le64 bytenr;
	__le64 byte_limit;
	__le64 bytes_used;
	__le64 last_snapshot;
	__le64 flags;
	__le32 refs;
	struct btrfs_disk_key drop_progress;
	__u8 drop_level;
	__u8 level;

	/*
	 * The following fields appear after subvol_uuids+subvol_times
	 * were introduced.
	 */

	/*
	 * This generation number is used to test if the new fields are valid
	 * and up to date while reading the root item. Every time the root item
	 * is written out, the "generation" field is copied into this field. If
	 * anyone ever mounted the fs with an older kernel, we will have
	 * mismatching generation values here and thus must invalidate the
	 * new fields. See btrfs_update_root and btrfs_find_last_root for
	 * details.
	 * the offset of generation_v2 is also used as the start for the memset
	 * when invalidating the fields.
	 */
	__le64 generation_v2;
	__u8 uuid[BTRFS_UUID_SIZE];
	__u8 parent_uuid[BTRFS_UUID_SIZE];
	__u8 received_uuid[BTRFS_UUID_SIZE];
	__le64 ctransid; /* updated when an inode changes */
	__le64 otransid; /* trans when created */
	__le64 stransid; /* trans when sent. non-zero for received subvol */
	__le64 rtransid; /* trans when received. non-zero for received subvol */
	struct btrfs_timespec ctime;
	struct btrfs_timespec otime;
	struct btrfs_timespec stime;
	struct btrfs_timespec rtime;
	__le64 reserved[8]; /* for future */
} __attribute__ ((__packed__));

/*
 * this is used for both forward and backward root refs
 */
struct btrfs_root_ref {
	__le64 dirid;
	__le64 sequence;
	__le16 name_len;
} __attribute__ ((__packed__));

struct btrfs_disk_balance_args {
	/*
	 * profiles to operate on, single is denoted by
	 * BTRFS_AVAIL_ALLOC_BIT_SINGLE
	 */
	__le64 profiles;

	/*
	 * usage filter
	 * BTRFS_BALANCE_ARGS_USAGE with a single value means '0..N'
	 * BTRFS_BALANCE_ARGS_USAGE_RANGE - range syntax, min..max
	 */
	union {
		__le64 usage;
		struct {
			__le32 usage_min;
			__le32 usage_max;
		};
	};

	/* devid filter */
	__le64 devid;

	/* devid subset filter [pstart..pend) */
	__le64 pstart;
	__le64 pend;

	/* btrfs virtual address space subset filter [vstart..vend) */
	__le64 vstart;
	__le64 vend;

	/*
	 * profile to convert to, single is denoted by
	 * BTRFS_AVAIL_ALLOC_BIT_SINGLE
	 */
	__le64 target;

	/* BTRFS_BALANCE_ARGS_* */
	__le64 flags;

	/*
	 * BTRFS_BALANCE_ARGS_LIMIT with value 'limit'
	 * BTRFS_BALANCE_ARGS_LIMIT_RANGE - the extend version can use minimum
	 * and maximum
	 */
	union {
		__le64 limit;
		struct {
			__le32 limit_min;
			__le32 limit_max;
		};
	};

	/*
	 * Process chunks that cross stripes_min..stripes_max devices,
	 * BTRFS_BALANCE_ARGS_STRIPES_RANGE
	 */
	__le32 stripes_min;
	__le32 stripes_max;

	__le64 unused[6];
} __attribute__ ((__packed__));

/*
 * store balance parameters to disk so that balance can be properly
 * resumed after crash or unmount
 */
struct btrfs_balance_item {
	/* BTRFS_BALANCE_* */
	__le64 flags;

	struct btrfs_disk_balance_args data;
	struct btrfs_disk_balance_args meta;
	struct btrfs_disk_balance_args sys;

	__le64 unused[4];
} __attribute__ ((__packed__));

#define BTRFS_FILE_EXTENT_INLINE 0
#define BTRFS_FILE_EXTENT_REG 1
#define BTRFS_FILE_EXTENT_PREALLOC 2
#define BTRFS_FILE_EXTENT_TYPES	2

struct btrfs_file_extent_item {
	/*
	 * transaction id that created this extent
	 */
	__le64 generation;
	/*
	 * max number of bytes to hold this extent in ram
	 * when we split a compressed extent we can't know how big
	 * each of the resulting pieces will be.  So, this is
	 * an upper limit on the size of the extent in ram instead of
	 * an exact limit.
	 */
	__le64 ram_bytes;

	/*
	 * 32 bits for the various ways we might encode the data,
	 * including compression and encryption.  If any of these
	 * are set to something a given disk format doesn't understand
	 * it is treated like an incompat flag for reading and writing,
	 * but not for stat.
	 */
	__u8 compression;
	__u8 encryption;
	__le16 other_encoding; /* spare for later use */

	/* are we __inline__ data or a real extent? */
	__u8 type;

	/*
	 * disk space consumed by the extent, checksum blocks are included
	 * in these numbers
	 *
	 * At this offset in the structure, the __inline__ extent data start.
	 */
	__le64 disk_bytenr;
	__le64 disk_num_bytes;
	/*
	 * the logical offset in file blocks (no csums)
	 * this extent record is for.  This allows a file extent to point
	 * into the middle of an existing extent on disk, sharing it
	 * between two snapshots (useful if some bytes in the middle of the
	 * extent have changed
	 */
	__le64 offset;
	/*
	 * the logical number of file blocks (no csums included).  This
	 * always reflects the size uncompressed and without encoding.
	 */
	__le64 num_bytes;

} __attribute__ ((__packed__));

struct btrfs_csum_item {
	__u8 csum;
} __attribute__ ((__packed__));

struct btrfs_dev_stats_item {
	/*
	 * grow this item struct at the end for future enhancements and keep
	 * the existing values unchanged
	 */
	__le64 values[BTRFS_DEV_STAT_VALUES_MAX];
} __attribute__ ((__packed__));

#define BTRFS_DEV_REPLACE_ITEM_CONT_READING_FROM_SRCDEV_MODE_ALWAYS	0
#define BTRFS_DEV_REPLACE_ITEM_CONT_READING_FROM_SRCDEV_MODE_AVOID	1
#define BTRFS_DEV_REPLACE_ITEM_STATE_NEVER_STARTED	0
#define BTRFS_DEV_REPLACE_ITEM_STATE_STARTED		1
#define BTRFS_DEV_REPLACE_ITEM_STATE_SUSPENDED		2
#define BTRFS_DEV_REPLACE_ITEM_STATE_FINISHED		3
#define BTRFS_DEV_REPLACE_ITEM_STATE_CANCELED		4

struct btrfs_dev_replace_item {
	/*
	 * grow this item struct at the end for future enhancements and keep
	 * the existing values unchanged
	 */
	__le64 src_devid;
	__le64 cursor_left;
	__le64 cursor_right;
	__le64 cont_reading_from_srcdev_mode;

	__le64 replace_state;
	__le64 time_started;
	__le64 time_stopped;
	__le64 num_write_errors;
	__le64 num_uncorrectable_read_errors;
} __attribute__ ((__packed__));

/* different types of block groups (and chunks) */
#define BTRFS_BLOCK_GROUP_DATA		(1ULL << 0)
#define BTRFS_BLOCK_GROUP_SYSTEM	(1ULL << 1)
#define BTRFS_BLOCK_GROUP_METADATA	(1ULL << 2)
#define BTRFS_BLOCK_GROUP_RAID0		(1ULL << 3)
#define BTRFS_BLOCK_GROUP_RAID1		(1ULL << 4)
#define BTRFS_BLOCK_GROUP_DUP		(1ULL << 5)
#define BTRFS_BLOCK_GROUP_RAID10	(1ULL << 6)
#define BTRFS_BLOCK_GROUP_RAID5         (1ULL << 7)
#define BTRFS_BLOCK_GROUP_RAID6         (1ULL << 8)
#define BTRFS_BLOCK_GROUP_RESERVED	(BTRFS_AVAIL_ALLOC_BIT_SINGLE | \
					 BTRFS_SPACE_INFO_GLOBAL_RSV)

enum btrfs_raid_types {
	BTRFS_RAID_RAID10,
	BTRFS_RAID_RAID1,
	BTRFS_RAID_DUP,
	BTRFS_RAID_RAID0,
	BTRFS_RAID_SINGLE,
	BTRFS_RAID_RAID5,
	BTRFS_RAID_RAID6,
	BTRFS_NR_RAID_TYPES
};

#define BTRFS_BLOCK_GROUP_TYPE_MASK	(BTRFS_BLOCK_GROUP_DATA |    \
					 BTRFS_BLOCK_GROUP_SYSTEM |  \
					 BTRFS_BLOCK_GROUP_METADATA)

#define BTRFS_BLOCK_GROUP_PROFILE_MASK	(BTRFS_BLOCK_GROUP_RAID0 |   \
					 BTRFS_BLOCK_GROUP_RAID1 |   \
					 BTRFS_BLOCK_GROUP_RAID5 |   \
					 BTRFS_BLOCK_GROUP_RAID6 |   \
					 BTRFS_BLOCK_GROUP_DUP |     \
					 BTRFS_BLOCK_GROUP_RAID10)
#define BTRFS_BLOCK_GROUP_RAID56_MASK	(BTRFS_BLOCK_GROUP_RAID5 |   \
					 BTRFS_BLOCK_GROUP_RAID6)

/*
 * We need a bit for restriper to be able to tell when chunks of type
 * SINGLE are available.  This "extended" profile format is used in
 * fs_info->avail_*_alloc_bits (in-memory) and balance item fields
 * (on-disk).  The corresponding on-disk bit in chunk.type is reserved
 * to avoid remappings between two formats in future.
 */
#define BTRFS_AVAIL_ALLOC_BIT_SINGLE	(1ULL << 48)

/*
 * A fake block group type that is used to communicate global block reserve
 * size to userspace via the SPACE_INFO ioctl.
 */
#define BTRFS_SPACE_INFO_GLOBAL_RSV	(1ULL << 49)

#define BTRFS_EXTENDED_PROFILE_MASK	(BTRFS_BLOCK_GROUP_PROFILE_MASK | \
					 BTRFS_AVAIL_ALLOC_BIT_SINGLE)

static __inline__ __u64 chunk_to_extended(__u64 flags)
{
	if ((flags & BTRFS_BLOCK_GROUP_PROFILE_MASK) == 0)
		flags |= BTRFS_AVAIL_ALLOC_BIT_SINGLE;

	return flags;
}
static __inline__ __u64 extended_to_chunk(__u64 flags)
{
	return flags & ~BTRFS_AVAIL_ALLOC_BIT_SINGLE;
}

struct btrfs_block_group_item {
	__le64 used;
	__le64 chunk_objectid;
	__le64 flags;
} __attribute__ ((__packed__));

struct btrfs_free_space_info {
	__le32 extent_count;
	__le32 flags;
} __attribute__ ((__packed__));

#define BTRFS_FREE_SPACE_USING_BITMAPS (1ULL << 0)

#define BTRFS_QGROUP_LEVEL_SHIFT		48
static __inline__ __u64 btrfs_qgroup_level(__u64 qgroupid)
{
	return qgroupid >> BTRFS_QGROUP_LEVEL_SHIFT;
}

/*
 * is subvolume quota turned on?
 */
#define BTRFS_QGROUP_STATUS_FLAG_ON		(1ULL << 0)
/*
 * RESCAN is set during the initialization phase
 */
#define BTRFS_QGROUP_STATUS_FLAG_RESCAN		(1ULL << 1)
/*
 * Some qgroup entries are known to be out of date,
 * either because the configuration has changed in a way that
 * makes a rescan necessary, or because the fs has been mounted
 * with a non-qgroup-aware version.
 * Turning qouta off and on again makes it inconsistent, too.
 */
#define BTRFS_QGROUP_STATUS_FLAG_INCONSISTENT	(1ULL << 2)

#define BTRFS_QGROUP_STATUS_VERSION        1

struct btrfs_qgroup_status_item {
	__le64 version;
	/*
	 * the generation is updated during every commit. As older
	 * versions of btrfs are not aware of qgroups, it will be
	 * possible to detect inconsistencies by checking the
	 * generation on mount time
	 */
	__le64 generation;

	/* flag definitions see above */
	__le64 flags;

	/*
	 * only used during scanning to record the progress
	 * of the scan. It contains a logical address
	 */
	__le64 rescan;
} __attribute__ ((__packed__));

struct btrfs_qgroup_info_item {
	__le64 generation;
	__le64 rfer;
	__le64 rfer_cmpr;
	__le64 excl;
	__le64 excl_cmpr;
} __attribute__ ((__packed__));

struct btrfs_qgroup_limit_item {
	/*
	 * only updated when any of the other values change
	 */
	__le64 flags;
	__le64 max_rfer;
	__le64 max_excl;
	__le64 rsv_rfer;
	__le64 rsv_excl;
} __attribute__ ((__packed__));

#endif /* _BTRFS_CTREE_H_ */
Name
Size
Permissions
Options
android
--
drwxr-xr-x
byteorder
--
drwxr-xr-x
caif
--
drwxr-xr-x
can
--
drwxr-xr-x
cifs
--
drwxr-xr-x
dvb
--
drwxr-xr-x
genwqe
--
drwxr-xr-x
hdlc
--
drwxr-xr-x
hsi
--
drwxr-xr-x
iio
--
drwxr-xr-x
isdn
--
drwxr-xr-x
mmc
--
drwxr-xr-x
netfilter
--
drwxr-xr-x
netfilter_arp
--
drwxr-xr-x
netfilter_bridge
--
drwxr-xr-x
netfilter_ipv4
--
drwxr-xr-x
netfilter_ipv6
--
drwxr-xr-x
nfsd
--
drwxr-xr-x
raid
--
drwxr-xr-x
sched
--
drwxr-xr-x
spi
--
drwxr-xr-x
sunrpc
--
drwxr-xr-x
tc_act
--
drwxr-xr-x
tc_ematch
--
drwxr-xr-x
usb
--
drwxr-xr-x
wimax
--
drwxr-xr-x
a.out.h
6.73 KB
-rw-r--r--
acct.h
3.646 KB
-rw-r--r--
adb.h
1.113 KB
-rw-r--r--
adfs_fs.h
0.914 KB
-rw-r--r--
affs_hardblocks.h
1.508 KB
-rw-r--r--
agpgart.h
3.848 KB
-rw-r--r--
aio_abi.h
3.337 KB
-rw-r--r--
am437x-vpfe.h
3.595 KB
-rw-r--r--
apm_bios.h
3.597 KB
-rw-r--r--
arcfb.h
0.208 KB
-rw-r--r--
arm_sdei.h
2.687 KB
-rw-r--r--
aspeed-lpc-ctrl.h
1.738 KB
-rw-r--r--
atalk.h
0.999 KB
-rw-r--r--
atm.h
7.703 KB
-rw-r--r--
atm_eni.h
0.633 KB
-rw-r--r--
atm_he.h
0.396 KB
-rw-r--r--
atm_idt77105.h
0.933 KB
-rw-r--r--
atm_nicstar.h
1.248 KB
-rw-r--r--
atm_tcp.h
1.584 KB
-rw-r--r--
atm_zatm.h
1.504 KB
-rw-r--r--
atmapi.h
0.93 KB
-rw-r--r--
atmarp.h
1.266 KB
-rw-r--r--
atmbr2684.h
3.194 KB
-rw-r--r--
atmclip.h
0.563 KB
-rw-r--r--
atmdev.h
7.497 KB
-rw-r--r--
atmioc.h
1.607 KB
-rw-r--r--
atmlec.h
2.325 KB
-rw-r--r--
atmmpc.h
4.127 KB
-rw-r--r--
atmppp.h
0.624 KB
-rw-r--r--
atmsap.h
4.854 KB
-rw-r--r--
atmsvc.h
1.81 KB
-rw-r--r--
audit.h
19.916 KB
-rw-r--r--
auto_dev-ioctl.h
4.869 KB
-rw-r--r--
auto_fs.h
6.277 KB
-rw-r--r--
auto_fs4.h
0.44 KB
-rw-r--r--
auxvec.h
1.56 KB
-rw-r--r--
ax25.h
2.758 KB
-rw-r--r--
b1lli.h
1.677 KB
-rw-r--r--
batadv_packet.h
20.015 KB
-rw-r--r--
batman_adv.h
11.696 KB
-rw-r--r--
baycom.h
0.862 KB
-rw-r--r--
bcache.h
8.17 KB
-rw-r--r--
bcm933xx_hcs.h
0.409 KB
-rw-r--r--
bfs_fs.h
1.849 KB
-rw-r--r--
binfmts.h
0.613 KB
-rw-r--r--
blkpg.h
0.883 KB
-rw-r--r--
blktrace_api.h
4.591 KB
-rw-r--r--
blkzoned.h
6.453 KB
-rw-r--r--
bpf.h
223.301 KB
-rw-r--r--
bpf_common.h
1.335 KB
-rw-r--r--
bpf_perf_event.h
0.517 KB
-rw-r--r--
bpfilter.h
0.454 KB
-rw-r--r--
bpqether.h
0.958 KB
-rw-r--r--
bsg.h
2.436 KB
-rw-r--r--
bt-bmc.h
0.559 KB
-rw-r--r--
btf.h
4.684 KB
-rw-r--r--
btrfs.h
28.235 KB
-rw-r--r--
btrfs_tree.h
24.692 KB
-rw-r--r--
can.h
7.696 KB
-rw-r--r--
capability.h
13.204 KB
-rw-r--r--
capi.h
3.051 KB
-rw-r--r--
cciss_defs.h
3.204 KB
-rw-r--r--
cciss_ioctl.h
2.696 KB
-rw-r--r--
cdrom.h
28.183 KB
-rw-r--r--
cec-funcs.h
52.638 KB
-rw-r--r--
cec.h
36.808 KB
-rw-r--r--
cfm_bridge.h
1.422 KB
-rw-r--r--
cgroupstats.h
2.167 KB
-rw-r--r--
chio.h
5.219 KB
-rw-r--r--
close_range.h
0.368 KB
-rw-r--r--
cm4000_cs.h
1.764 KB
-rw-r--r--
cn_proc.h
3.375 KB
-rw-r--r--
coda.h
17.095 KB
-rw-r--r--
coda_psdev.h
0.765 KB
-rw-r--r--
coff.h
12.184 KB
-rw-r--r--
connector.h
2.2 KB
-rw-r--r--
const.h
0.77 KB
-rw-r--r--
coresight-stm.h
0.658 KB
-rw-r--r--
cramfs_fs.h
3.472 KB
-rw-r--r--
cryptouser.h
3.313 KB
-rw-r--r--
cuda.h
0.884 KB
-rw-r--r--
cyclades.h
16.707 KB
-rw-r--r--
cycx_cfm.h
2.92 KB
-rw-r--r--
dcbnl.h
24.646 KB
-rw-r--r--
dccp.h
6.285 KB
-rw-r--r--
devlink.h
21.051 KB
-rw-r--r--
dlm.h
2.493 KB
-rw-r--r--
dlm_device.h
2.483 KB
-rw-r--r--
dlm_netlink.h
1.132 KB
-rw-r--r--
dlm_plock.h
0.873 KB
-rw-r--r--
dlmconstants.h
4.961 KB
-rw-r--r--
dm-ioctl.h
11.133 KB
-rw-r--r--
dm-log-userspace.h
14.835 KB
-rw-r--r--
dma-buf.h
5.124 KB
-rw-r--r--
dn.h
4.533 KB
-rw-r--r--
dqblk_xfs.h
9.028 KB
-rw-r--r--
edd.h
5.473 KB
-rw-r--r--
efs_fs_sb.h
2.175 KB
-rw-r--r--
elf-em.h
2.136 KB
-rw-r--r--
elf-fdpic.h
1.098 KB
-rw-r--r--
elf.h
13.155 KB
-rw-r--r--
elfcore.h
2.925 KB
-rw-r--r--
errno.h
0.022 KB
-rw-r--r--
errqueue.h
1.442 KB
-rw-r--r--
erspan.h
1.034 KB
-rw-r--r--
ethtool.h
81.89 KB
-rw-r--r--
ethtool_netlink.h
22.291 KB
-rw-r--r--
eventpoll.h
2.67 KB
-rw-r--r--
fadvise.h
0.822 KB
-rw-r--r--
falloc.h
3.5 KB
-rw-r--r--
fanotify.h
5.216 KB
-rw-r--r--
fb.h
16.091 KB
-rw-r--r--
fcntl.h
4.076 KB
-rw-r--r--
fd.h
11.398 KB
-rw-r--r--
fdreg.h
5.293 KB
-rw-r--r--
fib_rules.h
1.988 KB
-rw-r--r--
fiemap.h
2.71 KB
-rw-r--r--
filter.h
2.164 KB
-rw-r--r--
firewire-cdev.h
42.857 KB
-rw-r--r--
firewire-constants.h
3.155 KB
-rw-r--r--
flat.h
2.098 KB
-rw-r--r--
fou.h
0.678 KB
-rw-r--r--
fpga-dfl.h
8.523 KB
-rw-r--r--
fs.h
13.109 KB
-rw-r--r--
fsl_hypervisor.h
7.13 KB
-rw-r--r--
fsmap.h
4.29 KB
-rw-r--r--
fuse.h
22.923 KB
-rw-r--r--
futex.h
4.876 KB
-rw-r--r--
gameport.h
0.876 KB
-rw-r--r--
gen_stats.h
1.49 KB
-rw-r--r--
genetlink.h
2.124 KB
-rw-r--r--
gfs2_ondisk.h
14.397 KB
-rw-r--r--
gigaset_dev.h
1.408 KB
-rw-r--r--
gpio.h
6.593 KB
-rw-r--r--
gsmmux.h
1.017 KB
-rw-r--r--
gtp.h
0.665 KB
-rw-r--r--
hash_info.h
0.899 KB
-rw-r--r--
hdlc.h
0.622 KB
-rw-r--r--
hdlcdrv.h
2.84 KB
-rw-r--r--
hdreg.h
22.171 KB
-rw-r--r--
hid.h
1.856 KB
-rw-r--r--
hiddev.h
6.196 KB
-rw-r--r--
hidraw.h
1.946 KB
-rw-r--r--
hpet.h
0.726 KB
-rw-r--r--
hsr_netlink.h
1.056 KB
-rw-r--r--
hw_breakpoint.h
0.725 KB
-rw-r--r--
hyperv.h
10.891 KB
-rw-r--r--
hysdn_if.h
1.35 KB
-rw-r--r--
i2c-dev.h
2.551 KB
-rw-r--r--
i2c.h
6.965 KB
-rw-r--r--
i2o-dev.h
11.284 KB
-rw-r--r--
i8k.h
1.492 KB
-rw-r--r--
icmp.h
2.905 KB
-rw-r--r--
icmpv6.h
3.943 KB
-rw-r--r--
idxd.h
8.22 KB
-rw-r--r--
if.h
10.646 KB
-rw-r--r--
if_addr.h
1.842 KB
-rw-r--r--
if_addrlabel.h
0.704 KB
-rw-r--r--
if_alg.h
0.924 KB
-rw-r--r--
if_arcnet.h
3.63 KB
-rw-r--r--
if_arp.h
6.423 KB
-rw-r--r--
if_bonding.h
5.167 KB
-rw-r--r--
if_bridge.h
19.057 KB
-rw-r--r--
if_cablemodem.h
0.963 KB
-rw-r--r--
if_eql.h
1.317 KB
-rw-r--r--
if_ether.h
8.055 KB
-rw-r--r--
if_fc.h
1.697 KB
-rw-r--r--
if_fddi.h
3.66 KB
-rw-r--r--
if_frad.h
2.948 KB
-rw-r--r--
if_hippi.h
4.136 KB
-rw-r--r--
if_infiniband.h
1.216 KB
-rw-r--r--
if_link.h
30.278 KB
-rw-r--r--
if_ltalk.h
0.205 KB
-rw-r--r--
if_macsec.h
5.695 KB
-rw-r--r--
if_packet.h
7.733 KB
-rw-r--r--
if_phonet.h
0.414 KB
-rw-r--r--
if_plip.h
0.645 KB
-rw-r--r--
if_ppp.h
0.028 KB
-rw-r--r--
if_pppol2tp.h
3.215 KB
-rw-r--r--
if_pppox.h
4.765 KB
-rw-r--r--
if_slip.h
0.852 KB
-rw-r--r--
if_team.h
2.539 KB
-rw-r--r--
if_tun.h
4.002 KB
-rw-r--r--
if_tunnel.h
4.406 KB
-rw-r--r--
if_vlan.h
1.788 KB
-rw-r--r--
if_x25.h
0.86 KB
-rw-r--r--
if_xdp.h
2.94 KB
-rw-r--r--
ife.h
0.343 KB
-rw-r--r--
igmp.h
2.992 KB
-rw-r--r--
ila.h
1.217 KB
-rw-r--r--
in.h
9.779 KB
-rw-r--r--
in6.h
7.264 KB
-rw-r--r--
in_route.h
0.914 KB
-rw-r--r--
inet_diag.h
4.563 KB
-rw-r--r--
inotify.h
3.215 KB
-rw-r--r--
input-event-codes.h
27.936 KB
-rw-r--r--
input.h
15.61 KB
-rw-r--r--
io_uring.h
6.062 KB
-rw-r--r--
ioctl.h
0.159 KB
-rw-r--r--
iommu.h
4.789 KB
-rw-r--r--
ip.h
4.617 KB
-rw-r--r--
ip6_tunnel.h
1.907 KB
-rw-r--r--
ip_vs.h
13.312 KB
-rw-r--r--
ipc.h
2.052 KB
-rw-r--r--
ipmi.h
15.08 KB
-rw-r--r--
ipmi_bmc.h
0.453 KB
-rw-r--r--
ipmi_msgdefs.h
3.35 KB
-rw-r--r--
ipmi_ssif_bmc.h
0.431 KB
-rw-r--r--
ipsec.h
0.925 KB
-rw-r--r--
ipv6.h
3.874 KB
-rw-r--r--
ipv6_route.h
1.863 KB
-rw-r--r--
ipx.h
2.292 KB
-rw-r--r--
irqnr.h
0.102 KB
-rw-r--r--
isdn.h
5.639 KB
-rw-r--r--
isdn_divertif.h
1.172 KB
-rw-r--r--
isdn_ppp.h
1.878 KB
-rw-r--r--
isdnif.h
2.314 KB
-rw-r--r--
iso_fs.h
6.333 KB
-rw-r--r--
isst_if.h
5.258 KB
-rw-r--r--
ivtv.h
2.951 KB
-rw-r--r--
ivtvfb.h
1.179 KB
-rw-r--r--
jffs2.h
6.854 KB
-rw-r--r--
joystick.h
3.354 KB
-rw-r--r--
kcm.h
0.803 KB
-rw-r--r--
kcmp.h
0.51 KB
-rw-r--r--
kcov.h
1.073 KB
-rw-r--r--
kd.h
6.106 KB
-rw-r--r--
kdev_t.h
0.374 KB
-rw-r--r--
kernel-page-flags.h
0.879 KB
-rw-r--r--
kernel.h
0.428 KB
-rw-r--r--
kernelcapi.h
0.995 KB
-rw-r--r--
kexec.h
1.792 KB
-rw-r--r--
keyboard.h
12.483 KB
-rw-r--r--
keyctl.h
3.418 KB
-rw-r--r--
kfd_ioctl.h
28.139 KB
-rw-r--r--
kfd_sysfs.h
4.248 KB
-rw-r--r--
kvm.h
60.118 KB
-rw-r--r--
kvm_para.h
0.978 KB
-rw-r--r--
l2tp.h
5.46 KB
-rw-r--r--
libc-compat.h
8.095 KB
-rw-r--r--
lightnvm.h
4.924 KB
-rw-r--r--
limits.h
0.915 KB
-rw-r--r--
lirc.h
7.63 KB
-rw-r--r--
llc.h
3.09 KB
-rw-r--r--
loop.h
3.415 KB
-rw-r--r--
lp.h
4.092 KB
-rw-r--r--
lwtunnel.h
2.128 KB
-rw-r--r--
magic.h
3.448 KB
-rw-r--r--
major.h
4.603 KB
-rw-r--r--
map_to_7segment.h
7.081 KB
-rw-r--r--
matroxfb.h
1.43 KB
-rw-r--r--
max2175.h
1.011 KB
-rw-r--r--
mdio.h
16.867 KB
-rw-r--r--
media-bus-format.h
6.261 KB
-rw-r--r--
media.h
11.115 KB
-rw-r--r--
mei.h
3.394 KB
-rw-r--r--
membarrier.h
7.714 KB
-rw-r--r--
memfd.h
1.293 KB
-rw-r--r--
mempolicy.h
2.179 KB
-rw-r--r--
meye.h
2.47 KB
-rw-r--r--
mic_common.h
6.366 KB
-rw-r--r--
mic_ioctl.h
2.199 KB
-rw-r--r--
mii.h
9.273 KB
-rw-r--r--
minix_fs.h
2.072 KB
-rw-r--r--
mman.h
1.353 KB
-rw-r--r--
mmtimer.h
2.067 KB
-rw-r--r--
module.h
0.249 KB
-rw-r--r--
mount.h
4.439 KB
-rw-r--r--
mpls.h
2.248 KB
-rw-r--r--
mpls_iptunnel.h
0.743 KB
-rw-r--r--
mptcp.h
5.477 KB
-rw-r--r--
mqueue.h
2.149 KB
-rw-r--r--
mroute.h
5.3 KB
-rw-r--r--
mroute6.h
4.47 KB
-rw-r--r--
mrp_bridge.h
1.668 KB
-rw-r--r--
msdos_fs.h
6.8 KB
-rw-r--r--
msg.h
3.295 KB
-rw-r--r--
mtio.h
7.983 KB
-rw-r--r--
n_r3964.h
2.354 KB
-rw-r--r--
nbd-netlink.h
2.352 KB
-rw-r--r--
nbd.h
2.953 KB
-rw-r--r--
ncsi.h
3.789 KB
-rw-r--r--
ndctl.h
6.705 KB
-rw-r--r--
neighbour.h
5.018 KB
-rw-r--r--
net.h
2.036 KB
-rw-r--r--
net_dropmon.h
2.854 KB
-rw-r--r--
net_namespace.h
0.698 KB
-rw-r--r--
net_tstamp.h
5.67 KB
-rw-r--r--
netconf.h
0.6 KB
-rw-r--r--
netdevice.h
2.2 KB
-rw-r--r--
netfilter.h
1.777 KB
-rw-r--r--
netfilter_arp.h
0.435 KB
-rw-r--r--
netfilter_bridge.h
1.141 KB
-rw-r--r--
netfilter_decnet.h
1.933 KB
-rw-r--r--
netfilter_ipv4.h
2.118 KB
-rw-r--r--
netfilter_ipv6.h
2.138 KB
-rw-r--r--
netlink.h
11.226 KB
-rw-r--r--
netlink_diag.h
1.488 KB
-rw-r--r--
netrom.h
0.788 KB
-rw-r--r--
nexthop.h
1.498 KB
-rw-r--r--
nfc.h
10.946 KB
-rw-r--r--
nfs.h
4.395 KB
-rw-r--r--
nfs2.h
1.434 KB
-rw-r--r--
nfs3.h
2.396 KB
-rw-r--r--
nfs4.h
6.444 KB
-rw-r--r--
nfs4_mount.h
1.887 KB
-rw-r--r--
nfs_fs.h
1.603 KB
-rw-r--r--
nfs_idmap.h
2.19 KB
-rw-r--r--
nfs_mount.h
2.092 KB
-rw-r--r--
nfsacl.h
0.701 KB
-rw-r--r--
nilfs2_api.h
7.411 KB
-rw-r--r--
nilfs2_ondisk.h
17.61 KB
-rw-r--r--
nitro_enclaves.h
12.844 KB
-rw-r--r--
nl80211.h
327.406 KB
-rw-r--r--
nsfs.h
0.624 KB
-rw-r--r--
nubus.h
7.999 KB
-rw-r--r--
nvme_ioctl.h
2.063 KB
-rw-r--r--
nvram.h
0.52 KB
-rw-r--r--
omap3isp.h
20.364 KB
-rw-r--r--
omapfb.h
5.779 KB
-rw-r--r--
oom.h
0.499 KB
-rw-r--r--
openat2.h
1.259 KB
-rw-r--r--
openvswitch.h
39.242 KB
-rw-r--r--
packet_diag.h
1.633 KB
-rw-r--r--
param.h
0.138 KB
-rw-r--r--
parport.h
3.559 KB
-rw-r--r--
patchkey.h
0.871 KB
-rw-r--r--
pci.h
1.348 KB
-rw-r--r--
pci_regs.h
56.472 KB
-rw-r--r--
pcitest.h
0.694 KB
-rw-r--r--
perf_event.h
39.629 KB
-rw-r--r--
personality.h
2.048 KB
-rw-r--r--
pfkeyv2.h
10.321 KB
-rw-r--r--
pfrut.h
7.8 KB
-rw-r--r--
pg.h
2.338 KB
-rw-r--r--
phantom.h
1.615 KB
-rw-r--r--
phonet.h
4.567 KB
-rw-r--r--
pkt_cls.h
18.077 KB
-rw-r--r--
pkt_sched.h
29.586 KB
-rw-r--r--
pktcdvd.h
2.624 KB
-rw-r--r--
pmu.h
5.194 KB
-rw-r--r--
poll.h
0.021 KB
-rw-r--r--
posix_acl.h
1.225 KB
-rw-r--r--
posix_acl_xattr.h
1.089 KB
-rw-r--r--
posix_types.h
1.072 KB
-rw-r--r--
ppdev.h
3.136 KB
-rw-r--r--
ppp-comp.h
2.468 KB
-rw-r--r--
ppp-ioctl.h
5.347 KB
-rw-r--r--
ppp_defs.h
4.987 KB
-rw-r--r--
pps.h
4.623 KB
-rw-r--r--
pr.h
1.048 KB
-rw-r--r--
prctl.h
7.835 KB
-rw-r--r--
psample.h
2.218 KB
-rw-r--r--
psci.h
4.227 KB
-rw-r--r--
psp-sev.h
4.479 KB
-rw-r--r--
ptp_clock.h
7.281 KB
-rw-r--r--
ptrace.h
3.588 KB
-rw-r--r--
qemu_fw_cfg.h
2.411 KB
-rw-r--r--
qnx4_fs.h
2.273 KB
-rw-r--r--
qnxtypes.h
0.609 KB
-rw-r--r--
qrtr.h
0.872 KB
-rw-r--r--
quota.h
6.144 KB
-rw-r--r--
radeonfb.h
0.352 KB
-rw-r--r--
random.h
1.338 KB
-rw-r--r--
raw.h
0.356 KB
-rw-r--r--
rds.h
9.083 KB
-rw-r--r--
reboot.h
1.312 KB
-rw-r--r--
reiserfs_fs.h
0.757 KB
-rw-r--r--
reiserfs_xattr.h
0.521 KB
-rw-r--r--
resource.h
2.292 KB
-rw-r--r--
rfkill.h
6.453 KB
-rw-r--r--
rio_cm_cdev.h
3.172 KB
-rw-r--r--
rio_mport_cdev.h
9.111 KB
-rw-r--r--
romfs_fs.h
1.209 KB
-rw-r--r--
rose.h
2.18 KB
-rw-r--r--
route.h
2.277 KB
-rw-r--r--
rpmsg.h
0.531 KB
-rw-r--r--
rseq.h
4.789 KB
-rw-r--r--
rtc.h
3.915 KB
-rw-r--r--
rtnetlink.h
19.728 KB
-rw-r--r--
rxrpc.h
4.961 KB
-rw-r--r--
scc.h
4.489 KB
-rw-r--r--
sched.h
2.731 KB
-rw-r--r--
scif_ioctl.h
6.232 KB
-rw-r--r--
screen_info.h
2.421 KB
-rw-r--r--
sctp.h
35.15 KB
-rw-r--r--
sdla.h
2.772 KB
-rw-r--r--
seccomp.h
2.204 KB
-rw-r--r--
securebits.h
2.641 KB
-rw-r--r--
sed-opal.h
3.198 KB
-rw-r--r--
seg6.h
1.143 KB
-rw-r--r--
seg6_genl.h
0.575 KB
-rw-r--r--
seg6_hmac.h
0.413 KB
-rw-r--r--
seg6_iptunnel.h
0.905 KB
-rw-r--r--
seg6_local.h
2.012 KB
-rw-r--r--
selinux_netlink.h
1.167 KB
-rw-r--r--
sem.h
2.972 KB
-rw-r--r--
serial.h
3.775 KB
-rw-r--r--
serial_core.h
6.099 KB
-rw-r--r--
serial_reg.h
15.133 KB
-rw-r--r--
serio.h
1.989 KB
-rw-r--r--
sev-guest.h
2.249 KB
-rw-r--r--
shm.h
3.696 KB
-rw-r--r--
signal.h
0.379 KB
-rw-r--r--
signalfd.h
1.204 KB
-rw-r--r--
smc.h
8.313 KB
-rw-r--r--
smc_diag.h
2.664 KB
-rw-r--r--
smiapp.h
1.033 KB
-rw-r--r--
snmp.h
13.343 KB
-rw-r--r--
sock_diag.h
1.271 KB
-rw-r--r--
socket.h
0.88 KB
-rw-r--r--
sockios.h
5.963 KB
-rw-r--r--
sonet.h
2.236 KB
-rw-r--r--
sonypi.h
5.185 KB
-rw-r--r--
sound.h
1.208 KB
-rw-r--r--
soundcard.h
44.959 KB
-rw-r--r--
stat.h
6.203 KB
-rw-r--r--
stddef.h
1.496 KB
-rw-r--r--
stm.h
1.245 KB
-rw-r--r--
string.h
0.232 KB
-rw-r--r--
suspend_ioctls.h
1.397 KB
-rw-r--r--
swab.h
6.759 KB
-rw-r--r--
switchtec_ioctl.h
5.139 KB
-rw-r--r--
sync_file.h
2.815 KB
-rw-r--r--
synclink.h
8.774 KB
-rw-r--r--
sysctl.h
25.236 KB
-rw-r--r--
sysinfo.h
1.024 KB
-rw-r--r--
target_core_user.h
4.524 KB
-rw-r--r--
taskstats.h
7.012 KB
-rw-r--r--
tcp.h
9.688 KB
-rw-r--r--
tcp_metrics.h
1.513 KB
-rw-r--r--
tdx-guest.h
1.274 KB
-rw-r--r--
tee.h
12.856 KB
-rw-r--r--
termios.h
0.494 KB
-rw-r--r--
thermal.h
3.231 KB
-rw-r--r--
time.h
1.707 KB
-rw-r--r--
time_types.h
1.147 KB
-rw-r--r--
timerfd.h
0.914 KB
-rw-r--r--
times.h
0.271 KB
-rw-r--r--
timex.h
6.253 KB
-rw-r--r--
tiocl.h
1.688 KB
-rw-r--r--
tipc.h
8.618 KB
-rw-r--r--
tipc_config.h
14.363 KB
-rw-r--r--
tipc_netlink.h
9.175 KB
-rw-r--r--
tipc_sockets_diag.h
0.457 KB
-rw-r--r--
tls.h
4.188 KB
-rw-r--r--
toshiba.h
1.885 KB
-rw-r--r--
tty.h
1.548 KB
-rw-r--r--
tty_flags.h
4.421 KB
-rw-r--r--
types.h
1.441 KB
-rw-r--r--
udf_fs_i.h
0.681 KB
-rw-r--r--
udp.h
1.622 KB
-rw-r--r--
uhid.h
4.539 KB
-rw-r--r--
uinput.h
9.044 KB
-rw-r--r--
uio.h
0.715 KB
-rw-r--r--
uleds.h
0.779 KB
-rw-r--r--
ultrasound.h
4.455 KB
-rw-r--r--
un.h
0.375 KB
-rw-r--r--
unistd.h
0.215 KB
-rw-r--r--
unix_diag.h
1.224 KB
-rw-r--r--
usbdevice_fs.h
8.122 KB
-rw-r--r--
usbip.h
0.625 KB
-rw-r--r--
userfaultfd.h
7.592 KB
-rw-r--r--
userio.h
1.48 KB
-rw-r--r--
utime.h
0.21 KB
-rw-r--r--
utsname.h
0.653 KB
-rw-r--r--
uuid.h
1.324 KB
-rw-r--r--
uvcvideo.h
2.573 KB
-rw-r--r--
v4l2-common.h
4.079 KB
-rw-r--r--
v4l2-controls.h
50.563 KB
-rw-r--r--
v4l2-dv-timings.h
30.822 KB
-rw-r--r--
v4l2-mediabus.h
4.981 KB
-rw-r--r--
v4l2-subdev.h
5.953 KB
-rw-r--r--
vbox_err.h
7.087 KB
-rw-r--r--
vbox_vmmdev_types.h
8.16 KB
-rw-r--r--
vboxguest.h
8.524 KB
-rw-r--r--
vdpa.h
1.388 KB
-rw-r--r--
version.h
0.42 KB
-rw-r--r--
veth.h
0.219 KB
-rw-r--r--
vfio.h
50.999 KB
-rw-r--r--
vfio_ccw.h
1.286 KB
-rw-r--r--
vfio_zdev.h
2.482 KB
-rw-r--r--
vhost.h
6.268 KB
-rw-r--r--
vhost_types.h
3.903 KB
-rw-r--r--
videodev2.h
88.614 KB
-rw-r--r--
virtio_9p.h
1.993 KB
-rw-r--r--
virtio_balloon.h
5.15 KB
-rw-r--r--
virtio_blk.h
6.638 KB
-rw-r--r--
virtio_bt.h
0.754 KB
-rw-r--r--
virtio_config.h
3.911 KB
-rw-r--r--
virtio_console.h
3.063 KB
-rw-r--r--
virtio_crypto.h
13.549 KB
-rw-r--r--
virtio_fs.h
0.559 KB
-rw-r--r--
virtio_gpu.h
11.186 KB
-rw-r--r--
virtio_ids.h
3.192 KB
-rw-r--r--
virtio_input.h
2.447 KB
-rw-r--r--
virtio_iommu.h
3.694 KB
-rw-r--r--
virtio_mem.h
6.989 KB
-rw-r--r--
virtio_mmio.h
4.853 KB
-rw-r--r--
virtio_net.h
10.302 KB
-rw-r--r--
virtio_pci.h
7.232 KB
-rw-r--r--
virtio_ring.h
7.321 KB
-rw-r--r--
virtio_rng.h
0.259 KB
-rw-r--r--
virtio_scsi.h
5.894 KB
-rw-r--r--
virtio_snd.h
9.086 KB
-rw-r--r--
virtio_types.h
2.103 KB
-rw-r--r--
virtio_vsock.h
3.014 KB
-rw-r--r--
vm_sockets.h
6.342 KB
-rw-r--r--
vm_sockets_diag.h
0.94 KB
-rw-r--r--
vmcore.h
0.421 KB
-rw-r--r--
vsockmon.h
1.841 KB
-rw-r--r--
vt.h
2.987 KB
-rw-r--r--
vtpm_proxy.h
1.679 KB
-rw-r--r--
wait.h
0.666 KB
-rw-r--r--
wanrouter.h
0.442 KB
-rw-r--r--
watchdog.h
2.28 KB
-rw-r--r--
wimax.h
8.175 KB
-rw-r--r--
wireless.h
41.702 KB
-rw-r--r--
wmi.h
1.842 KB
-rw-r--r--
x25.h
3.479 KB
-rw-r--r--
xattr.h
2.793 KB
-rw-r--r--
xdp_diag.h
1.434 KB
-rw-r--r--
xfrm.h
11.713 KB
-rw-r--r--
xilinx-v4l2-controls.h
2.906 KB
-rw-r--r--
zorro.h
3.219 KB
-rw-r--r--
zorro_ids.h
29.261 KB
-rw-r--r--