On 2016年10月06日 20:56, Jan Beulich wrote: >>>> On 30.09.16 at 04:19, <tianyu....@intel.com> wrote: >> --- a/xen/common/timer.c >> +++ b/xen/common/timer.c >> @@ -530,6 +530,7 @@ static void dump_timerq(unsigned char key) >> { >> ts = &per_cpu(timers, i); >> >> + process_pending_softirqs(); >> printk("CPU%02d:\n", i); >> spin_lock_irqsave(&ts->lock, flags); >> for ( j = 1; j <= GET_HEAP_SIZE(ts->heap); j++ ) > > Hmm - is that enough when there are many timers on one CPU? But > well, adding something inside the lock region would of course make > things quite a bit harder, so I guess this has to be enough for now. >
Yes, it's hard to add process_pending_softirqs() under lock just like you said. I search init_timer() and there are 28 callers. Printing 28 lines of timer info is supposed to last a brief of time. -- Best regards Tianyu Lan _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org https://lists.xen.org/xen-devel