diff options
author | Veaceslav Falico <vfalico@redhat.com> | 2013-03-25 22:26:21 +0000 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-04-05 10:16:54 -0700 |
commit | 3beceaf660dffbe11f5a5606ea379666eb9eaad0 (patch) | |
tree | 914b76307216585ba9087b8c41ad433cafb05cd7 | |
parent | cb241ae254e1f4ee9a9f07e4a452b12cd674fffc (diff) | |
download | kernel_samsung_tuna-3beceaf660dffbe11f5a5606ea379666eb9eaad0.zip kernel_samsung_tuna-3beceaf660dffbe11f5a5606ea379666eb9eaad0.tar.gz kernel_samsung_tuna-3beceaf660dffbe11f5a5606ea379666eb9eaad0.tar.bz2 |
pch_gbe: fix ip_summed checksum reporting on rx
[ Upstream commit 76a0e68129d7d24eb995a6871ab47081bbfa0acc ]
skb->ip_summed should be CHECKSUM_UNNECESSARY when the driver reports that
checksums were correct and CHECKSUM_NONE in any other case. They're
currently placed vice versa, which breaks the forwarding scenario. Fix it
by placing them as described above.
Signed-off-by: Veaceslav Falico <vfalico@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | drivers/net/pch_gbe/pch_gbe_main.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/pch_gbe/pch_gbe_main.c b/drivers/net/pch_gbe/pch_gbe_main.c index 236d00e..0055daf 100644 --- a/drivers/net/pch_gbe/pch_gbe_main.c +++ b/drivers/net/pch_gbe/pch_gbe_main.c @@ -1509,9 +1509,9 @@ pch_gbe_clean_rx(struct pch_gbe_adapter *adapter, skb_put(skb, length); skb->protocol = eth_type_trans(skb, netdev); if (tcp_ip_status & PCH_GBE_RXD_ACC_STAT_TCPIPOK) - skb->ip_summed = CHECKSUM_NONE; - else skb->ip_summed = CHECKSUM_UNNECESSARY; + else + skb->ip_summed = CHECKSUM_NONE; napi_gro_receive(&adapter->napi, skb); (*work_done)++; |