mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/
synced 2025-04-19 20:58:31 +09:00
bcachefs: Document issue with bch_stripe layout
We've got a problem with bch_stripe that is going to take an on disk format rev to fix - we can't access the block sector counts if the checksum type is unknown. Document it for now, there are a few other things to fix as well. Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
This commit is contained in:
parent
78423deb51
commit
a4e11cea27
@ -20,6 +20,23 @@ struct bch_stripe {
|
||||
*/
|
||||
__u8 disk_label;
|
||||
|
||||
/*
|
||||
* Variable length sections:
|
||||
* - Pointers
|
||||
* - Checksums
|
||||
* 2D array of [stripe block/device][csum block], with checksum block
|
||||
* size given by csum_granularity_bits
|
||||
* - Block sector counts: per-block array of u16s
|
||||
*
|
||||
* XXX:
|
||||
* Either checksums should have come last, or we should have included a
|
||||
* checksum_size field (the size in bytes of the checksum itself, not
|
||||
* the blocksize the checksum covers).
|
||||
*
|
||||
* Currently we aren't able to access the block sector counts if the
|
||||
* checksum type is unknown.
|
||||
*/
|
||||
|
||||
struct bch_extent_ptr ptrs[];
|
||||
} __packed __aligned(8);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user