[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20100107.011122.67574781.davem@davemloft.net>
Date: Thu, 07 Jan 2010 01:11:22 -0800 (PST)
From: David Miller <davem@...emloft.net>
To: buytenh@...tstofly.org
Cc: netdev@...r.kernel.org
Subject: Re: [PATCH] mv643xx_eth: don't include cache padding in rx desc
buffer size
From: Lennert Buytenhek <buytenh@...tstofly.org>
Date: Tue, 5 Jan 2010 20:15:32 +0100
> From: Saeed Bishara <saeed@...vell.com>
>
> If NET_SKB_PAD is not a multiple of the cache line size, mv643xx_eth
> allocates a couple of extra bytes at the start of each receive buffer
> to make the data payload end up on a cache line boundary.
>
> These extra bytes are skb_reserve()'d before DMA mapping, so they
> should not be included in the DMA map byte count (as the mapping is
> done starting at skb->data), nor should they be included in the
> receive descriptor buffer size field, or the hardware can end up
> DMAing beyond the end of the buffer, which can happen if someone
> sends us a larger-than-MTU sized packet.
>
> This problem was introduced in commit 7fd96ce47ff ("mv643xx_eth:
> rework receive skb cache alignment", May 6 2009), but hasn't appeared
> to be problematic so far, probably as the main users of mv643xx_eth
> all have NET_SKB_PAD == L1_CACHE_BYTES.
>
> Signed-off-by: Saeed Bishara <saeed@...vell.com>
> Signed-off-by: Lennert Buytenhek <buytenh@...vell.com>
Applied, thanks.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists