aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/infiniband/hw/cxgb4/cm.c
diff options
context:
space:
mode:
authorSteve Wise <swise@opengridcomputing.com>2014-03-21 20:40:36 +0530
committerRoland Dreier <roland@purestorage.com>2014-04-02 08:53:53 -0700
commit977116c69862a6062f302395cb3546544d7e1bc1 (patch)
tree18febbdec097c914de5c8bda301cab0ebca36cfd /drivers/infiniband/hw/cxgb4/cm.c
parentRDMA/cxgb4: Lock around accept/reject downcalls (diff)
downloadlinux-dev-977116c69862a6062f302395cb3546544d7e1bc1.tar.xz
linux-dev-977116c69862a6062f302395cb3546544d7e1bc1.zip
RDMA/cxgb4: Drop RX_DATA packets if the endpoint is gone
Signed-off-by: Steve Wise <swise@opengridcomputing.com> Signed-off-by: Roland Dreier <roland@purestorage.com>
Diffstat (limited to 'drivers/infiniband/hw/cxgb4/cm.c')
-rw-r--r--drivers/infiniband/hw/cxgb4/cm.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/infiniband/hw/cxgb4/cm.c b/drivers/infiniband/hw/cxgb4/cm.c
index 6836d114d75a..8a645d872483 100644
--- a/drivers/infiniband/hw/cxgb4/cm.c
+++ b/drivers/infiniband/hw/cxgb4/cm.c
@@ -1521,6 +1521,8 @@ static int rx_data(struct c4iw_dev *dev, struct sk_buff *skb)
__u8 status = hdr->status;
ep = lookup_tid(t, tid);
+ if (!ep)
+ return 0;
PDBG("%s ep %p tid %u dlen %u\n", __func__, ep, ep->hwtid, dlen);
skb_pull(skb, sizeof(*hdr));
skb_trim(skb, dlen);