ash busy waiting for imaginary child processes

Andreas Bühmann buehmann at users.berlios.de
Sat Oct 6 06:31:10 PDT 2007


Hello,

there seems to be a problem in the job management of ash (testet with
busybox 1.7.2 and SVN revision #20187). Please try this:

sleep 1 &
{ sleep 2; jobs; wait; echo done; } &

This prints "[1] + Running" despite the process created in line 2 not
having any child processes when "jobs" gets executed. The subsequent
"wait" then consumes 100% cpu waiting for this non-existing job to finish.

After having taken a quick look into the code, I suspect this behavior
to be connected with change #19092 (ash: make "jobs | cat" work like in
bash (was giving empty output)) but I don't know enough about the job
management to examine this more closely.

Regards,

Andreas


More information about the busybox mailing list