ARM network trouble after recent mbuf changes
Thomas Skibo
ThomasSkibo at sbcglobal.net
Mon Aug 26 22:14:36 UTC 2013
On 8/26/13 2:04 PM, Andre Oppermann wrote:
> On 26.08.2013 22:57, Ian Lepore wrote:
>>
>> Could this be something related to how bitfields are handled in EABI?
>
> It could be. We do use bitfields since forever in ip.h for the IPv4 header
> too.
I think the bitfields are fine and it's doing what you expect: struct
m_hdr is five words long. I think what's happening is that the compiler
pads the struct pkthdr in an mbuf to 64 bits. Because MLEN doesn't take
into account that padding, it is too big by 4.
My work-around fixes it by making struct m_hdr six words instead of five.
>
> Besides that, do all the ARM system with this problem use the same network
> interface type?
>
The same driver? No. Zynq/Zedboard has a unique ethernet driver and
it's seeing the problem
I tried your patch (adding __packed to a few structs) and it didn't
work. Maybe pack struct mbuf ?
--Thomas
--
--------
Thomas Skibo
ThomasSkibo at sbcglobal.net
More information about the freebsd-arm
mailing list