svn commit: r336043 - head/sys/arm64/linux

Ed Maste emaste at FreeBSD.org
Fri Jul 6 19:44:50 UTC 2018


Author: emaste
Date: Fri Jul  6 19:44:49 2018
New Revision: 336043
URL: https://svnweb.freebsd.org/changeset/base/336043

Log:
  Fix arm64 linuxulator clone() argument order
  
  Linux/arm64 is CLONE_BACKWARDS - i.e., "Architecture has tls passed as
  the 4th argument of clone(2), not the 5th one."
  
  The linux clone() syscall has four different permutations of argument
  order, depending on architecture - see the #ifdef CONFIG_CLONE_BACKWARDS
  maze in Linux's kernel/fork.c.
  
  Sponsored by:	Turing Robotic Industries

Modified:
  head/sys/arm64/linux/syscalls.master

Modified: head/sys/arm64/linux/syscalls.master
==============================================================================
--- head/sys/arm64/linux/syscalls.master	Fri Jul  6 19:33:58 2018	(r336042)
+++ head/sys/arm64/linux/syscalls.master	Fri Jul  6 19:44:49 2018	(r336043)
@@ -403,8 +403,8 @@
 218	AUE_NULL	STD	{ int linux_request_key(void); }
 219	AUE_NULL	STD	{ int linux_keyctl(void); }
 220	AUE_RFORK	STD	{ int linux_clone(l_int flags, void *stack, \
-				    void *parent_tidptr, void *child_tidptr, \
-				    void *tls); }
+				    void *parent_tidptr, void *tls, \
+				    void *child_tidptr); }
 221	AUE_EXECVE	STD	{ int linux_execve(char *path, char **argp, \
 				    char **envp); }
 222	AUE_MMAP	STD	{ int linux_mmap2(l_ulong addr, l_ulong len, \


More information about the svn-src-all mailing list