diff options
author | Kent Overstreet <kent.overstreet@linux.dev> | 2023-03-13 21:58:14 -0400 |
---|---|---|
committer | Kent Overstreet <kent.overstreet@linux.dev> | 2023-10-22 17:09:57 -0400 |
commit | 3997989ae1541dea4bb144bd2bf8b7dc6cae743f (patch) | |
tree | da9cacd30a9d176d6c22e91d0225952df2efa7ad /fs | |
parent | aebe7a679cbdd827769e85f632562a66d2a2b9f3 (diff) | |
download | lwn-3997989ae1541dea4bb144bd2bf8b7dc6cae743f.tar.gz lwn-3997989ae1541dea4bb144bd2bf8b7dc6cae743f.zip |
bcachefs: Don't use BTREE_ITER_INTENT in make_extent_indirect()
This is a workaround for a btree path overflow - searching with
BTREE_ITER_INTENT periodically saves the iterator position for updates,
which eventually overflows.
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/bcachefs/reflink.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/bcachefs/reflink.c b/fs/bcachefs/reflink.c index d2e6adc13fb1..d8426e754cdf 100644 --- a/fs/bcachefs/reflink.c +++ b/fs/bcachefs/reflink.c @@ -189,7 +189,7 @@ static int bch2_make_extent_indirect(struct btree_trans *trans, for_each_btree_key_norestart(trans, reflink_iter, BTREE_ID_reflink, POS(0, c->reflink_hint), - BTREE_ITER_INTENT|BTREE_ITER_SLOTS, k, ret) { + BTREE_ITER_SLOTS, k, ret) { if (reflink_iter.pos.inode) { bch2_btree_iter_set_pos(&reflink_iter, POS_MIN); continue; |