From 7ff5ed932568a8049c3ca134da374f64c3e255ce Mon Sep 17 00:00:00 2001 From: Mike Frysinger Date: Thu, 5 Apr 2012 01:52:25 -0400 Subject: [PATCH] Fix indefinite hang on no-mmu systems The ptrace setoptions code will fork a child which goes to sleep and expects the parent to continue on to do tests. Unfortunately, this does not work on no-mmu systems as fork() is actually vfork() and any vforked children will hang the parent until it exits or execs. We might be able to make this test work on no-mmu systems with a bit of work, but easier to just disable this for the release so it works now. * strace.c (test_ptrace_setoptions_for_all): Return if strace_vforked. Signed-off-by: Mike Frysinger --- strace.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/strace.c b/strace.c index 3ad037d3..1097b0c1 100644 --- a/strace.c +++ b/strace.c @@ -1285,6 +1285,10 @@ test_ptrace_setoptions_for_all(void) int pid; int it_worked = 0; + /* this fork test doesn't work on no-mmu systems */ + if (strace_vforked) + return; + pid = fork(); if (pid < 0) perror_msg_and_die("fork"); -- 2.40.0