mirror of
https://github.com/torvalds/linux.git
synced 2026-07-27 01:32:21 +02:00
tools/nolibc: also handle _llseek system call
On some architectures the llseek system call contains a leading underscore. Treat it the same way as llseek and prefer it over the plain lseek system call as is necessary for 64-bit offset handling. Signed-off-by: Thomas Weißschuh <linux@weissschuh.net> Acked-by: Willy Tarreau <w@1wt.eu> Link: https://patch.msgid.link/20260418-nolibc-largefile-v1-1-b91f0775bac3@weissschuh.net
This commit is contained in:
parent
7ffb6e99c3
commit
f38a0bb745
|
|
@ -611,12 +611,18 @@ int link(const char *old, const char *new)
|
|||
static __attribute__((unused))
|
||||
off_t _sys_lseek(int fd, off_t offset, int whence)
|
||||
{
|
||||
#if defined(__NR_llseek)
|
||||
#if defined(__NR_llseek) || defined(__NR__llseek)
|
||||
__kernel_loff_t loff = 0;
|
||||
int ret, nr_llseek;
|
||||
off_t result;
|
||||
int ret;
|
||||
|
||||
ret = __nolibc_syscall5(__NR_llseek, fd, offset >> 32, (uint32_t)offset, &loff, whence);
|
||||
#if defined(__NR_llseek)
|
||||
nr_llseek = __NR_llseek;
|
||||
#else
|
||||
nr_llseek = __NR__llseek;
|
||||
#endif
|
||||
|
||||
ret = __nolibc_syscall5(nr_llseek, fd, offset >> 32, (uint32_t)offset, &loff, whence);
|
||||
if (ret < 0)
|
||||
result = ret;
|
||||
else
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user