This may be a little more informative, if baffling (again, also posted to zsh-workers thread):
$ bash -c 'ulimit -t 0; ulimit -Ht; while :; do :; done' 0 Killed $ bash -c 'ulimit -t 0; ulimit -Ht; (while :; do :; done)' 0 <loops forever> $ bash -c 'ulimit -St 0; while :; do :; done' CPU time limit exceeded (core dumped) $ bash -c 'ulimit -St 0; (while :; do :; done)' <loops forever> We can see that for both hard and soft limits, the child is not stopped. (Note that bash's default is to set the hard limit, unlike zsh which sets soft. POSIX gives very little specification to ulimit whatsoever). But: $ zsh -c 'ulimit -Ht 0; ulimit -Ht; while :; do :; done' 0 <loops> $ zsh -c 'ulimit -Ht 0; (ulimit -Ht; while :; do :; done)' 0 <loops> $ zsh -c 'ulimit -St 0; ulimit -St; while :; do :; done' 0 CPU time limit exceeded (core dumped) $ zsh -c 'ulimit -St 0; (ulimit -St; while :; do :; done)' 0 CPU time limit exceeded (core dumped) Note that zsh's behavior seems to depend more on whether it's hard or soft, rather than whether it's the child or the original. I can't make heads nor tails of it, but /something/'s definitely screwy. ** Summary changed: - setrlimit can unlimit CPU by setting to 0 seconds (soft limits only) + setrlimit can unlimit CPU by setting to 0 seconds in some cases -- setrlimit can unlimit CPU by setting to 0 seconds in some cases https://bugs.launchpad.net/bugs/107209 You received this bug notification because you are a member of Ubuntu Bugs, which is the bug contact for Ubuntu. -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
