freebsd-dev/sys/boot/i386/common
Toomas Soome 0a7135391e boot2 will deadlock if extended keys are used on text input
The boot2 family of bootblocks (zfsboot/gptzfsboot) are using separate
implementation if keyboard reading code, which has deadlock case when
extended key (arrows etc) are pressed.

The problem is about avoiding the noise from some systems, generating
false key events with scan code 1 and ascii code 00, so the code
does attempt to filter such cases out. Unfortunately the extended keys
also set ascii 0, and therefore the pressed key event is ignored and
the keypress is never read, resulting in infinite loop.

This update is moving the check to keyhit() function and is allowing
the rest of the code to process the extended keys.

Reviewed by:	bapt, allanjude
Approved by:	allanjude (mentor)
MFC after:	1 month
Differential Revision:	https://reviews.freebsd.org/D8608
2016-12-30 18:21:52 +00:00
..
bootargs.h Implement GELI (AES-XTS and AES-CBC only) in gptboot and gptzfsboot 2016-03-16 23:12:19 +00:00
cons.c boot2 will deadlock if extended keys are used on text input 2016-12-30 18:21:52 +00:00
cons.h Add missing prototype for getchar(..) 2016-05-13 10:59:46 +00:00
drv.c zfsbootcfg: a simple tool to set next boot (one time) options for zfsboot 2016-10-29 14:09:32 +00:00
drv.h zfsbootcfg: a simple tool to set next boot (one time) options for zfsboot 2016-10-29 14:09:32 +00:00
edd.h