In account_system_time(), the current tick is accredited to SoftIRQ time
if softirq_count() is not 0. This value is incremented by
__local_bh_disable(), which is called from __do_softirq(). So far so
good. However, __local_bh_disable() is also called from
local_bh_disable(), which is called by other functions in the kernel.
The result is that if a timer interrupt happens when the kernel is
executing in a function that call local_bh_disable(), the tick is
accredited to SoftIRQ time.
Is this a bug, or is the statistics set up this way on purpose (or am I
missing something)?
Thanks,
Elad
--
To unsubscribe from this list: send an email with
"unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx
Please read the FAQ at http://kernelnewbies.org/FAQ