summaryrefslogtreecommitdiff
path: root/libbb
diff options
context:
space:
mode:
authorEric Andersen2003-07-05 08:29:01 +0000
committerEric Andersen2003-07-05 08:29:01 +0000
commit3c8064ff698d0d1d357e86dbf1d1f7673dac25c8 (patch)
tree80fe72fbe73b7239a0e8e27bf23524892a8a5bfc /libbb
parent40ea66cd9d06677cb24e2293e065c101c0dfa64b (diff)
downloadbusybox-3c8064ff698d0d1d357e86dbf1d1f7673dac25c8.zip
busybox-3c8064ff698d0d1d357e86dbf1d1f7673dac25c8.tar.gz
Daniel writes:
I've found a problem with job control when the init process is restarted. If the system boots for the first time, I get job control on a serial terminal - no problems. However, when I restart init by issuing "init -q", then the shell no longer has job control. I traced this a problem in console_init in the file init.c. What was happening after the restart is that the first compare if (ioctl(0, TIOCGSERIAL, &sr) == 0) { ... } else if (ioctl(0, VT_GETSTATE, &vt) == 0) { ... } else { ... // assume /dev/console } returned error and subsequently the code assumes /dev/console as the console, which does not support job control. Checking the errno after the first call showed that the system was complaining about the file descriptor. This is probably because the previous init process had closed all its file descriptors which the new init process had inherited.
Diffstat (limited to 'libbb')
0 files changed, 0 insertions, 0 deletions