[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <529727EA.5010405@linutronix.de>
Date: Thu, 28 Nov 2013 12:24:26 +0100
From: Sebastian Andrzej Siewior <bigeasy@...utronix.de>
To: Fugang Duan <fugang.duan@...escale.com>
CC: "netdev@...r.kernel.org" <netdev@...r.kernel.org>,
"David S. Miller" <davem@...emloft.net>,
Fabio Estevam <Fabio.Estevam@...escale.com>,
Jim Baxter <jim_baxter@...tor.com>,
Marek Szyprowski <m.szyprowski@...sung.com>
Subject: Re: [PATCH] net: fec_main: dma_map() only the length of the skb
On 11/28/2013 02:18 AM, Fugang Duan wrote:
- <frank.li@...escale.net> because MTA complains (now really)
>> On 11/27/2013 02:08 PM, Fugang Duan wrote:
>>> In fact, there have one memory copy for enet as below since enet have 16
>> bytes data buffer alignment request.
>>> if (((unsigned long) bufaddr) & FEC_ALIGNMENT) {
>>> memcpy(fep->tx_bounce[index], skb->data, skb->len);
>>> bufaddr = fep->tx_bounce[index]; }
>>
>> This memcpy() is only executed if the buffer isn't properly aligned which
>> shouldn't be the rule but an exception. This aligment check is also available
>> in v2.6.31 where the BUG_ON() statement was triggered.
>>
> In fact, the skb->data address is not aligned with FEC_ALIGNMENT, so memcpy() always is called at here.
I am aware of NET_IP_ALIGN. The pointers I mentioned in the log were
from a printk() shortly before that bug triggered. So I am not making
this up :) I am not aware of the load that triggered this.
Anyway, adding this
WARN_ON(!((unsigned long)skb->data & 0xf));
in my e1000 on v3.12 triggers shortly after boot and according to the
backtrace it comes aoe. So that is at least one user :)
Since that aligment is for IP, I am not sure if non-IP based protocol
are using this. I know however that the workload, that triggered the
problem, is not IP-based.
>
> Thanks,
> Andy
Sebastian
--
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