*/
#include <asm/types.h>
-#include <linux/compiler.h>
#include <asm/byteorder.h>
#include <linux/uuid.h>
BCH_COMPRESSION_LZ4_OLD = 1,
BCH_COMPRESSION_GZIP = 2,
BCH_COMPRESSION_LZ4 = 3,
- BCH_COMPRESSION_NR = 4,
+ BCH_COMPRESSION_ZSTD = 4,
+ BCH_COMPRESSION_NR = 5,
};
enum bch_extent_entry_type {
enum bch_sb_features {
BCH_FEATURE_LZ4 = 0,
BCH_FEATURE_GZIP = 1,
+ BCH_FEATURE_ZSTD = 2,
};
/* options: */
BCH_STR_HASH_NR = 3,
};
+#define BCH_COMPRESSION_TYPES() \
+ x(NONE) \
+ x(LZ4) \
+ x(GZIP) \
+ x(ZSTD)
+
enum bch_compression_opts {
- BCH_COMPRESSION_OPT_NONE = 0,
- BCH_COMPRESSION_OPT_LZ4 = 1,
- BCH_COMPRESSION_OPT_GZIP = 2,
- BCH_COMPRESSION_OPT_NR = 3,
+#define x(t) BCH_COMPRESSION_OPT_##t,
+ BCH_COMPRESSION_TYPES()
+#undef x
+ BCH_COMPRESSION_OPT_NR
};
/*
};
} __attribute__((packed, aligned(8)));
-LE64_BITMASK(BTREE_NODE_ID, struct btree_node, flags, 0, 4);
-LE64_BITMASK(BTREE_NODE_LEVEL, struct btree_node, flags, 4, 8);
+LE64_BITMASK(BTREE_NODE_ID, struct btree_node, flags, 0, 4);
+LE64_BITMASK(BTREE_NODE_LEVEL, struct btree_node, flags, 4, 8);
+/* 8-32 unused */
+LE64_BITMASK(BTREE_NODE_SEQ, struct btree_node, flags, 32, 64);
struct btree_node_entry {
struct bch_csum csum;