Hi,
I wrote a few patches for qemu [1] and patch 10/11 exposes a bug in seabios.
Sometimes the PS/2 keyboard initialization fails and seabios doesn't detect the keyboard. This patch fixes the PS/2 keyboard initialization.
I wouldn't be surprised if my patch also fixes PS/2 keyboard initialization problems on bare metal. A few bug reports look very similar to what I see on my computer with qemu.
With best regards, Volker
v2: Kevin suggested to call check_irqs() in run_thread().
v3: Add a new patch to fix the asm constraints in run_thread(). The changes are required for the next patch.
Kevin suggested to call check_irqs() after the new thread ran in run_thread(). Fixed an error in the commit message.
Call check_irqs() after switch_next() in yield().
v4: Drop the patch to fix the asm constraints in run_thread().
Rename cur to edx in the asm constraints in run_thread() to make it clear that edx is clobbered after the asm statement.
Volker Rümelin (2): stacks: call check_irqs() in run_thread() stacks: call check_irqs() after switch_next()
src/stacks.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-)