diff options
author | Kent Overstreet <kent.overstreet@gmail.com> | 2022-03-18 04:35:51 +0300 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@linux.dev> | 2023-10-23 00:09:28 +0300 |
commit | 3a306f3c2c303febffefea4caf09b2326107507a (patch) | |
tree | 7b8c5fdb8a809a2c57733893b46c2c5a55a7ac3b /fs/bcachefs/btree_types.h | |
parent | f8494d253534d3c49e80a483b74469bbeb01367f (diff) | |
download | linux-3a306f3c2c303febffefea4caf09b2326107507a.tar.xz |
bcachefs: Fix large key cache keys
Previously, we'd go into an infinite loop when attempting to cache a
bkey in the key cache larger than 128 u64s - since we were only using a
u8 for the size field, it'd get rounded up to 256 then truncated to 0.
Oops.
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
Diffstat (limited to 'fs/bcachefs/btree_types.h')
-rw-r--r-- | fs/bcachefs/btree_types.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/bcachefs/btree_types.h b/fs/bcachefs/btree_types.h index 51eb686331bf..a8b08955cedc 100644 --- a/fs/bcachefs/btree_types.h +++ b/fs/bcachefs/btree_types.h @@ -323,7 +323,7 @@ struct bkey_cached { struct btree_bkey_cached_common c; unsigned long flags; - u8 u64s; + u16 u64s; bool valid; u32 btree_trans_barrier_seq; struct bkey_cached_key key; |