[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH V3] Xen/Keyhandler: Rework process of nonirq keyhandler
>>> On 13.10.16 at 12:06, <tianyu.lan@xxxxxxxxx> wrote: > Keyhandler may run for a long time in serial port driver's > timer handler on the large machine with a lot of physical > cpus(e,g dump_timerq()) when serial port driver works in > the poll mode(via the exception mechanism). > > If a timer handler runs a long time, it will block nmi_timer_fn() > to feed NMI watchdog and cause Xen hypervisor panic. Inserting > process_pending_softirqs() in timer handler will not help. when timer > interrupt arrives, timer subsystem calls all expired timer handlers > before programming next timer interrupt. There is no timer interrupt > arriving to trigger timer softirq during run a timer handler. > > This patch is to fix the issue to make nonirq keyhandler run in > tasklet when receive debug key from serial port. > > Signed-off-by: Lan Tianyu <tianyu.lan@xxxxxxxxx> Reviewed-by: Jan Beulich <jbeulich@xxxxxxxx> with ... > --- a/xen/include/xen/keyhandler.h > +++ b/xen/include/xen/keyhandler.h > @@ -46,7 +46,9 @@ void register_irq_keyhandler(unsigned char key, > bool_t diagnostic); > > /* Inject a keypress into the key-handling subsystem. */ > -extern void handle_keypress(unsigned char key, struct cpu_user_regs *regs); > +extern void handle_keypress(unsigned char key, > + struct cpu_user_regs *regs, > + bool async); ... this also changed to force_tasklet. I guess the committer could, easily do that, but otoh I'm not sure we want/need this for 4.8 - Wei? Jan _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |