On 08/12/2017 06:47 AM, Samuel Thibault wrote:
> Eric Blake, on sam. 12 août 2017 06:41:30 -0500, wrote:
>> Here's an idea: Instead of using struct ip6 { ... } QEMU_PACKED, use
>>
>> struct ip6 {
>> ...
>> };
>> QEMU_BUG_ON(sizeof(struct ip6) != 32);
>
> That's an interesting way indeed. I however wonder whether there may be
> not-so-uncommon systems where the compiler aligns some fields just for
> performance or such.If it does, the BUG_ON will flag it, and we'll deal with it as needed for that platform, perhaps by adding: ... } #ifdef WEIRD_PLATFORM QEMU_PACKED #endif ; QEMU_BUG_ON(...); But as long as the BUG_ON doesn't flag anything, we can use the struct as-is. -- Eric Blake, Principal Software Engineer Red Hat, Inc. +1-919-301-3266 Virtualization: qemu.org | libvirt.org
signature.asc
Description: OpenPGP digital signature
