This patch sets active console to the serial console before running the
shell. Doing so fixes two issues:
* Fix job control.
* Set all env vars.
The user visible issues are less warnings (no more of this:
sh: cannot set terminal process group (-1): Inappropriate ioctl for device
sh: no job control in this shell)
A working 'top', and a working ctrl-c.
Signed-off-by: Sasha Levin <levinsasha928@gmail.com>
Signed-off-by: Pekka Enberg <penberg@kernel.org>
static int run_process(char *filename)
{
char *new_argv[] = { filename, NULL };
- char *new_env[] = { NULL };
+ char *new_env[] = { "TERM=linux" };
return execve(filename, new_argv, new_env);
}
do_mounts();
+ /* get session leader */
+ setsid();
+
+ /* set controlling terminal */
+ ioctl (0, TIOCSCTTY, 1);
+
puts("Starting '/bin/sh'...");
run_process("/bin/sh");