RE: [047/107] pxa168_eth: fix race in transmit path.

From: Sachin Sanap
Date: Fri Jul 08 2011 - 02:22:21 EST


ACK.

> -----Original Message-----
> From: Greg KH [mailto:gregkh@xxxxxxx]
> Sent: Friday, July 08, 2011 5:46 AM
> To: linux-kernel@xxxxxxxxxxxxxxx; stable@xxxxxxxxxx
> Cc: stable-review@xxxxxxxxxx; torvalds@xxxxxxxxxxxxxxxxxxxx; akpm@linux-
> foundation.org; alan@xxxxxxxxxxxxxxxxxxx; Sachin Sanap; Zhangfei Gao;
> Philip Rakity; Richard Cochran; Eric Dumazet; David S. Miller
> Subject: [047/107] pxa168_eth: fix race in transmit path.
>
> 2.6.39-stable review patch. If anyone has any objections, please let us
> know.
>
> ------------------
>
> From: Richard Cochran <richardcochran@xxxxxxxxx>
>
> commit 384420409d9b5d4443940abace49363d26135412 upstream.
>
> Because the socket buffer is freed in the completion interrupt, it is not
> safe to access it after submitting it to the hardware.
>
> Cc: Sachin Sanap <ssanap@xxxxxxxxxxx>
> Cc: Zhangfei Gao <zgao6@xxxxxxxxxxx>
> Cc: Philip Rakity <prakity@xxxxxxxxxxx>
> Signed-off-by: Richard Cochran <richard.cochran@xxxxxxxxxx>
> Acked-by: Eric Dumazet <eric.dumazet@xxxxxxxxx>
> Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>
> Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxx>
>
> ---
> drivers/net/pxa168_eth.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> --- a/drivers/net/pxa168_eth.c
> +++ b/drivers/net/pxa168_eth.c
> @@ -1273,7 +1273,7 @@ static int pxa168_eth_start_xmit(struct
> wmb();
> wrl(pep, SDMA_CMD, SDMA_CMD_TXDH | SDMA_CMD_ERD);
>
> - stats->tx_bytes += skb->len;
> + stats->tx_bytes += length;
> stats->tx_packets++;
> dev->trans_start = jiffies;
> if (pep->tx_ring_size - pep->tx_desc_count <= 1) {
>

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/