diff options
| author | Kent Overstreet <kent.overstreet@linux.dev> | 2024-11-28 19:30:23 -0500 |
|---|---|---|
| committer | Kent Overstreet <kent.overstreet@linux.dev> | 2024-12-21 01:36:21 -0500 |
| commit | 2cd85fea49d850629404d4668e104466114598e3 (patch) | |
| tree | 21f97c57083708c4af7ea6b3a44dcff0d364d373 /fs/bcachefs/alloc_foreground.c | |
| parent | bcachefs: Check for extent crc uncompressed/compressed size mismatch (diff) | |
| download | linux-2cd85fea49d850629404d4668e104466114598e3.tar.gz linux-2cd85fea49d850629404d4668e104466114598e3.zip | |
bcachefs: Don't recurse in check_discard_freespace_key
When calling check_discard_freeespace_key from the allocator, we can't
repair without recursing - run it asynchronously instead.
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
Diffstat (limited to 'fs/bcachefs/alloc_foreground.c')
| -rw-r--r-- | fs/bcachefs/alloc_foreground.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/bcachefs/alloc_foreground.c b/fs/bcachefs/alloc_foreground.c index 4d1ff7f1f302..c40a76df76b8 100644 --- a/fs/bcachefs/alloc_foreground.c +++ b/fs/bcachefs/alloc_foreground.c @@ -281,7 +281,7 @@ static struct open_bucket *try_alloc_bucket(struct btree_trans *trans, struct bc u64 b = freespace_iter->pos.offset & ~(~0ULL << 56); u8 gen; - int ret = bch2_check_discard_freespace_key(trans, freespace_iter, &gen); + int ret = bch2_check_discard_freespace_key(trans, freespace_iter, &gen, true); if (ret < 0) return ERR_PTR(ret); if (ret) |
