uapi: always define F_GETLK64/F_SETLK64/F_SETLKW64 in fcntl.h
authorChristoph Hellwig <hch@lst.de>
Tue, 5 Apr 2022 07:12:56 +0000 (15:12 +0800)
committerPalmer Dabbelt <palmer@rivosinc.com>
Tue, 26 Apr 2022 20:35:20 +0000 (13:35 -0700)
commit306f7cc1e9061313c46d19e9bdffc819880794c1
treec1468dfe21275f029fd6cea26de8c329e07a3bd0
parent9f79b8b7233942e9c4b071f1f331f17e7282bbfa
uapi: always define F_GETLK64/F_SETLK64/F_SETLKW64 in fcntl.h

The F_GETLK64/F_SETLK64/F_SETLKW64 fcntl opcodes are only implemented
for the 32-bit syscall APIs, but are also needed for compat handling
on 64-bit kernels.

Consolidate them in unistd.h instead of definining the internal compat
definitions in compat.h, which is rather error prone (e.g. parisc
gets the values wrong currently).

Note that before this change they were never visible to userspace due
to the fact that CONFIG_64BIT is only set for kernel builds.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Guo Ren <guoren@kernel.org>
Reviewed-by: Arnd Bergmann <arnd@arndb.de>
Tested-by: Heiko Stuebner <heiko@sntech.de>
Link: https://lore.kernel.org/r/20220405071314.3225832-3-guoren@kernel.org
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
arch/arm64/include/asm/compat.h
arch/mips/include/asm/compat.h
arch/mips/include/uapi/asm/fcntl.h
arch/powerpc/include/asm/compat.h
arch/s390/include/asm/compat.h
arch/sparc/include/asm/compat.h
arch/x86/include/asm/compat.h
include/uapi/asm-generic/fcntl.h
tools/include/uapi/asm-generic/fcntl.h