On Fri, Feb 23, 2024 at 5:21 PM Thomas Bertschinger <[email protected]> wrote: > > 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 <[email protected]> > --- > Makefile | 1 + > include/linux/types.h | 2 ++ > 2 files changed, 3 insertions(+) > > diff --git a/Makefile b/Makefile > index 6e5d0e5..7363d5d 100644 > --- a/Makefile > +++ b/Makefile > @@ -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 > diff --git a/include/linux/types.h b/include/linux/types.h > index 6ae97c4..004d5eb 100644 > --- a/include/linux/types.h > +++ b/include/linux/types.h > @@ -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> > -- > 2.43.0 > >
This looks good, works, and fixes the build for Fedora on ppc64le. Reviewed-by: Neal Gompa <[email protected]> -- 真実はいつも一つ!/ Always, there's only one truth!
