|  | /* 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			offset; | 
|  |  | 
|  | u16			nonce; | 
|  |  | 
|  | struct bch_csum		csum; | 
|  | }; | 
|  |  | 
|  | 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 */ |