Hello,
On Mon, 25 Jan 2016 21:16:49 +0100, Waldemar Brodkorb wrote:
I originally
reported this for uClibc but I think it might be
interesting for uclibc-ng as well (or even more since original
uClibc gets more and more stale):
See
https://bugs.busybox.net/show_bug.cgi?id=8611
Maybe you also find a better approach as the one I implemented.
Thanks for the report. I will try the patch.
Do you have some small test-case or a real life application failing,
so I can test on my x86 machine?
If the bug is really that syscalls with 6 arguments are broken, then
you can try with any of those system calls:
fs/compat.c:COMPAT_SYSCALL_DEFINE6(pselect6, int, n, compat_ulong_t __user *, inp,
fs/eventpoll.c:SYSCALL_DEFINE6(epoll_pwait, int, epfd, struct epoll_event __user *,
events,
fs/select.c:SYSCALL_DEFINE6(pselect6, int, n, fd_set __user *, inp, fd_set __user *,
outp,
fs/splice.c:SYSCALL_DEFINE6(splice, int, fd_in, loff_t __user *, off_in,
ipc/syscall.c:SYSCALL_DEFINE6(ipc, unsigned int, call, int, first, unsigned long, second,
kernel/fork.c:SYSCALL_DEFINE6(clone, unsigned long, clone_flags, unsigned long, newsp,
kernel/futex.c:SYSCALL_DEFINE6(futex, u32 __user *, uaddr, int, op, u32, val,
etc.
Best regards,
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com