On 05/17/11 18:28, Mulyadi Santosa wrote:
Hi Chris....
On Wed, May 18, 2011 at 03:11, Christopher Harvey <chris@basementcode.com> wrote:
I'm having a hard time finding out by reading documentation and source code if a system timer IRQ is supposed to be directed at all cores of a processor or if just interrupting one core is enough.
my take is if we don't use local timer interrupt, then logically (global timer) should interrupt all cores.
I came to this understanding after recalling a fact that timer is a way to trigger rescheduling after a time slice of a task is expired. SInce we can't assume anything on which core a task is currently running, then it would be easier if we just send interrupt to all cores.
Not sure if you are agree with my deduction above....
I half agree. The way I see it now, WITHOUT local timers a timer only needs to interrupt one core, and an IPI will interrupt the other. My question is: Does a global timer need to send an interrupt to both cores when local timers are enabled or is a a global timer interrupt on one core combined with the local timers enough? Thanks