1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef _BCACHEFS_EC_TYPES_H
3 #define _BCACHEFS_EC_TYPES_H
5 #include "bcachefs_format.h"
7 struct bch_replicas_padded {
8 struct bch_replicas_entry_v1 e;
9 u8 pad[BCH_BKEY_PTRS_MAX];
28 unsigned alive:1; /* does a corresponding key exist in stripes btree? */
29 u16 block_sectors[BCH_BKEY_PTRS_MAX];
30 struct bch_extent_ptr ptrs[BCH_BKEY_PTRS_MAX];
32 struct bch_replicas_padded r;
35 struct ec_stripe_heap_entry {
37 unsigned blocks_nonempty;
40 typedef DEFINE_MIN_HEAP(struct ec_stripe_heap_entry, ec_stripes_heap) ec_stripes_heap;
42 #endif /* _BCACHEFS_EC_TYPES_H */