about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>2017-07-19 11:45:37 -0300
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>2017-07-19 14:24:43 -0300
commitd500130f313572651e1d299f1677f8d677060fb2 (patch)
treeca44bd3b3941f7f8574992eba82e3199c6786146
parentf8cef4d07d9641e27629bd3ce2d13f5d702fb251 (diff)
downloadglibc-d500130f313572651e1d299f1677f8d677060fb2.tar.gz
glibc-d500130f313572651e1d299f1677f8d677060fb2.tar.xz
glibc-d500130f313572651e1d299f1677f8d677060fb2.zip
alpha: Fix clone exit syscall argument passing (BZ#21512)
This patch fixes the argument passing for exit syscall after
the clone function returns on hppa.  This fixes misc/tst-clone2
on alpha-linux-gnu.

Checked misc/tst-clone2 on alpha-linux-gnu.

	[BZ #21512]
	* sysdeps/unix/sysv/linux/alpha/clone.S (__clone): Fix argument
	passing to syscall exit.
-rw-r--r--ChangeLog5
-rw-r--r--sysdeps/unix/sysv/linux/alpha/clone.S1
2 files changed, 6 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 8618e26206..4a2ad6e675 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2017-07-19  Adhemerval Zanella  <adhemerval.zanella@linaro.org>
+
+	* sysdeps/unix/sysv/linux/alpha/clone.S (__clone): Fix argument
+	passing to syscall exit.
+
 2017-07-19  DJ Delorie  <dj@delorie.com>
 
 	* grp/grp-merge.c (libc_hidden_def): Fix cast-after-dereference.
diff --git a/sysdeps/unix/sysv/linux/alpha/clone.S b/sysdeps/unix/sysv/linux/alpha/clone.S
index 550461fb3b..e7ee0af258 100644
--- a/sysdeps/unix/sysv/linux/alpha/clone.S
+++ b/sysdeps/unix/sysv/linux/alpha/clone.S
@@ -98,6 +98,7 @@ thread_start:
 	jsr	ra, (pv)
 	ldgp	gp, 0(ra)
 
+	mov     v0, a0
 	ldiq	v0, __NR_exit
 	call_pal PAL_callsys