summaryrefslogtreecommitdiffstats
path: root/fs/bcachefs/btree_locking.h
diff options
context:
space:
mode:
authorKent Overstreet <kent.overstreet@linux.dev>2023-09-09 21:14:54 -0400
committerKent Overstreet <kent.overstreet@linux.dev>2023-10-22 17:10:12 -0400
commit5b7fbdcd5b04b618178d6339e36435997ef6b086 (patch)
tree6873edae81c0342a0c5eb6d51eee3a4cf19f486b /fs/bcachefs/btree_locking.h
parent5cfd69775eb5460ef78bb5034a37eb0dc52ab65d (diff)
downloadlinux-5b7fbdcd5b04b618178d6339e36435997ef6b086.tar.gz
linux-5b7fbdcd5b04b618178d6339e36435997ef6b086.tar.bz2
linux-5b7fbdcd5b04b618178d6339e36435997ef6b086.zip
bcachefs: Fix silent enum conversion error
This changes mark_btree_node_locked() to take an enum btree_node_locked_type, not a six_lock_type, since BTREE_NODE_UNLOCKED is -1 which may cause problems converting back and forth to six_lock_type if short enums are in use. With this change, we never store BTREE_NODE_UNLOCKED in a six_lock_type enum. Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
Diffstat (limited to 'fs/bcachefs/btree_locking.h')
-rw-r--r--fs/bcachefs/btree_locking.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/bcachefs/btree_locking.h b/fs/bcachefs/btree_locking.h
index 22e2cd3914a5..6231e9ffc5d7 100644
--- a/fs/bcachefs/btree_locking.h
+++ b/fs/bcachefs/btree_locking.h
@@ -91,7 +91,7 @@ static inline void mark_btree_node_unlocked(struct btree_path *path,
static inline void mark_btree_node_locked(struct btree_trans *trans,
struct btree_path *path,
unsigned level,
- enum six_lock_type type)
+ enum btree_node_locked_type type)
{
mark_btree_node_locked_noreset(path, level, (enum btree_node_locked_type) type);
#ifdef CONFIG_BCACHEFS_LOCK_TIME_STATS