drivers/pcmcia/m32r_pcc.c: check return from add_pcc_socket
authorSudip Mukherjee <sudipm.mukherjee@gmail.com>
Tue, 13 Dec 2016 00:41:05 +0000 (16:41 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 13 Dec 2016 02:55:06 +0000 (18:55 -0800)
If request_irq() fails it passes the error to the caller.  The caller
now checks it and jumps to the common error path on failure.

Link: http://lkml.kernel.org/r/1474237304-897-3-git-send-email-sudipm.mukherjee@gmail.com
Signed-off-by: Sudip Mukherjee <sudip.mukherjee@codethink.co.uk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
drivers/pcmcia/m32r_pcc.c

index 56bf38804e93cffe0ca53557c1637d6dbe91fb5c..e50bbf8261885dcd123389f63377b1a7270b609b 100644 (file)
@@ -696,10 +696,16 @@ static int __init init_m32r_pcc(void)
 
        pcc_sockets = 0;
 
-       add_pcc_socket(M32R_PCC0_BASE, PCC0_IRQ, M32R_PCC0_MAPBASE, 0x1000);
+       ret = add_pcc_socket(M32R_PCC0_BASE, PCC0_IRQ, M32R_PCC0_MAPBASE,
+                            0x1000);
+       if (ret)
+               goto unreg_dev;
 
 #ifdef CONFIG_M32RPCC_SLOT2
-       add_pcc_socket(M32R_PCC1_BASE, PCC1_IRQ, M32R_PCC1_MAPBASE, 0x2000);
+       ret = add_pcc_socket(M32R_PCC1_BASE, PCC1_IRQ, M32R_PCC1_MAPBASE,
+                            0x2000);
+       if (ret)
+               goto unreg_dev;
 #endif
 
        if (pcc_sockets == 0) {