Hi Arnd, On Thu, Jan 10, 2019 at 05:24:31PM +0100, Arnd Bergmann wrote: > While reading through the sysvipc implementation, I noticed that the n32 > semctl/shmctl/msgctl system calls behave differently based on whether > o32 support is enabled or not: Without o32, the IPC_64 flag passed by > user space is rejected but calls without that flag get IPC_64 behavior. > > As far as I can tell, this was inadvertently changed by a cleanup patch > but never noticed by anyone, possibly nobody has tried using sysvipc > on n32 after linux-3.19. > > Change it back to the old behavior now. > > Fixes: 78aaf956ba3a ("MIPS: Compat: Fix build error if CONFIG_MIPS32_COMPAT > but no compat ABI.") > Cc: sta...@vger.kernel.org > Signed-off-by: Arnd Bergmann <a...@arndb.de> > --- > As stated above, this was only found by inspection, the patch is not > tested. Please review accordingly.
Nice catch! Would you prefer to merge this yourself, or that I take it through the mips tree? If the former then: Acked-by: Paul Burton <paul.bur...@mips.com> I suspect kernels configured with n32 support but no o32 support are probably not very common - for internal testing we currently always enable both. Thanks, Paul > --- > arch/mips/Kconfig | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig > index 787290781b8c..0d14f51d0002 100644 > --- a/arch/mips/Kconfig > +++ b/arch/mips/Kconfig > @@ -3155,6 +3155,7 @@ config MIPS32_O32 > config MIPS32_N32 > bool "Kernel support for n32 binaries" > depends on 64BIT > + select ARCH_WANT_COMPAT_IPC_PARSE_VERSION > select COMPAT > select MIPS32_COMPAT > select SYSVIPC_COMPAT if SYSVIPC > -- > 2.20.0 >