powerpc: use "long long" for 64-bit types in userspace

This resolves build warnings and failures for architectures where the
Linux userspace `asm/types.h` header defines 64-bit types (u64, s64) as
`long` instead of `long long`.

By defining `__SANE_USERSPACE_TYPES__`, these types are defined as
`long long` instead.

Signed-off-by: Thomas Bertschinger <tahbertschinger@gmail.com>
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
This commit is contained in:
Thomas Bertschinger 2024-02-23 15:20:42 -07:00 committed by Kent Overstreet
parent 16661be294
commit 3388cf009a
2 changed files with 3 additions and 0 deletions

View File

@ -42,6 +42,7 @@ CFLAGS+=-std=gnu11 -O2 -g -MMD -Wall -fPIC \
-DNO_BCACHEFS_FS \
-DNO_BCACHEFS_SYSFS \
-DVERSION_STRING='"$(VERSION)"' \
-D__SANE_USERSPACE_TYPES__ \
$(EXTRA_CFLAGS)
# Intenionally not doing the above to $(LDFLAGS) because we rely on

View File

@ -10,7 +10,9 @@
#include <sys/types.h>
#include <linux/posix_types.h>
#ifndef __SANE_USERSPACE_TYPES__
#define __SANE_USERSPACE_TYPES__ /* For PPC64, to get LL64 types */
#endif
#include <asm/types.h>
#include <linux/cache.h>