Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

at v6.10 41 lines 803 B view raw
1/* SPDX-License-Identifier: GPL-2.0 */ 2#ifndef _BCACHEFS_EC_TYPES_H 3#define _BCACHEFS_EC_TYPES_H 4 5#include "bcachefs_format.h" 6 7struct bch_replicas_padded { 8 struct bch_replicas_entry_v1 e; 9 u8 pad[BCH_BKEY_PTRS_MAX]; 10}; 11 12struct stripe { 13 size_t heap_idx; 14 u16 sectors; 15 u8 algorithm; 16 u8 nr_blocks; 17 u8 nr_redundant; 18 u8 blocks_nonempty; 19}; 20 21struct gc_stripe { 22 u16 sectors; 23 24 u8 nr_blocks; 25 u8 nr_redundant; 26 27 unsigned alive:1; /* does a corresponding key exist in stripes btree? */ 28 u16 block_sectors[BCH_BKEY_PTRS_MAX]; 29 struct bch_extent_ptr ptrs[BCH_BKEY_PTRS_MAX]; 30 31 struct bch_replicas_padded r; 32}; 33 34struct ec_stripe_heap_entry { 35 size_t idx; 36 unsigned blocks_nonempty; 37}; 38 39typedef HEAP(struct ec_stripe_heap_entry) ec_stripes_heap; 40 41#endif /* _BCACHEFS_EC_TYPES_H */