]> www.infradead.org Git - users/willy/pagecache.git/commitdiff
wifi: cw1200: Fix potential NULL dereference
authorLinus Walleij <linus.walleij@linaro.org>
Tue, 17 Dec 2024 12:55:48 +0000 (13:55 +0100)
committerKalle Valo <kvalo@kernel.org>
Wed, 18 Dec 2024 17:58:27 +0000 (19:58 +0200)
A recent refactoring was identified by smatch to cause another potential NULL
dereference:

drivers/net/wireless/st/cw1200/cw1200_spi.c:440 cw1200_spi_disconnect() error: we previously assumed 'self' could be null (see line 433)

Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
Closes: https://lore.kernel.org/r/202411271742.Xa7CNVh1-lkp@intel.com/
Fixes: 2719a9e7156c ("wifi: cw1200: Convert to GPIO descriptors")
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Kalle Valo <kvalo@kernel.org>
Link: https://patch.msgid.link/20241217-cw1200-fix-v1-1-911e6b5823ec@linaro.org
drivers/net/wireless/st/cw1200/cw1200_spi.c

index 862964a8cc8761bb412b15addef562d61811440b..52386dfb5f4aa9c1f3e12e2a4002241d9ece72ee 100644 (file)
@@ -442,8 +442,8 @@ static void cw1200_spi_disconnect(struct spi_device *func)
                        cw1200_core_release(self->core);
                        self->core = NULL;
                }
+               cw1200_spi_off(self, dev_get_platdata(&func->dev));
        }
-       cw1200_spi_off(self, dev_get_platdata(&func->dev));
 }
 
 static int __maybe_unused cw1200_spi_suspend(struct device *dev)