can: softing_cs: softingcs_probe(): fix memleak on registration failure
authorJohan Hovold <johan@kernel.org>
Wed, 22 Dec 2021 10:48:43 +0000 (11:48 +0100)
committerMarc Kleine-Budde <mkl@pengutronix.de>
Sat, 8 Jan 2022 21:46:10 +0000 (22:46 +0100)
In case device registration fails during probe, the driver state and
the embedded platform device structure needs to be freed using
platform_device_put() to properly free all resources (e.g. the device
name).

Fixes: 0a0b7a5f7a04 ("can: add driver for Softing card")
Link: https://lore.kernel.org/all/20211222104843.6105-1-johan@kernel.org
Cc: stable@vger.kernel.org # 2.6.38
Signed-off-by: Johan Hovold <johan@kernel.org>
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
drivers/net/can/softing/softing_cs.c

index 2e93ee7..e5c939b 100644 (file)
@@ -293,7 +293,7 @@ static int softingcs_probe(struct pcmcia_device *pcmcia)
        return 0;
 
 platform_failed:
-       kfree(dev);
+       platform_device_put(pdev);
 mem_failed:
 pcmcia_bad:
 pcmcia_failed: