1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef _BCACHEFS_SUPER_TYPES_H 3 #define _BCACHEFS_SUPER_TYPES_H 4 5 struct bch_fs; 6 7 struct bch_sb_handle_holder { 8 struct bch_fs *c; 9 }; 10 11 struct bch_sb_handle { 12 struct bch_sb *sb; 13 struct file *s_bdev_file; 14 struct block_device *bdev; 15 char *sb_name; 16 struct bio *bio; 17 struct bch_sb_handle_holder *holder; 18 size_t buffer_size; 19 blk_mode_t mode; 20 unsigned have_layout:1; 21 unsigned have_bio:1; 22 unsigned fs_sb:1; 23 u64 seq; 24 }; 25 26 struct bch_devs_mask { 27 unsigned long d[BITS_TO_LONGS(BCH_SB_MEMBERS_MAX)]; 28 }; 29 30 struct bch_devs_list { 31 u8 nr; 32 u8 data[BCH_BKEY_PTRS_MAX]; 33 }; 34 35 #endif /* _BCACHEFS_SUPER_TYPES_H */ 36