From: Santiago Leon Date: Wed, 20 Aug 2008 19:09:19 +0000 (-0600) Subject: ibmveth: fix bad UDP checksums X-Git-Tag: v2.6.27-rc5~8^2~4^2~10 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=45e15bb734e4e559ab32f26196e44d5cf1417f10;p=pandora-kernel.git ibmveth: fix bad UDP checksums This patch fixes a ibmveth bug where bad UDP checksums are being transmitted when checksum offloading is enabled. The hypervisor does checksum offloading only on TCP packets, so ibmveth calls skb_checksum_help() for any other protocol. The bug happens because the packet is being modified after the DMA map, so we would need a memory barrier before making the hypervisor call. Reordering the code so that the DMA map happens after skb_checksum_help() has the additional advantage of fixing a DMA map leak if skb_checksum_help() where to fail. Signed-off-by: Santiago Leon Signed-off-by: Jeff Garzik --- Reading git-diff-tree failed