gpio: it87: Remove const from labels_table allocation type

In preparation for converting the kmalloc family of allocators to the
type-aware kmalloc_obj family, we need to make sure that the returned
type from the allocation matches the type of the variable being
assigned. (The kmalloc family returns "void *", which can be implicitly
cast to any pointer type.)

The assigned type is "char **", but the converted allocation type would
be "const char **", which is const qualified. As there is no general way
to remove 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/gpio/gpio-it87.o

Assisted-by: LLM coccinelle
Signed-off-by: Kees Cook <kees+treewide@kernel.org>
Link: https://patch.msgid.link/20260917211125.i.966-kees@kernel.org
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>
This commit is contained in:
Kees Cook 2026-09-17 14:11:26 -07:00 committed by Bartosz Golaszewski
parent 79ec1b1b33
commit 24715edd98

View File

@ -362,7 +362,7 @@ static int __init it87_gpio_init(void)
*/
labels = kcalloc(it87_gpio->chip.ngpio, sizeof("it87_gpXY"),
GFP_KERNEL);
labels_table = kcalloc(it87_gpio->chip.ngpio, sizeof(const char *),
labels_table = kcalloc(it87_gpio->chip.ngpio, sizeof(*labels_table),
GFP_KERNEL);
if (!labels || !labels_table) {