aboutsummaryrefslogtreecommitdiff
path: root/shell
diff options
context:
space:
mode:
authorandersen <andersen@69ca8d6d-28ef-0310-b511-8ec308f3f277>2003-07-29 06:33:12 +0000
committerandersen <andersen@69ca8d6d-28ef-0310-b511-8ec308f3f277>2003-07-29 06:33:12 +0000
commit429972b196d4da4a2d6f04f078563b40d5c895d5 (patch)
tree8305ff483e1c1348bb0436b176b63ec4cf53916e /shell
parent30654fd023e98636f4251409396ea54887445187 (diff)
downloadbusybox-w32-429972b196d4da4a2d6f04f078563b40d5c895d5.tar.gz
busybox-w32-429972b196d4da4a2d6f04f078563b40d5c895d5.tar.bz2
busybox-w32-429972b196d4da4a2d6f04f078563b40d5c895d5.zip
Yang Xiaopeng writes:
>I'm sure that no user process use old root now, but when run "umount >/old_root", it says: > umount: /old_root: Device or resource busy > >I have tried to remount /proc within the new root *after* chroot, but >get the same result. > > I found the problem, I said that no user process use old root when run my scripts, but I'm wrong, actually there is a '3' fd open the file "/old_root/dev/console". By adding debug message in init/init.c, I found the problem: when init restart(in exec_signal()), before open the new terminal device, there is still a file opened(I don't know which file it is), so the terminal device(stdin) get fd '1', and the first dup(0)(stdout) return '2', the second(stderr) return '3'. I attach a simple patch to solve this problem. git-svn-id: svn://busybox.net/trunk/busybox@7128 69ca8d6d-28ef-0310-b511-8ec308f3f277
Diffstat (limited to 'shell')
0 files changed, 0 insertions, 0 deletions