Re: [PATCH] ext4: hash: change kzalloc(n * sizeof, ...) to kcalloc(n, sizeof, ...)
From: Andreas Dilger
Date: Sun Mar 16 2025 - 01:27:24 EST
On Mar 15, 2025, at 9:28 PM, Matthew Wilcox <willy@xxxxxxxxxxxxx> wrote:
>
> On Sat, Mar 15, 2025 at 12:29:34PM -0400, Ethan Carter Edwards wrote:
>> Open coded arithmetic in allocator arguments is discouraged. Helper
>> functions like kcalloc are preferred.
>
> Well, yes, but ...
>
>> +++ b/fs/ext4/hash.c
>> @@ -302,7 +302,7 @@ int ext4fs_dirhash(const struct inode *dir, const char *name, int len,
>>
>> if (len && IS_CASEFOLDED(dir) &&
>> (!IS_ENCRYPTED(dir) || fscrypt_has_encryption_key(dir))) {
>> - buff = kzalloc(sizeof(char) * PATH_MAX, GFP_KERNEL);
>> + buff = kcalloc(PATH_MAX, sizeof(char), GFP_KERNEL);
>
> sizeof(char) is defined to be 1. So this should just be
> kzalloc(PATH_MAX, GFP_KERNEL).
I was going to say exactly the same thing.
Passing "1" to kcalloc() is just pure overhead.
Cheers, Andreas
Attachment:
signature.asc
Description: Message signed with OpenPGP