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 */