Hi Rik, 2016-07-13 22:50 GMT+08:00 Frederic Weisbecker <fweis...@gmail.com>: > From: Rik van Riel <r...@redhat.com> > > Currently, if there was any irq or softirq time during 'ticks' > jiffies, the entire period will be accounted as irq or softirq > time. > > This is inaccurate if only a subset of the time was actually spent > handling irqs, and could conceivably mis-count all of the ticks during > a period as irq time, when there was some irq and some softirq time. > > This can actually happen when irqtime_account_process_tick is called > from account_idle_ticks, which can pass a larger number of ticks down > all at once. > > Fix this by changing irqtime_account_hi_update, irqtime_account_si_update, > and steal_account_process_ticks to work with cputime_t time units, and > return the amount of time spent in each mode.
Do we need to minus st cputime from idle cputime in account_idle_ticks() when noirqtime is true? I try to add this logic w/ noirqtime and idle=poll boot parameter for a full dynticks guest, however, there is no difference, where I miss? Regards, Wanpeng Li