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 [EMAIL PROTECTED]
Please read the FAQ at http://kernelnewbies.org/FAQ

Reply via email to