diff options
author | Kent Overstreet <kent.overstreet@linux.dev> | 2024-04-11 23:37:24 -0400 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@linux.dev> | 2024-04-13 22:48:16 -0400 |
commit | 2aeed876d7c2c2fb4c6b92f59bdf7e73cfe5e098 (patch) | |
tree | 45bbafdac12ac5b3649f37caa67c1ddbc02a446f /fs/bcachefs/ec.h | |
parent | dc32c118ec6b1032693c489a0aa9e011f0acdb1a (diff) | |
download | linux-2aeed876d7c2c2fb4c6b92f59bdf7e73cfe5e098.tar.gz linux-2aeed876d7c2c2fb4c6b92f59bdf7e73cfe5e098.tar.bz2 linux-2aeed876d7c2c2fb4c6b92f59bdf7e73cfe5e098.zip |
bcachefs: fix unsafety in bch2_stripe_to_text()
.to_text() functions need to work on key values that didn't pass .valid
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
Diffstat (limited to 'fs/bcachefs/ec.h')
-rw-r--r-- | fs/bcachefs/ec.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/bcachefs/ec.h b/fs/bcachefs/ec.h index f4369b02e805..f042616888b0 100644 --- a/fs/bcachefs/ec.h +++ b/fs/bcachefs/ec.h @@ -32,6 +32,8 @@ static inline unsigned stripe_csums_per_device(const struct bch_stripe *s) static inline unsigned stripe_csum_offset(const struct bch_stripe *s, unsigned dev, unsigned csum_idx) { + EBUG_ON(s->csum_type >= BCH_CSUM_NR); + unsigned csum_bytes = bch_crc_bytes[s->csum_type]; return sizeof(struct bch_stripe) + |