]> git.baikalelectronics.ru Git - kernel.git/commit
fec: fix FEC driver packet transmission breakage
authorGreg Ungerer <gerg@snapgear.com>
Thu, 6 Aug 2009 17:58:18 +0000 (17:58 +0000)
committerDavid S. Miller <davem@davemloft.net>
Mon, 10 Aug 2009 04:45:33 +0000 (21:45 -0700)
commitd3c7eaee3b9a3fb16bca1cc58aea823c3937d742
treef12a6e5ac329c6059539a39e0cc4fce38afef8a3
parent0e77efae16d27d097f789d759cd998335c0f4132
fec: fix FEC driver packet transmission breakage

Commit 4262a7faa28c2a0bc7e3dadf9ebad4d605ca4a09 ("FEC Buffer rework")
breaks transmission of packets where the skb data buffer is not memory
aligned according to FEC_ALIGNMENT. It incorrectly passes to
dma_sync_single() the buffer address directly from the skb, instead of
the address calculated for use (which may be the skb address or one of
the bounce buffers).

It seems there is no use converting the cpu address of the buffer to
a physical either, since dma_map_single() expects the cpu address and
will return the dma address to use in the descriptor. So remove the use
of __pa() on the buffer address as well.

This patch is against 2.6.30-rc5. This breakage is a regression over
2.6.30, which does not have this problem.

Signed-off-by: Greg Ungerer <gerg@uclinux.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/fec.c