summaryrefslogtreecommitdiff
path: root/libbcachefs/super-io.h
diff options
context:
space:
mode:
Diffstat (limited to 'libbcachefs/super-io.h')
-rw-r--r--libbcachefs/super-io.h11
1 files changed, 7 insertions, 4 deletions
diff --git a/libbcachefs/super-io.h b/libbcachefs/super-io.h
index d51c0a19..f7e90999 100644
--- a/libbcachefs/super-io.h
+++ b/libbcachefs/super-io.h
@@ -6,6 +6,7 @@
#include "eytzinger.h"
#include "super_types.h"
#include "super.h"
+#include "sb-members.h"
#include <asm/byteorder.h>
@@ -89,7 +90,7 @@ static inline void bch2_check_set_feature(struct bch_fs *c, unsigned feat)
__bch2_check_set_feature(c, feat);
}
-/* BCH_SB_FIELD_members: */
+/* BCH_SB_FIELD_members_v1: */
static inline bool bch2_member_exists(struct bch_member *m)
{
@@ -97,11 +98,13 @@ static inline bool bch2_member_exists(struct bch_member *m)
}
static inline bool bch2_dev_exists(struct bch_sb *sb,
- struct bch_sb_field_members *mi,
unsigned dev)
{
- return dev < sb->nr_devices &&
- bch2_member_exists(&mi->members[dev]);
+ if (dev < sb->nr_devices) {
+ struct bch_member m = bch2_sb_member_get(sb, dev);
+ return bch2_member_exists(&m);
+ }
+ return false;
}
static inline struct bch_member_cpu bch2_mi_to_cpu(struct bch_member *mi)