From: Kees Cook <kees@kernel.org>
To: Srinivas Kandagatla <srini@kernel.org>
Cc: linux-kernel@vger.kernel.org, linux-hardening@vger.kernel.org
Subject: Re: [PATCH] nvmem: core: Add const to pattrs allocation type
Date: Thu, 17 Sep 2026 15:47:33 -0700 [thread overview]
Message-ID: <202609171545.A37F12B74F@keescook> (raw)
In-Reply-To: <37f07dcb-9b4a-4767-8d0c-471148729c20@kernel.org>
On Thu, Sep 17, 2026 at 10:32:15PM +0100, Srinivas Kandagatla wrote:
>
>
> On 9/17/26 10:14 PM, Kees Cook wrote:
> > From: Kees Cook <kees+treewide@kernel.org>
> >
> > In preparation for making the devm_kmalloc family of allocators type
> > aware, we need to make sure that the returned type from the allocation
> > matches the type of the variable being assigned. (Before, the allocator
> > would always return "void *", which can be implicitly cast to any
> > pointer type.)
> >
> > The assigned type is "const struct bin_attribute **", but the converted
> > allocation type would be "struct bin_attribute **", which is the same
> > type without the const qualifier. As there is no general way to safely
> > add const qualifiers, take the size from the assignment target instead.
> > No change in allocation size results.
> >
> > Build tested ARCH=x86_64 allmodconfig with GCC 16.2.0:
> > drivers/nvmem/core.o
> >
> > Assisted-by: LLM coccinelle
> > Signed-off-by: Kees Cook <kees+treewide@kernel.org>
> > ---
> > Cc: Srinivas Kandagatla <srini@kernel.org>
> > ---
> > drivers/nvmem/core.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/nvmem/core.c b/drivers/nvmem/core.c
> > index 0556d140170a..19edc9ab0282 100644
> > --- a/drivers/nvmem/core.c
> > +++ b/drivers/nvmem/core.c
> > @@ -485,7 +485,7 @@ static int nvmem_populate_sysfs_cells(struct nvmem_device *nvmem)
> > /* Allocate an array of attributes with a sentinel */
> > ncells = list_count_nodes(&nvmem->cells);
> > pattrs = devm_kcalloc(&nvmem->dev, ncells + 1,
> > - sizeof(struct bin_attribute *), GFP_KERNEL);
> > + sizeof(*pattrs), GFP_KERNEL);
>
> Thanks for the patch, while you are at it, there are few more instances
> just below this.
There are, but there were no type mismatches with those. pattrs is const,
but attrs and attrs[i].attr.name aren't, so no change is needed there.
Do you want me to flip the attrs devm_kcalloc sizeof to *attrs to much
style, though?
-Kees
--
Kees Cook
prev parent reply other threads:[~2026-09-17 22:47 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-17 21:14 Kees Cook
2026-09-17 21:32 ` Srinivas Kandagatla
2026-09-17 22:47 ` Kees Cook [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202609171545.A37F12B74F@keescook \
--to=kees@kernel.org \
--cc=linux-hardening@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=srini@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®