summaryrefslogtreecommitdiff
path: root/c_src/libbcachefs/bbpos_types.h
diff options
context:
space:
mode:
Diffstat (limited to 'c_src/libbcachefs/bbpos_types.h')
-rw-r--r--c_src/libbcachefs/bbpos_types.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/c_src/libbcachefs/bbpos_types.h b/c_src/libbcachefs/bbpos_types.h
new file mode 100644
index 00000000..5198e94c
--- /dev/null
+++ b/c_src/libbcachefs/bbpos_types.h
@@ -0,0 +1,18 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+#ifndef _BCACHEFS_BBPOS_TYPES_H
+#define _BCACHEFS_BBPOS_TYPES_H
+
+struct bbpos {
+ enum btree_id btree;
+ struct bpos pos;
+};
+
+static inline struct bbpos BBPOS(enum btree_id btree, struct bpos pos)
+{
+ return (struct bbpos) { btree, pos };
+}
+
+#define BBPOS_MIN BBPOS(0, POS_MIN)
+#define BBPOS_MAX BBPOS(BTREE_ID_NR - 1, POS_MAX)
+
+#endif /* _BCACHEFS_BBPOS_TYPES_H */