Add a test for successful call to cdev_alloc() to avoid
potential null dereference. Issue reported by smatch.

Signed-off-by: Michael Straube <straube.li...@gmail.com>
---
 drivers/staging/pi433/pi433_if.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/staging/pi433/pi433_if.c b/drivers/staging/pi433/pi433_if.c
index 786478671190..d72de2105053 100644
--- a/drivers/staging/pi433/pi433_if.c
+++ b/drivers/staging/pi433/pi433_if.c
@@ -1245,6 +1245,10 @@ static int pi433_probe(struct spi_device *spi)
 
        /* create cdev */
        device->cdev = cdev_alloc();
+       if (!device->cdev) {
+               dev_dbg(device->dev, "allocation of cdev failed");
+               goto cdev_failed;
+       }
        device->cdev->owner = THIS_MODULE;
        cdev_init(device->cdev, &pi433_fops);
        retval = cdev_add(device->cdev, device->devt, 1);
-- 
2.19.2

Reply via email to