mirror of
https://github.com/torvalds/linux.git
synced 2025-12-07 20:06:24 +00:00
tools/nolibc: handle 64-bit off_t for llseek
Correctly handle 64-bit off_t values in preparation for 64-bit off_t on 32-bit architectures. Signed-off-by: Thomas Weißschuh <linux@weissschuh.net> Acked-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Willy Tarreau <w@1wt.eu>
This commit is contained in:
@@ -612,8 +612,7 @@ off_t sys_lseek(int fd, off_t offset, int whence)
|
||||
off_t result;
|
||||
int ret;
|
||||
|
||||
/* Only exists on 32bit where nolibc off_t is also 32bit */
|
||||
ret = my_syscall5(__NR_llseek, fd, 0, offset, &loff, whence);
|
||||
ret = my_syscall5(__NR_llseek, fd, offset >> 32, (uint32_t)offset, &loff, whence);
|
||||
if (ret < 0)
|
||||
result = ret;
|
||||
else if (loff != (off_t)loff)
|
||||
|
||||
Reference in New Issue
Block a user