]> git.hungrycats.org Git - linux/commitdiff
drivers/tty: add error handling for pcmcia_loop_config
authorZhouyang Jia <jiazhouyang09@gmail.com>
Tue, 12 Jun 2018 04:36:25 +0000 (12:36 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 13 Oct 2018 07:09:26 +0000 (09:09 +0200)
[ Upstream commit 85c634e919bd6ef17427f26a52920aeba12e16ee ]

When pcmcia_loop_config fails, the lack of error-handling code may
cause unexpected results.

This patch adds error-handling code after calling pcmcia_loop_config.

Signed-off-by: Zhouyang Jia <jiazhouyang09@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/8250/serial_cs.c

index 4d180c9423effe3994f2226bbfc7325829cf2156..1a14948c86d6eb32c6c1fb299a0d07c48745a1dc 100644 (file)
@@ -629,8 +629,10 @@ static int serial_config(struct pcmcia_device * link)
            (link->has_func_id) &&
            (link->socket->pcmcia_pfc == 0) &&
            ((link->func_id == CISTPL_FUNCID_MULTI) ||
-            (link->func_id == CISTPL_FUNCID_SERIAL)))
-               pcmcia_loop_config(link, serial_check_for_multi, info);
+            (link->func_id == CISTPL_FUNCID_SERIAL))) {
+               if (pcmcia_loop_config(link, serial_check_for_multi, info))
+                       goto failed;
+       }
 
        /*
         * Apply any multi-port quirk.