[BusyBox] STANDALONE_SHELL in 1.00-pre

Scott Murray scottm at somanetworks.com
Tue Oct 28 21:15:20 UTC 2003


Recently while experimenting with upgrading our in-house Linux distros 
from BB 0.60.5 to 1.00-pre3, I stumbled over a problem that Denis Vlasenko 
(vda at port.imtp.ilyichevsk.odessa.ua) posted about in July, namely that 
since 1.00-pre1 the logic in ash.c's tryexec function breaks when you do
a pivot_root.  The reason for this is that tryexec execve's "/bin/busybox 
applet" to run applets now instead of calling run_applet_by_name as it did
in the past.  If you're using BB in an initrd that loads the real root 
filesystem as we do, this is a bit inconvenient, since /bin/busybox might
not be present after the pivot_root, or it might not have the desired 
applet.  There are also has some performance implications; previous 
measurements one of our developers did on our 200MHz SA1100 based embedded 
system showed that fork took ~25ms and a subsequent exec took another 

Is anyone interested in a patch that changes tryexec back to using
run_applet_by_name when STANDALONE_SHELL is enabled, or is the current
behaviour desired for process title reasons (or something else I'm 


Scott Murray
SOMA Networks, Inc.
Toronto, Ontario
e-mail: scottm at somanetworks.com

More information about the busybox mailing list