]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
bcachefs: Use bch2_kvmalloc() for journal keys array
authorKent Overstreet <kent.overstreet@linux.dev>
Tue, 29 Apr 2025 00:28:58 +0000 (20:28 -0400)
committerKent Overstreet <kent.overstreet@linux.dev>
Tue, 29 Apr 2025 02:42:17 +0000 (22:42 -0400)
We can hit this limit fairly easy when we have to reconstuct large
amounts of alloc info on large filesystems.

Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
fs/bcachefs/btree_journal_iter.c

index 7d6c971db23c330003c71072664256b87e7d8577..ade3b5addd7592c557150bad836bc663dacbd974 100644 (file)
@@ -288,7 +288,7 @@ int bch2_journal_key_insert_take(struct bch_fs *c, enum btree_id id,
                        .size                   = max_t(size_t, keys->size, 8) * 2,
                };
 
-               new_keys.data = kvmalloc_array(new_keys.size, sizeof(new_keys.data[0]), GFP_KERNEL);
+               new_keys.data = bch2_kvmalloc(new_keys.size * sizeof(new_keys.data[0]), GFP_KERNEL);
                if (!new_keys.data) {
                        bch_err(c, "%s: error allocating new key array (size %zu)",
                                __func__, new_keys.size);