]> git.sesse.net Git - bcachefs-tools-debian/blobdiff - libbcachefs/bcachefs_format.h
Update bcachefs sources to 39a84c99af2d bcachefs: Clamp replicas_required to replicas
[bcachefs-tools-debian] / libbcachefs / bcachefs_format.h
index 14f613617913e1a3ef0e93c51caa041041f822c2..20604e2708d6ad76ce42dedf2fc53de2b00f7125 100644 (file)
@@ -840,7 +840,9 @@ struct bch_sb_field_downgrade {
        x(snapshot_skiplists,           BCH_VERSION(1,  1))             \
        x(deleted_inodes,               BCH_VERSION(1,  2))             \
        x(rebalance_work,               BCH_VERSION(1,  3))             \
-       x(member_seq,                   BCH_VERSION(1,  4))
+       x(member_seq,                   BCH_VERSION(1,  4))             \
+       x(subvolume_fs_parent,          BCH_VERSION(1,  5))             \
+       x(btree_subvolume_children,     BCH_VERSION(1,  6))
 
 enum bcachefs_metadata_version {
        bcachefs_metadata_version_min = 9,
@@ -1424,14 +1426,17 @@ LE32_BITMASK(JSET_NO_FLUSH,     struct jset, flags, 5, 6);
 /* Btree: */
 
 enum btree_id_flags {
-       BTREE_ID_EXTENTS        = BIT(0),
-       BTREE_ID_SNAPSHOTS      = BIT(1),
-       BTREE_ID_SNAPSHOT_FIELD = BIT(2),
-       BTREE_ID_DATA           = BIT(3),
+       /* key size field is nonzero, btree iterators handle as ranges  */
+       BTREE_ID_EXTENTS                = BIT(0),
+       BTREE_ID_SNAPSHOTS              = BIT(1),
+       BTREE_ID_SNAPSHOT_FIELD         = BIT(2),
+       BTREE_ID_SNAPSHOTS_UNREFFED     = BIT(3),
+       BTREE_ID_DATA                   = BIT(3),
 };
 
 #define BCH_BTREE_IDS()                                                                \
-       x(extents,              0,      BTREE_ID_EXTENTS|BTREE_ID_SNAPSHOTS|BTREE_ID_DATA,\
+       x(extents,              0,      BTREE_ID_EXTENTS|BTREE_ID_SNAPSHOTS|    \
+                                       BTREE_ID_SNAPSHOTS_UNREFFED|BTREE_ID_DATA,\
          BIT_ULL(KEY_TYPE_whiteout)|                                           \
          BIT_ULL(KEY_TYPE_error)|                                              \
          BIT_ULL(KEY_TYPE_cookie)|                                             \
@@ -1449,7 +1454,7 @@ enum btree_id_flags {
          BIT_ULL(KEY_TYPE_whiteout)|                                           \
          BIT_ULL(KEY_TYPE_hash_whiteout)|                                      \
          BIT_ULL(KEY_TYPE_dirent))                                             \
-       x(xattrs,               3,      BTREE_ID_SNAPSHOTS,                     \
+       x(xattrs,               3,      BTREE_ID_SNAPSHOTS|BTREE_ID_SNAPSHOTS_UNREFFED,\
          BIT_ULL(KEY_TYPE_whiteout)|                                           \
          BIT_ULL(KEY_TYPE_cookie)|                                             \
          BIT_ULL(KEY_TYPE_hash_whiteout)|                                      \
@@ -1488,7 +1493,9 @@ enum btree_id_flags {
          BIT_ULL(KEY_TYPE_logged_op_truncate)|                                 \
          BIT_ULL(KEY_TYPE_logged_op_finsert))                                  \
        x(rebalance_work,       18,     BTREE_ID_SNAPSHOT_FIELD,                \
-         BIT_ULL(KEY_TYPE_set)|BIT_ULL(KEY_TYPE_cookie))
+         BIT_ULL(KEY_TYPE_set)|BIT_ULL(KEY_TYPE_cookie))                       \
+       x(subvolume_children,   19,     0,                                      \
+         BIT_ULL(KEY_TYPE_set))
 
 enum btree_id {
 #define x(name, nr, ...) BTREE_ID_##name = nr,