Author: Petr Machata <pmachata@apm-mustang-ev2-02.ml3.eng.bos.redhat.com>
Description: Set child stack alignment in trace-clone.c
This is important on aarch64, which requires 16-byte aligned
stack pointer. This might be relevant on other arches as well,
I suspect we just happened to get the 16-byte boundary in some
cases.
Applied-Upstream: http://anonscm.debian.org/gitweb/?p=collab-maint/ltrace.git;a=commit;h=0b5457a9e59978bcd2eb5240f54838910365a93c
Last-Update: 2014-03-13
Index: ltrace/testsuite/ltrace.minor/trace-clone.c
===================================================================
--- ltrace.orig/testsuite/ltrace.minor/trace-clone.c 2014-03-12 16:13:44.075726000 -0600
+++ ltrace/testsuite/ltrace.minor/trace-clone.c 2014-03-12 16:16:14.593150571 -0600
@@ -8,6 +8,7 @@
#include <sys/types.h>
#include <stdlib.h>
#include <sched.h>
+#include <unistd.h>
int child ()
{
@@ -22,7 +23,8 @@
int main ()
{
pid_t pid;
- static char stack[STACK_SIZE];
+ static __attribute__ ((aligned (16))) char stack[STACK_SIZE];
+
#ifdef __ia64__
pid = __clone2((myfunc)&child, stack, STACK_SIZE, CLONE_FS, NULL);
#else