OSDN Git Service

forcedeth: fix checksum flag
authorAyaz Abdulla <aabdulla@nvidia.com>
Sun, 9 Nov 2008 14:45:27 +0000 (15:45 +0100)
committerWilly Tarreau <w@1wt.eu>
Sun, 9 Nov 2008 14:45:27 +0000 (15:45 +0100)
commitb4343b5e489aeb2287d1f41a9cd176c987146cbe
treefdc01528f5ef548fe87d139d612d2ea7a748f869
parent96de10c0b613c1f0f3712ef4e4d30b52884b68c6
forcedeth: fix checksum flag

[backport of 2.6 commit edcfe5f7e307846e578fb88d69fa27051fded0ab]

Fix the checksum feature advertised in device flags.  The hardware support
TCP/UDP over IPv4 and TCP/UDP over IPv6 (without IPv6 extension headers).
However, the kernel feature flags do not distinguish IPv6 with/without
extension headers.

Therefore, the driver needs to use NETIF_F_IP_CSUM instead of
NETIF_F_HW_CSUM since the latter includes all IPv6 packets.

A future patch can be created to check for extension headers and perform
software checksum calculation.

Signed-off-by: Ayaz Abdulla <aabdulla@nvidia.com>
Cc: Jeff Garzik <jgarzik@pobox.com>
Cc: Manfred Spraul <manfred@colorfullife.com
Cc: <stable@kernel.org> [2.6.25.x, 2.6.26.x]
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Signed-off-by: Willy Tarreau <w@1wt.eu>
drivers/net/forcedeth.c