Re: [GIT PULL tip/genirq] Please pull from lost-spurious-irq

From: Tejun Heo
Date: Mon Aug 02 2010 - 11:35:23 EST


On 08/02/2010 05:28 PM, Tejun Heo wrote:
> The reason why poll_irq() looks complicated is because different types
> of timers on the same desc shares the timer. The reason why it's
> shared this way instead of across different descs of the same type is
> to avoid locking overhead in maintaining the timer and linked lists of
> its targets. By sharing the timer in the same desc, everything can be
> protected by desc->lock but if we use timers across different descs,
> we need another layer of locking.

Ooh, another reason is timer locality. If timers are shared per desc,
they have much higher chance of being on the same processor. Global
timers would be pretty bad in that respect.

--
tejun
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/