On 10/12/2016 9:19 PM, Jan Beulich wrote:
On 12.10.16 at 09:58, <tianyu....@intel.com> wrote:
--- a/xen/drivers/char/console.c
+++ b/xen/drivers/char/console.c
@@ -347,7 +347,7 @@ static void switch_serial_input(void)
static void __serial_rx(char c, struct cpu_user_regs *regs)
{
if ( xen_rx )
- return handle_keypress(c, regs);
+ return handle_keypress(c, regs, true);
I think it would be nice to pass true here only when in polling mode,
unless you know or can deduce that the a similar problem also exists
in IRQ mode. Perhaps you could simply move the !in_irq() here?
That's a good idea. Thanks.
(Of course the new function parameter would then want to be renamed.)
Since the issue happens when handle_keypress() runs in a timer handler,
how about to name new parameter "intimer"? __serial_rx() is called in a
timer handler or interrupt handler. Or do you have other suggestion?
Jan
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel