This is a note to let you know that I've just added the patch titled can: flexcan: flexcan_open(): fix error path if flexcan_chip_start() fails to the 3.4-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary The filename of the patch is: can-flexcan-flexcan_open-fix-error-path-if-flexcan_chip_start-fails.patch and it can be found in the queue-3.4 subdirectory. If you, or anyone else, feels it should not be added to the stable tree, please let <stable@xxxxxxxxxxxxxxx> know about it. >From 7e9e148af01ef388efb6e2490805970be4622792 Mon Sep 17 00:00:00 2001 From: Marc Kleine-Budde <mkl@xxxxxxxxxxxxxx> Date: Fri, 28 Feb 2014 14:52:01 +0100 Subject: can: flexcan: flexcan_open(): fix error path if flexcan_chip_start() fails From: Marc Kleine-Budde <mkl@xxxxxxxxxxxxxx> commit 7e9e148af01ef388efb6e2490805970be4622792 upstream. If flexcan_chip_start() in flexcan_open() fails, the interrupt is not freed, this patch adds the missing cleanup. Signed-off-by: Marc Kleine-Budde <mkl@xxxxxxxxxxxxxx> Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> --- drivers/net/can/flexcan.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) --- a/drivers/net/can/flexcan.c +++ b/drivers/net/can/flexcan.c @@ -805,7 +805,7 @@ static int flexcan_open(struct net_devic err = request_irq(dev->irq, flexcan_irq, IRQF_SHARED, dev->name, dev); if (err) - goto out_close; + goto out_free_irq; /* start chip and queuing */ err = flexcan_chip_start(dev); @@ -816,6 +816,8 @@ static int flexcan_open(struct net_devic return 0; + out_free_irq: + free_irq(dev->irq, dev); out_close: close_candev(dev); out: Patches currently in stable-queue which might be from mkl@xxxxxxxxxxxxxx are queue-3.4/can-flexcan-flexcan_open-fix-error-path-if-flexcan_chip_start-fails.patch -- To unsubscribe from this list: send the line "unsubscribe stable" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html