Re: Help: strange messages from kernel on IA64 platform

From: Arjan van de Ven
Date: Wed Jul 12 2006 - 09:06:00 EST


On Wed, 2006-07-12 at 17:19 +0900, Sakurai Hiroomi wrote:
> Hi,
>
> I saw same message.
>
> When GAM(Global Array Manager) is started, The following message output.
> kernel: kernel unaligned access to 0xe0000001fe1080d4, ip=0xa000000200053371

first of all you should file a bug against this kernel; the kernel
should not printk about unaligned accesses by default!

>
> The uioc structure used by ioctl is defined by packed,
> the allignment of each member are disturbed.
> In a 64 bit structure, the allignment of member doesn't fit 64 bit
> boundary. this causes this messages.
> In a 32 bit structure, we don't see the message because the allinment
> of member fit 32 bit boundary even if packed is specified.
>
> patch
> I Add 32 bit dummy member to fit 64 bit boundary. I tested.
> We confirmed this patch fix the problem by IA64 server.


this changes the calling convention of this structure!
If there is no strict calling convention, then the packed can be
removed, but if there is your patch changes the ABI!!
(and you could then fix it by using get_unaligned() in the places that
use this field)
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/