tty: ipwireless: fix error handling
authorTong Zhang <ztong0001@gmail.com>
Fri, 21 Aug 2020 16:19:40 +0000 (12:19 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 4 Sep 2020 16:08:16 +0000 (18:08 +0200)
ipwireless_send_packet() can only return 0 on success and -ENOMEM on
error, the caller should check non zero for error condition

Signed-off-by: Tong Zhang <ztong0001@gmail.com>
Acked-by: David Sterba <dsterba@suse.com>
Link: https://lore.kernel.org/r/20200821161942.36589-1-ztong0001@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/ipwireless/network.c
drivers/tty/ipwireless/tty.c

index cf20616340a1a859fb737a8a798e4011cd04caa8..fe569f6294a240d1455ccbefaffd2c8cb188f888 100644 (file)
@@ -117,7 +117,7 @@ static int ipwireless_ppp_start_xmit(struct ppp_channel *ppp_channel,
                                               skb->len,
                                               notify_packet_sent,
                                               network);
-                       if (ret == -1) {
+                       if (ret < 0) {
                                skb_pull(skb, 2);
                                return 0;
                        }
@@ -134,7 +134,7 @@ static int ipwireless_ppp_start_xmit(struct ppp_channel *ppp_channel,
                                               notify_packet_sent,
                                               network);
                        kfree(buf);
-                       if (ret == -1)
+                       if (ret < 0)
                                return 0;
                }
                kfree_skb(skb);
index fad3401e604d9bd8196f743160776360408433da..23584769fc2920b5ecd53efe9069cfcd67dbac6d 100644 (file)
@@ -218,7 +218,7 @@ static int ipw_write(struct tty_struct *linux_tty,
        ret = ipwireless_send_packet(tty->hardware, IPW_CHANNEL_RAS,
                               buf, count,
                               ipw_write_packet_sent_callback, tty);
-       if (ret == -1) {
+       if (ret < 0) {
                mutex_unlock(&tty->ipw_tty_mutex);
                return 0;
        }