diff options
author | Kent Overstreet <kent.overstreet@gmail.com> | 2019-08-29 13:29:31 -0400 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@gmail.com> | 2019-08-29 13:29:31 -0400 |
commit | fee79cd6543ed687efe86458e3c4479eff818488 (patch) | |
tree | d9d5c73e00a185bda57a6bf6eedd84a751c10677 | |
parent | 0d627739e94c55ef19b6b6b9760133f7cf289f67 (diff) |
bcachefs: Fix BTREE_INSERT_NOMARK_OVERWRITES
bch2_mark_update() was correct, but bch2_trans_mark_update() wasn't
respecting BTREE_INSERT_NOMARK_OVERWRITES - key marking/triggers really
need to be cleaned up.
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
-rw-r--r-- | fs/bcachefs/buckets.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/bcachefs/buckets.c b/fs/bcachefs/buckets.c index 247d0263f7e2..1516df224d7d 100644 --- a/fs/bcachefs/buckets.c +++ b/fs/bcachefs/buckets.c @@ -1762,6 +1762,9 @@ int bch2_trans_mark_update(struct btree_trans *trans, if (ret) return ret; + if (unlikely(trans->flags & BTREE_INSERT_NOMARK_OVERWRITES)) + return 0; + while ((_k = bch2_btree_node_iter_peek_filter(&node_iter, b, KEY_TYPE_discard))) { struct bkey unpacked; |