Commit 2c9c6ce0 authored by Matt Evans's avatar Matt Evans Committed by Benjamin Herrenschmidt

powerpc: Add __SANE_USERSPACE_TYPES__ to asm/types.h for LL64

PPC64 uses long long for u64 in the kernel, but powerpc's asm/types.h
prevents 64-bit userland from seeing this definition, instead defaulting
to u64 == long in userspace.  Some user programs (e.g. kvmtool) may actually
want LL64, so this patch adds a check for __SANE_USERSPACE_TYPES__ so that,
if defined, int-ll64.h is included instead.
Signed-off-by: default avatarMatt Evans <matt@ozlabs.org>
Acked-by: default avatarIngo Molnar <mingo@elte.hu>
Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
parent a66086b8
...@@ -5,8 +5,11 @@ ...@@ -5,8 +5,11 @@
* This is here because we used to use l64 for 64bit powerpc * This is here because we used to use l64 for 64bit powerpc
* and we don't want to impact user mode with our change to ll64 * and we don't want to impact user mode with our change to ll64
* in the kernel. * in the kernel.
*
* However, some user programs are fine with this. They can
* flag __SANE_USERSPACE_TYPES__ to get int-ll64.h here.
*/ */
#if defined(__powerpc64__) && !defined(__KERNEL__) #if !defined(__SANE_USERSPACE_TYPES__) && defined(__powerpc64__) && !defined(__KERNEL__)
# include <asm-generic/int-l64.h> # include <asm-generic/int-l64.h>
#else #else
# include <asm-generic/int-ll64.h> # include <asm-generic/int-ll64.h>
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment