diff options
author | Johan Hovold <johan@kernel.org> | 2021-12-22 11:48:43 +0100 |
---|---|---|
committer | Marc Kleine-Budde <mkl@pengutronix.de> | 2022-01-08 22:46:10 +0100 |
commit | ced4913efb0acc844ed65cc01d091a85d83a2082 (patch) | |
tree | 5f559d4e218c79128616ddd81218cb2257b2faed /drivers/net/can | |
parent | 6dc9a23e29061e50c36523270de60039ccf536fa (diff) | |
download | linux-ced4913efb0acc844ed65cc01d091a85d83a2082.tar.gz linux-ced4913efb0acc844ed65cc01d091a85d83a2082.tar.bz2 linux-ced4913efb0acc844ed65cc01d091a85d83a2082.zip |
can: softing_cs: softingcs_probe(): fix memleak on registration failure
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>
Diffstat (limited to 'drivers/net/can')
-rw-r--r-- | drivers/net/can/softing/softing_cs.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/can/softing/softing_cs.c b/drivers/net/can/softing/softing_cs.c index 2e93ee792373..e5c939b63fa6 100644 --- a/drivers/net/can/softing/softing_cs.c +++ b/drivers/net/can/softing/softing_cs.c @@ -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: |