X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fshared%2Fbtrfs-ctree.h;h=d3ae57331c8a6875fcca5106351aa0dc2b0fc328;hb=b733fbe7a0214eb43e402db7179697bf9c0975c1;hp=45b94cdbf65ddc4d7cf0f40dc8eb0417ff42f495;hpb=10f9c75519671e7c7ab8993b54fe22da7c2d0c38;p=elogind.git diff --git a/src/shared/btrfs-ctree.h b/src/shared/btrfs-ctree.h index 45b94cdbf..d3ae57331 100644 --- a/src/shared/btrfs-ctree.h +++ b/src/shared/btrfs-ctree.h @@ -2,6 +2,7 @@ #pragma once +#include "macro.h" #include "sparse-endian.h" /* Stolen from btrfs' ctree.h */ @@ -66,3 +67,32 @@ struct btrfs_root_item { } _packed_; #define BTRFS_ROOT_SUBVOL_RDONLY (1ULL << 0) + +struct btrfs_qgroup_info_item { + le64_t generation; + le64_t rfer; + le64_t rfer_cmpr; + le64_t excl; + le64_t excl_cmpr; +} _packed_; + +#define BTRFS_QGROUP_LIMIT_MAX_RFER (1ULL << 0) +#define BTRFS_QGROUP_LIMIT_MAX_EXCL (1ULL << 1) +#define BTRFS_QGROUP_LIMIT_RSV_RFER (1ULL << 2) +#define BTRFS_QGROUP_LIMIT_RSV_EXCL (1ULL << 3) +#define BTRFS_QGROUP_LIMIT_RFER_CMPR (1ULL << 4) +#define BTRFS_QGROUP_LIMIT_EXCL_CMPR (1ULL << 5) + +struct btrfs_qgroup_limit_item { + le64_t flags; + le64_t max_rfer; + le64_t max_excl; + le64_t rsv_rfer; + le64_t rsv_excl; +} _packed_; + +struct btrfs_root_ref { + le64_t dirid; + le64_t sequence; + le16_t name_len; +} _packed_;