diff options
author | Tatyana Nikolova <Tatyana.E.Nikolova@intel.com> | 2012-09-20 16:55:33 -0400 |
---|---|---|
committer | Roland Dreier <roland@purestorage.com> | 2012-09-30 23:34:54 -0400 |
commit | fc4ba7291b3dc7ace34794f51c47f041949c7a92 (patch) | |
tree | 72693baeb618f818c39b815e287639f751934d1c /drivers/infiniband/hw | |
parent | 48a9956362c27e717a76435d450d906d5f49344a (diff) |
RDMA/nes: Fix for crash when TX checksum offload is off
When TX checksum offload is disabled for an iWarp connection,
skb->ip_summed needs to be set to CHECKSUM_NONE.
Signed-off-by: Tatyana Nikolova <Tatyana.E.Nikolova@intel.com>
Signed-off-by: Roland Dreier <roland@purestorage.com>
Diffstat (limited to 'drivers/infiniband/hw')
-rw-r--r-- | drivers/infiniband/hw/nes/nes_cm.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/infiniband/hw/nes/nes_cm.c b/drivers/infiniband/hw/nes/nes_cm.c index 49a9383137db..cfaacaf6bf5f 100644 --- a/drivers/infiniband/hw/nes/nes_cm.c +++ b/drivers/infiniband/hw/nes/nes_cm.c | |||
@@ -430,6 +430,8 @@ static void form_cm_frame(struct sk_buff *skb, | |||
430 | buf += sizeof(*tcph); | 430 | buf += sizeof(*tcph); |
431 | 431 | ||
432 | skb->ip_summed = CHECKSUM_PARTIAL; | 432 | skb->ip_summed = CHECKSUM_PARTIAL; |
433 | if (!(cm_node->netdev->features & NETIF_F_IP_CSUM)) | ||
434 | skb->ip_summed = CHECKSUM_NONE; | ||
433 | skb->protocol = htons(0x800); | 435 | skb->protocol = htons(0x800); |
434 | skb->data_len = 0; | 436 | skb->data_len = 0; |
435 | skb->mac_len = ETH_HLEN; | 437 | skb->mac_len = ETH_HLEN; |