diff options
Diffstat (limited to 'drivers/atm/he.c')
-rw-r--r-- | drivers/atm/he.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/atm/he.c b/drivers/atm/he.c index dd96123a2b7f..41e052fecd7f 100644 --- a/drivers/atm/he.c +++ b/drivers/atm/he.c | |||
@@ -1912,7 +1912,7 @@ he_service_rbrq(struct he_dev *he_dev, int group) | |||
1912 | skb->tail = skb->data + skb->len; | 1912 | skb->tail = skb->data + skb->len; |
1913 | #ifdef USE_CHECKSUM_HW | 1913 | #ifdef USE_CHECKSUM_HW |
1914 | if (vcc->vpi == 0 && vcc->vci >= ATM_NOT_RSV_VCI) { | 1914 | if (vcc->vpi == 0 && vcc->vci >= ATM_NOT_RSV_VCI) { |
1915 | skb->ip_summed = CHECKSUM_HW; | 1915 | skb->ip_summed = CHECKSUM_COMPLETE; |
1916 | skb->csum = TCP_CKSUM(skb->data, | 1916 | skb->csum = TCP_CKSUM(skb->data, |
1917 | he_vcc->pdu_len); | 1917 | he_vcc->pdu_len); |
1918 | } | 1918 | } |
@@ -1928,7 +1928,9 @@ he_service_rbrq(struct he_dev *he_dev, int group) | |||
1928 | #ifdef notdef | 1928 | #ifdef notdef |
1929 | ATM_SKB(skb)->vcc = vcc; | 1929 | ATM_SKB(skb)->vcc = vcc; |
1930 | #endif | 1930 | #endif |
1931 | spin_unlock(&he_dev->global_lock); | ||
1931 | vcc->push(vcc, skb); | 1932 | vcc->push(vcc, skb); |
1933 | spin_lock(&he_dev->global_lock); | ||
1932 | 1934 | ||
1933 | atomic_inc(&vcc->stats->rx); | 1935 | atomic_inc(&vcc->stats->rx); |
1934 | 1936 | ||