On Fri, 24 Nov 2023 at 04:59, Michael Ellerman <m...@ellerman.id.au> wrote: > > Dimitri John Ledkov <dimitri.led...@canonical.com> writes: > > BugLink: https://bugs.launchpad.net/bugs/2038587 > > > > ppc64le is exclusively little endian and 64-bit, thus there is no need > > for COMPAT_32BIT_TIME, nor COMPAT. > > To be pedantic, the ppc64le kernel does support running 32-bit little > endian userspace in compat mode (CONFIG_COMPAT=y). It's a distro choice > as to whether you support COMPAT. Notably there are two other major > distros that don't support COMPAT for ppc64le, and the set of 32-bit LE > software is effectively empty.
🤯 > > > diffconfig result of these changes is: > > > > -ARCH_MMAP_RND_COMPAT_BITS 13 > > -ARCH_WANT_COMPAT_IPC_PARSE_VERSION y > > -ARCH_WANT_OLD_COMPAT_IPC y > > -COMPAT_BINFMT_ELF y > > -COMPAT_NETLINK_MESSAGES y > > -COMPAT_OLD_SIGACTION y > > -HAVE_ARCH_MMAP_RND_COMPAT_BITS y > > -KVM_COMPAT y > > -NETFILTER_XTABLES_COMPAT y > > -SYSVIPC_COMPAT y > > -VDSO32 y > > COMPAT y -> n > > COMPAT_32BIT_TIME y -> n > > +ARCH_HAS_SYSCALL_WRAPPER y > > +INTERRUPT_SANITIZE_REGISTERS y > > > > What confused me, if the above combination is even valid or just pure > > dead code. > > I don't entirely understand what that diff is saying, but I'll try and > answer anyway. This is output from diffconfig, lines with "y -> n" are changes to a key that is available as a choice. Lines prefixed with minus ('-') become unavailable. Lines prefixed with plus ('+') are NEW options that become available. So the effect of turning COMPAT off removes lots of compat things in other places, and makes INTERRUPT_SANITIZE_REGISTERS available. > > > Is it really possible to run 32bit big-endian KVM on a 64bit > > little-endian POWER? > > Are you referring to KVM_COMPAT being disabled? > > That's nothing to do with big-endian. It's just controlling whether the > KVM ioctls (which qemu calls) support compat handling, ie. whether you > can run a 32-bit qemu under a 64-bit kernel. > Thank you for the explanation. And also "no thank you, do not want 32-bit qemu". > It's entirely expected that when COMPAT is turned off KVM_COMPAT also > gets turned off. > > > Or is Kconfig slightly buggy and should be fixed up to prevent > > offering COMPAT options when little-endian 64bit POWER kernel is being > > configured? > > No. Like I said at the top, the kernel does support 32-bit LE compat, > eventhough it's not very widely used. > Thank you for explaining all of this. -- okurrr, Dimitri