X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libbcachefs%2Fextents_types.h;h=43d6c341eccabb86be8c5395fef5b558bb52004a;hb=3a0cc86e767b95366b9cbdba7a1453454f1b5a41;hp=76139f931fe04e50a51ce314147696424d1d0220;hpb=018de5aa899937a9dc3bc8cb9819cb218a59abf3;p=bcachefs-tools-debian diff --git a/libbcachefs/extents_types.h b/libbcachefs/extents_types.h index 76139f9..43d6c34 100644 --- a/libbcachefs/extents_types.h +++ b/libbcachefs/extents_types.h @@ -1,26 +1,40 @@ +/* SPDX-License-Identifier: GPL-2.0 */ #ifndef _BCACHEFS_EXTENTS_TYPES_H #define _BCACHEFS_EXTENTS_TYPES_H #include "bcachefs_format.h" struct bch_extent_crc_unpacked { + u32 compressed_size; + u32 uncompressed_size; + u32 live_size; + u8 csum_type; u8 compression_type; - u16 compressed_size; - u16 uncompressed_size; - u16 offset; - u16 live_size; u16 nonce; struct bch_csum csum; }; -struct extent_pick_ptr { - struct bch_extent_ptr ptr; +struct extent_ptr_decoded { + unsigned idx; + bool has_ec; struct bch_extent_crc_unpacked crc; + struct bch_extent_ptr ptr; + struct bch_extent_stripe_ptr ec; +}; + +struct bch_io_failures { + u8 nr; + struct bch_dev_io_failures { + u8 dev; + u8 idx; + u8 nr_failed; + u8 nr_retries; + } devs[BCH_REPLICAS_MAX]; }; #endif /* _BCACHEFS_EXTENTS_TYPES_H */