Subject: Re: [PATCH] x86, pkeys: fix siginfo ABI breakage from new field

From: Dave Hansen <[email-masked]>
Date: Sat, 27 Feb 2016 11:16:44 -0800

On 02/27/2016 03:41 AM, Ingo Molnar wrote:
> * Stephen Rothwell <[email-masked]> wrote:
>> > On Fri, 26 Feb 2016 09:44:00 -0800 "H. Peter Anvin" <[email-masked]> wrote:
>>> > > __u64 is okay, "unsigned long" is really messy in the presence of 32-on-64 bit ABIs...
>> > 
>> > Yeah, but unfortunately, any 64 bit scalar type here will change the
>> > alignment of the enclosing unions on (some) 32 bit platforms and thus
>> > break the ABI.
> Then a different solution has to be found.

I've acked Stephen's initial patch changing the 'u64' to an 'int'.  x86
only needs 4 bits, and in the remote chance that a future implementation
needed more space, we could easily add a second 32-bit field "_pkey_hi"
or something that wouldn't have the alignment issues of a true 64-bit type.

How should we get Stephen's patch in to the tip tree?