diff options
-rw-r--r-- | kernel/drivers/tty/ldisc.c | 2 | ||||
-rw-r--r-- | kernel/main/kmain.c | 3 |
2 files changed, 3 insertions, 2 deletions
diff --git a/kernel/drivers/tty/ldisc.c b/kernel/drivers/tty/ldisc.c index 4af35c5..1b79bae 100644 --- a/kernel/drivers/tty/ldisc.c +++ b/kernel/drivers/tty/ldisc.c @@ -215,6 +215,8 @@ void ldisc_key_pressed(ldisc_t *ldisc, char c) // cook the buffer ldisc->ldisc_cooked = ldisc->ldisc_head; + sched_wakeup_on(&ldisc->ldisc_read_queue, 0); + // emit a `\n` to the vterminal vterminal_write(&ldisc_to_tty(ldisc)->tty_vterminal, "\n", 1); break; diff --git a/kernel/main/kmain.c b/kernel/main/kmain.c index d46b2c0..4cec7bd 100644 --- a/kernel/main/kmain.c +++ b/kernel/main/kmain.c @@ -171,6 +171,7 @@ static void *initproc_run(long arg1, void *arg2) // dbg(DBG_PROC, "%s", "In main thread!\n"); #ifdef __DRIVERS__ + driverstest_main(0, NULL); char name[32] = {0}; for (long i = 0; i < __NTERMS__; i++) { @@ -179,8 +180,6 @@ static void *initproc_run(long arg1, void *arg2) kthread_t *thread = kthread_create(proc, kshell_proc_run, i, NULL); sched_make_runnable(thread); } - - driverstest_main(0, NULL); #endif // see if there are any children to wait for |