This patch fixes an issue that prevented the at_keyboard module to work (for me). The cause was a bad/wrong return value in the grub_at_keyboard_getkey() function in grub-core/term/at_keyboard.c file at line 237. My symptoms were to have an unresponsive keyboard. Keys needed to be pressed 10x and more to effectively be printed sometimes generating multiple key presses (after 1 or 2 sec of no printing). It was very problematic when typing passphrase in early stage (with GRUB_ENABLE_CRYPTODISK). When switched to "console" terminal input keyboard worked perfectly. It also worked great with the GRUB 2.02 packaged by Debian (2.02+dfsg1-20). It was not an output issue but an input one. I've managed to analyze the issue and found that it came from the commit 216950a4e (at_keyboard: Split protocol from controller code.). Three lines where moved from the fetch_key() function in grub-core/term/at_keyboard.c file to the beginning of grub_at_keyboard_getkey() function (same file). However, returning -1 made sense when it happened in fetch_key() function but not anymore in grub_at_keyboard_getkey() function which should return GRUB_TERM_NO_KEY. I think it was just an incomplete cut-paste missing a small manual correction. Let's fix it. Note: Commit message updated by Daniel Kiper. Signed-off-by: Michael Bideau <mica.devel@gmail.com> Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
This is GRUB 2, the second version of the GRand Unified Bootloader. GRUB 2 is rewritten from scratch to make GNU GRUB cleaner, safer, more robust, more powerful, and more portable. See the file NEWS for a description of recent changes to GRUB 2. See the file INSTALL for instructions on how to build and install the GRUB 2 data and program files. Please visit the official web page of GRUB 2, for more information. The URL is <http://www.gnu.org/software/grub/grub.html>. More extensive documentation is available in the Info manual, accessible using 'info grub' after building and installing GRUB 2. There are a number of important user-visible differences from the first version of GRUB, now known as GRUB Legacy. For a summary, please see: info grub Introduction 'Changes from GRUB Legacy'
Description
Languages
C
82.5%
Assembly
13.6%
M4
1.4%
Shell
1.3%
Makefile
0.5%
Other
0.5%