]> asedeno.scripts.mit.edu Git - linux.git/commit
fcntl: don't cap l_start and l_end values for F_GETLK64 in compat syscall
authorJeff Layton <jlayton@redhat.com>
Tue, 14 Nov 2017 19:42:57 +0000 (14:42 -0500)
committerJeff Layton <jlayton@redhat.com>
Wed, 15 Nov 2017 13:08:36 +0000 (08:08 -0500)
commit4d2dc2cc766c3b51929658cacbc6e34fc8e242fb
treecc8fca80ff984b268f9acedbb582f1f7a410ac69
parent9280a601e6080c9ff658468c1c775ff6514099a6
fcntl: don't cap l_start and l_end values for F_GETLK64 in compat syscall

Currently, we're capping the values too low in the F_GETLK64 case. The
fields in that structure are 64-bit values, so we shouldn't need to do
any sort of fixup there.

Make sure we check that assumption at build time in the future however
by ensuring that the sizes we're copying will fit.

With this, we no longer need COMPAT_LOFF_T_MAX either, so remove it.

Fixes: 94073ad77fff2 (fs/locks: don't mess with the address limit in compat_fcntl64)
Reported-by: Vitaly Lipatov <lav@etersoft.ru>
Signed-off-by: Jeff Layton <jlayton@redhat.com>
Reviewed-by: David Howells <dhowells@redhat.com>
arch/arm64/include/asm/compat.h
arch/mips/include/asm/compat.h
arch/parisc/include/asm/compat.h
arch/powerpc/include/asm/compat.h
arch/s390/include/asm/compat.h
arch/sparc/include/asm/compat.h
arch/tile/include/asm/compat.h
arch/x86/include/asm/compat.h
fs/fcntl.c