<div dir="ltr"><div dir="ltr"><div class="gmail_default" style="font-size:small"><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Jun 13, 2019 at 3:25 PM Jan Stancek <<a href="mailto:jstancek@redhat.com">jstancek@redhat.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Test crashes (SIGBUS) when using child stack have been observed for<br>
ioctl_ns01. This is because stack isn't aligned. Use ltp_alloc_stack()<br>
for stack allocation.<br>
<br>
Add SIGCHLD to clone flags, so that LTP library can reap all children<br>
and check their return code.  Also check ltp_clone() return value.<br>
<br>
Suppress warning for unused *arg in child().<br>
<br>
Signed-off-by: Jan Stancek <<a href="mailto:jstancek@redhat.com" target="_blank">jstancek@redhat.com</a>><br>
---<br>
 testcases/kernel/syscalls/ioctl/ioctl_ns01.c | 13 +++++++++----<br>
 testcases/kernel/syscalls/ioctl/ioctl_ns05.c | 12 +++++++++---<br>
 testcases/kernel/syscalls/ioctl/ioctl_ns06.c | 15 +++++++++++----<br>
 3 files changed, 29 insertions(+), 11 deletions(-)<br>
<br>
diff --git a/testcases/kernel/syscalls/ioctl/ioctl_ns01.c b/testcases/kernel/syscalls/ioctl/ioctl_ns01.c<br>
index dfde4da6c5d6..d241a5d0fa53 100644<br>
--- a/testcases/kernel/syscalls/ioctl/ioctl_ns01.c<br>
+++ b/testcases/kernel/syscalls/ioctl/ioctl_ns01.c<br>
@@ -23,7 +23,7 @@<br>
<br>
 #define STACK_SIZE (1024 * 1024)<br>
<br>
-static char child_stack[STACK_SIZE];<br>
+static char *child_stack;<br>
<br>
 static void setup(void)<br>
 {<br>
@@ -31,6 +31,10 @@ static void setup(void)<br>
<br>
        if (exists < 0)<br>
                tst_res(TCONF, "namespace not available");<br>
+<br>
+       child_stack = ltp_alloc_stack(STACK_SIZE);<br></blockquote><div><br></div><div><div class="gmail_default" style="font-size:small">As you commented that "User is responsible for freeing allocated memory", but you forget to do that in each of these test cases :).</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">We need free(child_stack) in the cleanup function.</div></div><div><br></div></div>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div>Regards,<br></div><div>Li Wang<br></div></div></div></div>