[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <55E18A5B-49D0-4E8D-A252-DC7EF0BA691D@dilger.ca>
Date: Sat, 15 Mar 2025 23:27:02 -0600
From: Andreas Dilger <adilger@...ger.ca>
To: Matthew Wilcox <willy@...radead.org>
Cc: Ethan Carter Edwards <ethan@...ancedwards.com>,
Theodore Ts'o <tytso@....edu>,
Ext4 Developers List <linux-ext4@...r.kernel.org>,
LKML <linux-kernel@...r.kernel.org>,
linux-fsdevel <linux-fsdevel@...r.kernel.org>,
linux-hardening@...r.kernel.org
Subject: Re: [PATCH] ext4: hash: change kzalloc(n * sizeof, ...) to kcalloc(n,
sizeof, ...)
On Mar 15, 2025, at 9:28 PM, Matthew Wilcox <willy@...radead.org> 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
Download attachment "signature.asc" of type "application/pgp-signature" (874 bytes)
Powered by blists - more mailing lists