in reply to Re: Ulimit makes program hang (bug)
in thread Ulimit makes program hang
It would seem so. I run the script under strace and found that the qx op doesn't use fork syscall on my perl (Ubuntu Hardy), but clone syscall:
21696 clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETT +ID|SIGCHLD, child_tidptr=0x7f6015248770) = 21697 21697 close(5) = 0 21697 fcntl(6, F_SETFD, FD_CLOEXEC) = 0 21697 dup2(4, 1) = 1 21697 close(4) = 0 21697 close(3) = 0 21697 rt_sigaction(SIGFPE, {SIG_DFL}, {SIG_IGN}, 8) = 0 21697 execve("./my_program", ["./my_program"], [/* 11 vars */] <unfini +shed ...>
21742 clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETT +ID|SIGCHLD, child_tidptr=0x7f4143c25770) = -1 EAGAIN (Resource tempor +arily unavailable) 21742 rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0 21742 rt_sigaction(SIGCHLD, NULL, {SIG_DFL}, 8) = 0 21742 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 21742 nanosleep({5, 0}, <unfinished ...>
The problem is that the nanosleep syscall should not be happening.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^3: Ulimit makes program hang (bug)
by memo2005 (Initiate) on Aug 13, 2008 at 18:14 UTC |