summaryrefslogtreecommitdiff
path: root/kernel/trace/pid_list.c
diff options
context:
space:
mode:
authorKees Cook <kees@kernel.org>2026-02-20 23:49:23 -0800
committerKees Cook <kees@kernel.org>2026-02-21 01:02:28 -0800
commit69050f8d6d075dc01af7a5f2f550a8067510366f (patch)
treebb265f94d9dfa7876c06a5d9f88673d496a15341 /kernel/trace/pid_list.c
parentd39a1d7486d98668dd34aaa6732aad7977c45f5a (diff)
downloadlinux-next-69050f8d6d075dc01af7a5f2f550a8067510366f.tar.gz
linux-next-69050f8d6d075dc01af7a5f2f550a8067510366f.zip
treewide: Replace kmalloc with kmalloc_obj for non-scalar types
This is the result of running the Coccinelle script from scripts/coccinelle/api/kmalloc_objs.cocci. The script is designed to avoid scalar types (which need careful case-by-case checking), and instead replace kmalloc-family calls that allocate struct or union object instances: Single allocations: kmalloc(sizeof(TYPE), ...) are replaced with: kmalloc_obj(TYPE, ...) Array allocations: kmalloc_array(COUNT, sizeof(TYPE), ...) are replaced with: kmalloc_objs(TYPE, COUNT, ...) Flex array allocations: kmalloc(struct_size(PTR, FAM, COUNT), ...) are replaced with: kmalloc_flex(*PTR, FAM, COUNT, ...) (where TYPE may also be *VAR) The resulting allocations no longer return "void *", instead returning "TYPE *". Signed-off-by: Kees Cook <kees@kernel.org>
Diffstat (limited to 'kernel/trace/pid_list.c')
-rw-r--r--kernel/trace/pid_list.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/kernel/trace/pid_list.c b/kernel/trace/pid_list.c
index dbee72d69d0a..6d12855b0277 100644
--- a/kernel/trace/pid_list.c
+++ b/kernel/trace/pid_list.c
@@ -359,7 +359,7 @@ static void pid_list_refill_irq(struct irq_work *iwork)
while (upper_count-- > 0) {
union upper_chunk *chunk;
- chunk = kzalloc(sizeof(*chunk), GFP_NOWAIT);
+ chunk = kzalloc_obj(*chunk, GFP_NOWAIT);
if (!chunk)
break;
*upper_next = chunk;
@@ -370,7 +370,7 @@ static void pid_list_refill_irq(struct irq_work *iwork)
while (lower_count-- > 0) {
union lower_chunk *chunk;
- chunk = kzalloc(sizeof(*chunk), GFP_NOWAIT);
+ chunk = kzalloc_obj(*chunk, GFP_NOWAIT);
if (!chunk)
break;
*lower_next = chunk;
@@ -423,7 +423,7 @@ struct trace_pid_list *trace_pid_list_alloc(void)
/* According to linux/thread.h, pids can be no bigger that 30 bits */
WARN_ON_ONCE(init_pid_ns.pid_max > (1 << 30));
- pid_list = kzalloc(sizeof(*pid_list), GFP_KERNEL);
+ pid_list = kzalloc_obj(*pid_list, GFP_KERNEL);
if (!pid_list)
return NULL;
@@ -435,7 +435,7 @@ struct trace_pid_list *trace_pid_list_alloc(void)
for (i = 0; i < CHUNK_ALLOC; i++) {
union upper_chunk *chunk;
- chunk = kzalloc(sizeof(*chunk), GFP_KERNEL);
+ chunk = kzalloc_obj(*chunk, GFP_KERNEL);
if (!chunk)
break;
chunk->next = pid_list->upper_list;
@@ -446,7 +446,7 @@ struct trace_pid_list *trace_pid_list_alloc(void)
for (i = 0; i < CHUNK_ALLOC; i++) {
union lower_chunk *chunk;
- chunk = kzalloc(sizeof(*chunk), GFP_KERNEL);
+ chunk = kzalloc_obj(*chunk, GFP_KERNEL);
if (!chunk)
break;
chunk->next = pid_list->lower_list;