[PATCH V12 01/20] uapi: simplify __ARCH_FLOCK{,64}_PAD a little

Florian Fainelli f.fainelli at gmail.com
Thu Jul 14 20:13:12 PDT 2022



On 4/5/2022 12:12 AM, guoren at kernel.org wrote:
> From: Christoph Hellwig <hch at lst.de>
> 
> Don't bother to define the symbols empty, just don't use them.
> That makes the intent a little more clear.
> 
> Remove the unused HAVE_ARCH_STRUCT_FLOCK64 define and merge the
> 32-bit mips struct flock into the generic one.
> 
> Add a new __ARCH_FLOCK_EXTRA_SYSID macro following the style of
> __ARCH_FLOCK_PAD to avoid having a separate definition just for
> one architecture.
> 
> Signed-off-by: Christoph Hellwig <hch at lst.de>
> Signed-off-by: Guo Ren <guoren at kernel.org>
> Reviewed-by: Arnd Bergmann <arnd at arndb.de>
> Tested-by: Heiko Stuebner <heiko at sntech.de>

Being late to this, but this breaks the perf build for me using a MIPS 
toolchain with the following:

   CC 
/home/fainelli/work/buildroot/output/bmips/build/linux-custom/tools/perf/trace/beauty/fcntl.o
In file included from 
../../../../host/mipsel-buildroot-linux-gnu/sysroot/usr/include/asm/fcntl.h:77,
                  from ../include/uapi/linux/fcntl.h:5,
                  from trace/beauty/fcntl.c:10:
../include/uapi/asm-generic/fcntl.h:188:8: error: redefinition of 
'struct flock'
  struct flock {
         ^~~~~
In file included from ../include/uapi/linux/fcntl.h:5,
                  from trace/beauty/fcntl.c:10:
../../../../host/mipsel-buildroot-linux-gnu/sysroot/usr/include/asm/fcntl.h:63:8: 
note: originally defined here
  struct flock {
         ^~~~~
make[6]: *** 
[/home/fainelli/work/buildroot/output/bmips/build/linux-custom/tools/build/Makefile.build:97: 
/home/fainelli/work/buildroot/output/bmips/build/linux-custom/tools/perf/trace/beauty/fcntl.o] 
Error 1

the kernel headers are set to 4.1.31 which is arguably old but 
toolchains using newer kernel headers do not fare much better either 
unfortunately as I tried a toolchain with kernel headers 4.9.x.

I will start doing more regular MIPS builds of the perf tools since that 
seems to escape our testing.

Thanks!
-- 
Florian



More information about the linux-riscv mailing list