scftorture: Handle NULL argument passed to scf_add_to_free_list().
authorSebastian Andrzej Siewior <bigeasy@linutronix.de>
Tue, 12 Nov 2024 16:20:23 +0000 (17:20 +0100)
committerPaul E. McKenney <paulmck@kernel.org>
Fri, 15 Nov 2024 00:09:51 +0000 (16:09 -0800)
Dan reported that after the rework the newly introduced
scf_add_to_free_list() may get a NULL pointer passed. This replaced
kfree() which was fine with a NULL pointer but scf_add_to_free_list()
isn't.

Let scf_add_to_free_list() handle NULL pointer.

Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
Closes: https://lore.kernel.org/all/2375aa2c-3248-4ffa-b9b0-f0a24c50f237@stanley.mountain
Fixes: 4788c861ad7e9 ("scftorture: Use a lock-less list to free memory.")
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
kernel/scftorture.c

index eeafd3f..d86d2d9 100644 (file)
@@ -155,6 +155,8 @@ static void scf_add_to_free_list(struct scf_check *scfcp)
        struct llist_head *pool;
        unsigned int cpu;
 
+       if (!scfcp)
+               return;
        cpu = raw_smp_processor_id() % nthreads;
        pool = &per_cpu(scf_free_pool, cpu);
        llist_add(&scfcp->scf_node, pool);