RDMA/cxgb4: Don't leak skb in c4iw_uld_rx_handler()
authorSteve Wise <swise@opengridcomputing.com>
Fri, 21 Mar 2014 15:10:30 +0000 (20:40 +0530)
committerRoland Dreier <roland@purestorage.com>
Mon, 24 Mar 2014 17:07:35 +0000 (10:07 -0700)
Signed-off-by: Steve Wise <swise@opengridcomputing.com>
Signed-off-by: Roland Dreier <roland@purestorage.com>
drivers/infiniband/hw/cxgb4/device.c

index 4a03385..982f815 100644 (file)
@@ -897,11 +897,13 @@ static int c4iw_uld_rx_handler(void *handle, const __be64 *rsp,
        }
 
        opcode = *(u8 *)rsp;
-       if (c4iw_handlers[opcode])
+       if (c4iw_handlers[opcode]) {
                c4iw_handlers[opcode](dev, skb);
-       else
+       } else {
                pr_info("%s no handler opcode 0x%x...\n", __func__,
                       opcode);
+               kfree_skb(skb);
+       }
 
        return 0;
 nomem: