Re: [tip:x86/x32] x32: Fix alignment fail in struct compat_siginfo

From: H. Peter Anvin
Date: Wed Apr 18 2012 - 14:10:35 EST


On 04/18/2012 11:01 AM, H.J. Lu wrote:
> On Wed, Apr 18, 2012 at 10:47 AM, H. Peter Anvin <hpa@xxxxxxxxx> wrote:
>> On 04/18/2012 10:38 AM, H.J. Lu wrote:
>>>
>>> It doesn't match struct siginfo in include/asm-generic/siginfo.h for
>>> x32.
>>>
>>
>> What is missing (from either)?
>>
>
> include/asm-generic/siginfo.h has
>
> /* SIGCHLD */
> struct {
> __kernel_pid_t _pid; /* which child */
> __ARCH_SI_UID_T _uid; /* sender's uid */
> int _status; /* exit code */
> __kernel_clock_t _utime;
> __kernel_clock_t _stime;
> } _sigchld;
>
>
> Although x32 __kernel_clock_t is s64 with 64bit alignment, in
> _sigchld, it must be compat_s64 with 32bit alignment.
>

What would you suggest? Change __kernel_clock_t? It would somewhat
stink to have to muck with things here.

The problem here of course is that this is a phony misalignment...

-hpa

--
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/