From: Steve Wise Date: Mon, 5 Apr 2010 19:59:57 +0000 (+0000) Subject: RDMA/cxgb3: Don't free skbs on NET_XMIT_* indications from LLD X-Git-Tag: v2.6.35-rc1~487^2^4~1 X-Git-Url: http://bbs.cooldavid.org/git/?a=commitdiff_plain;h=73a203d2014f50d874b9e40083ad481ca70408e8;p=net-next-2.6.git RDMA/cxgb3: Don't free skbs on NET_XMIT_* indications from LLD The low level cxgb3 driver can return NET_XMIT_CN and friends. The iw_cxgb3 driver should _not_ treat these as errors. Signed-off-by: Steve Wise Signed-off-by: Roland Dreier --- diff --git a/drivers/infiniband/hw/cxgb3/iwch_cm.c b/drivers/infiniband/hw/cxgb3/iwch_cm.c index 4fef0329627..cfd6db019f1 100644 --- a/drivers/infiniband/hw/cxgb3/iwch_cm.c +++ b/drivers/infiniband/hw/cxgb3/iwch_cm.c @@ -151,7 +151,7 @@ int iwch_l2t_send(struct t3cdev *tdev, struct sk_buff *skb, struct l2t_entry *l2 return -EIO; } error = l2t_send(tdev, skb, l2e); - if (error) + if (error < 0) kfree_skb(skb); return error; } @@ -167,7 +167,7 @@ int iwch_cxgb3_ofld_send(struct t3cdev *tdev, struct sk_buff *skb) return -EIO; } error = cxgb3_ofld_send(tdev, skb); - if (error) + if (error < 0) kfree_skb(skb); return error; }