]> git.baikalelectronics.ru Git - kernel.git/commit
net: mv643xx_eth: Defer writing the first TX descriptor when using TSO
authorPhilipp Kirchhofer <philipp@familie-kirchhofer.de>
Sun, 18 Oct 2015 14:02:44 +0000 (16:02 +0200)
committerDavid S. Miller <davem@davemloft.net>
Wed, 21 Oct 2015 14:36:41 +0000 (07:36 -0700)
commite5258fc49ed87382978253f3547b236bb230caad
treee79e6ba017b03469d9d67a3b5e8b852c63063381
parent0031b79d1c3075f15646e3dc592e0ce88d1e382c
net: mv643xx_eth: Defer writing the first TX descriptor when using TSO

To prevent a race between the TX DMA engine and the CPU the writing of the
first transmit descriptor must be deferred until all following descriptors
have been updated. The network card may otherwise start transmitting before
all packet descriptors are set up correctly, which leads to data corruption
or an aborted transmit operation.

This deferral is already done in the non-TSO TX path, implement it also in
the TSO TX path.

Signed-off-by: Philipp Kirchhofer <philipp@familie-kirchhofer.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/marvell/mv643xx_eth.c