|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] pvgrub: ignore NUL
Stefano Stabellini, le Thu 06 Nov 2014 10:41:28 +0000, a écrit :
> When using pvgrub in graphical mode with vnc, the grub timeout doesn't
> work: the countdown doesn't even start. With a serial terminal the
> problem doesn't occur and the countdown works as expected.
>
> It turns out that the problem is that when using a graphical terminal,
> checkkey () returns 0 instead of -1 when there is no activity on the
> mouse or keyboard. As a consequence grub thinks that the user typed
> something and interrupts the count down.
>
> To fix the issue simply ignore keystrokes returning 0, that is the NUL
> character anyway. Add a patch to grub.patches to do that.
>
> Signed-off-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>
> Tested-by: Steven Haigh <netwiz@xxxxxxxxx>
Acked-by: Samuel Thibault <samuel.thibault@xxxxxxxxxxxx>
>
> diff --git a/stubdom/grub.patches/11graphics-keyboard.diff
> b/stubdom/grub.patches/11graphics-keyboard.diff
> new file mode 100644
> index 0000000..fe17b20
> --- /dev/null
> +++ b/stubdom/grub.patches/11graphics-keyboard.diff
> @@ -0,0 +1,13 @@
> +diff --git a/stage2/stage2.c b/stage2/stage2.c
> +index 9d9fcc3..8353a3b 100644
> +--- a/stage2/stage2.c
> ++++ b/stage2/stage2.c
> +@@ -395,7 +395,7 @@ restart:
> + pressed.
> + This avoids polling (relevant in the grub-shell and later on
> + in grub if interrupt driven I/O is done). */
> +- if (checkkey () >= 0 || grub_timeout < 0)
> ++ if (checkkey () > 0 || grub_timeout < 0)
> + {
> + /* Key was pressed, show which entry is selected before GETKEY,
> + since we're comming in here also on GRUB_TIMEOUT == -1 and
>
--
Samuel
"And the next time you consider complaining that running Lucid Emacs
19.05 via NFS from a remote Linux machine in Paraguay doesn't seem to
get the background colors right, you'll know who to thank."
(By Matt Welsh)
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |