[openib-general] [PATCH] IB/core - ib_umad can cause address alignment fault onia64

Jason Gunthorpe jgunthorpe at obsidianresearch.com
Thu Jan 18 10:51:54 PST 2007


On Thu, Jan 18, 2007 at 12:17:35PM -0600, Tom Tucker wrote:
 
> Does changing the size of the structure break the ABI?

ib_user_mad_hdr is 56 bytes long, that is already a multiple of 8 so
.data is already aligned on 8. Thus the size of ib_user_mad does not
change and there is no ABI concern here.

__u64 data[0] is still 0 size, just like __u8 data[0].

Really all that happens is that the compiler will mark ib_user_mad as
requiring 8 byte alignment on ia64/etc and 4 byte on x86-64/etc, which
gets you the pad you need in the ib_umad_packet structure.

Jason




More information about the general mailing list