diff options
author | Richard Cochran <richardcochran@gmail.com> | 2011-06-19 03:31:42 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2011-06-19 16:35:30 -0700 |
commit | 2aa8f4c9d0f88ae7eacac424d8816de225cfe2aa (patch) | |
tree | 00bb3ba2af7ee89aa53ffd9a758ff1b45bf83c91 /drivers/net/r6040.c | |
parent | d515b450bfd50d355c5b3230685b997faeee5c49 (diff) | |
download | op-kernel-dev-2aa8f4c9d0f88ae7eacac424d8816de225cfe2aa.zip op-kernel-dev-2aa8f4c9d0f88ae7eacac424d8816de225cfe2aa.tar.gz |
r6040: fix race in transmit time stamping.
Signed-off-by: Richard Cochran <richard.cochran@omicron.at>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/r6040.c')
-rw-r--r-- | drivers/net/r6040.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/net/r6040.c b/drivers/net/r6040.c index 5ee5f8f..00f06e9 100644 --- a/drivers/net/r6040.c +++ b/drivers/net/r6040.c @@ -836,6 +836,9 @@ static netdev_tx_t r6040_start_xmit(struct sk_buff *skb, descptr->buf = cpu_to_le32(pci_map_single(lp->pdev, skb->data, skb->len, PCI_DMA_TODEVICE)); descptr->status = DSC_OWNER_MAC; + + skb_tx_timestamp(skb); + /* Trigger the MAC to check the TX descriptor */ iowrite16(0x01, ioaddr + MTPR); lp->tx_insert_ptr = descptr->vndescp; @@ -846,8 +849,6 @@ static netdev_tx_t r6040_start_xmit(struct sk_buff *skb, spin_unlock_irqrestore(&lp->lock, flags); - skb_tx_timestamp(skb); - return NETDEV_TX_OK; } |