On 02/27/2016 03:41 AM, Ingo Molnar wrote: > * Stephen Rothwell <s...@canb.auug.org.au> wrote: >> > On Fri, 26 Feb 2016 09:44:00 -0800 "H. Peter Anvin" <h...@zytor.com> 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?