]> git.hungrycats.org Git - linux/commitdiff
iw_cxgb3: Fix incorrectly returning error on success
authorHariprasad S <hariprasad@chelsio.com>
Fri, 11 Dec 2015 08:29:17 +0000 (13:59 +0530)
committerWilly Tarreau <w@1wt.eu>
Sat, 12 Mar 2016 13:25:48 +0000 (14:25 +0100)
commit 67f1aee6f45059fd6b0f5b0ecb2c97ad0451f6b3 upstream.

The cxgb3_*_send() functions return NET_XMIT_ values, which are
positive integers values. So don't treat positive return values
as an error.

Signed-off-by: Steve Wise <swise@opengridcomputing.com>
Signed-off-by: Hariprasad Shenai <hariprasad@chelsio.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Signed-off-by: Willy Tarreau <w@1wt.eu>
drivers/infiniband/hw/cxgb3/iwch_cm.c

index 148f288c871f8bcee610af676123c26bce245c97..9ddff3d02c5b8336702bf97ff13d2c20a2fe7bb7 100644 (file)
@@ -152,7 +152,7 @@ int iwch_l2t_send(struct t3cdev *tdev, struct sk_buff *skb, struct l2t_entry *l2
        error = l2t_send(tdev, skb, l2e);
        if (error < 0)
                kfree_skb(skb);
-       return error;
+       return error < 0 ? error : 0;
 }
 
 int iwch_cxgb3_ofld_send(struct t3cdev *tdev, struct sk_buff *skb)
@@ -168,7 +168,7 @@ int iwch_cxgb3_ofld_send(struct t3cdev *tdev, struct sk_buff *skb)
        error = cxgb3_ofld_send(tdev, skb);
        if (error < 0)
                kfree_skb(skb);
-       return error;
+       return error < 0 ? error : 0;
 }
 
 static void release_tid(struct t3cdev *tdev, u32 hwtid, struct sk_buff *skb)