]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
usb: host: max3421-hcd: Fix error pointer dereference in probe cleanup
authorDan Carpenter <dan.carpenter@linaro.org>
Thu, 7 Aug 2025 15:55:00 +0000 (18:55 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 13 Aug 2025 14:55:48 +0000 (16:55 +0200)
The kthread_run() function returns error pointers so the
max3421_hcd->spi_thread pointer can be either error pointers or NULL.
Check for both before dereferencing it.

Fixes: 05dfa5c9bc37 ("usb: host: max3421-hcd: fix "spi_rd8" uses dynamic stack allocation warning")
Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
Link: https://lore.kernel.org/r/aJTMVAPtRe5H6jug@stanley.mountain
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/host/max3421-hcd.c

index dcf31a592f5d11eb4b41fe038e42fdf3031df939..4b5f03f683f775e6ddda7718ef8729b424823a73 100644 (file)
@@ -1916,7 +1916,7 @@ error:
        if (hcd) {
                kfree(max3421_hcd->tx);
                kfree(max3421_hcd->rx);
-               if (max3421_hcd->spi_thread)
+               if (!IS_ERR_OR_NULL(max3421_hcd->spi_thread))
                        kthread_stop(max3421_hcd->spi_thread);
                usb_put_hcd(hcd);
        }