Re: [GIT PULL tip/genirq] Please pull from lost-spurious-irq
From: Thomas Gleixner
Date: Tue Aug 03 2010 - 07:44:01 EST
Tejun,
On Tue, 3 Aug 2010, Tejun Heo wrote:
> I agree that timer multiplexing is a rather ugly thing and it would be
> great to remove it. You're right that it doesn't make whole lot of
> difference whether the timer is global or local if it's low frequency
> and in fast paths expect/unexpect would be able to just test its list
> entry and set/clear currently expecting status without messing with
> the global timer or lock. Then, we can have a single low freq timer
> for expect/unexpect and the other for actual polling.
And the third one for watch, right ? That would give us separate timer
functions which each serve a particular purpose.
When you go for it, can you please simplify all the heuristics?
spurious poll:
One fixed poll interval is enough. The retry logic can be made
simple, just set it back to interrupt delivery once per minute and
limit the storm to 10.
watch:
Get rid of the interrupt context work and do all the work in the
timer. Use a fixed interval and either keep it forever or remove it.
expect:
Use a slow fixed interval and just do the expect/unexpect fast
marking. A nice thing would be to have a counter of expect calls so
we can switch off the timer when there is no activity within 10
seconds.
> How does that sound to you?
Way better. :)
Thanks,
tglx
--
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/