]> git.hungrycats.org Git - linux/commitdiff
mips: fix compat_sys_lseek syscall
authorArnd Bergmann <arnd@arndb.de>
Thu, 20 Jun 2024 16:23:04 +0000 (18:23 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 25 Jul 2024 07:53:30 +0000 (09:53 +0200)
[ Upstream commit 0d5679a0aae2d8cda72169452c32e5cb88a7ab33 ]

This is almost compatible, but passing a negative offset should result
in a EINVAL error, but on mips o32 compat mode would seek to a large
32-bit byte offset.

Use compat_sys_lseek() to correctly sign-extend the argument.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
arch/mips/kernel/syscalls/syscall_o32.tbl

index 0352c07c608e9c214e47cbefa29519fbb548834e..fe76282a353f558b2d5f32b50d69290b4743d816 100644 (file)
@@ -27,7 +27,7 @@
 17     o32     break                           sys_ni_syscall
 # 18 was sys_stat
 18     o32     unused18                        sys_ni_syscall
-19     o32     lseek                           sys_lseek
+19     o32     lseek                           sys_lseek                       compat_sys_lseek
 20     o32     getpid                          sys_getpid
 21     o32     mount                           sys_mount
 22     o32     umount                          sys_oldumount