[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <alpine.LFD.2.00.1008031217120.3225@localhost.localdomain>
Date: Tue, 3 Aug 2010 13:43:46 +0200 (CEST)
From: Thomas Gleixner <tglx@...utronix.de>
To: Tejun Heo <teheo@...e.de>
cc: lkml <linux-kernel@...r.kernel.org>, Jeff Garzik <jeff@...zik.org>,
Greg KH <gregkh@...e.de>
Subject: Re: [GIT PULL tip/genirq] Please pull from lost-spurious-irq
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@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists