From f2e8c69fcb63d280d1013b84973889e3aecd6603 Mon Sep 17 00:00:00 2001 From: Kent Overstreet Date: Sun, 5 Jan 2020 18:20:23 -0500 Subject: [PATCH] bcachefs: Don't lose needs_whiteout in overwrite path Signed-off-by: Kent Overstreet Signed-off-by: Kent Overstreet --- fs/bcachefs/btree_update_leaf.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/fs/bcachefs/btree_update_leaf.c b/fs/bcachefs/btree_update_leaf.c index 9ad2e3e90d5b..3dc6b35b2e6a 100644 --- a/fs/bcachefs/btree_update_leaf.c +++ b/fs/bcachefs/btree_update_leaf.c @@ -99,13 +99,14 @@ bool bch2_btree_bset_insert_key(struct btree_iter *iter, } + insert->k.needs_whiteout = k->needs_whiteout; + k->needs_whiteout = false; + if (k >= btree_bset_last(b)->start) { clobber_u64s = k->u64s; goto overwrite; } - insert->k.needs_whiteout = k->needs_whiteout; - k->needs_whiteout = false; k->type = KEY_TYPE_deleted; /* * XXX: we should be able to do this without two calls to