ARM network trouble after recent mbuf changes

Andre Oppermann andre at freebsd.org
Tue Aug 27 09:49:36 UTC 2013


On 27.08.2013 11:28, Andrew Turner wrote:
> On Tue, 27 Aug 2013 08:53:13 +0200
> Andre Oppermann <andre at freebsd.org> wrote:
>> Please try the patch below to confirm.  If it fixes your problem for
>> now I'm going to commit as an immediate fix while searching for a
>> better long term stable solution.
>>
>
> I tried this with a CTASSERT to check if struct m_hdr is the correct
> length. In this test the size is incorrect. It appears __ILP32__ is not
> defined on ARM.
>
> I have tested a fix suggested by Hans Petter Selasky where we mark
> m_hdr with __aligned(8). With this change I can netboot a PandaBoard.

There is no guarantee with __aligned(8) that the padding is included
in sizeof(struct m_hdr).  It only guarantees that the start of m_hdr
is aligned on a 8 byte multiple.

In your case it appears that the padding is included.  I'm not certain
that we can rely on it with both gcc and clang (or some other compiler).

-- 
Andre



More information about the freebsd-arm mailing list