Re: [PATCH 09/12] irq: implement IRQ expecting

From: Tejun Heo
Date: Thu Jun 17 2010 - 12:48:47 EST


On 06/17/2010 06:02 PM, Arjan van de Ven wrote:
> On Thu, 17 Jun 2010 17:54:48 +0200
> Tejun Heo <tj@xxxxxxxxxx> wrote:
>
>> Crazy devices too but I think they would
>> fall in a single tick any way.
>
> not sure what ticks have to do with anything but ok ;)

Eh... right, I was thinking about something else. IRQ expect code
originally had a tick based duration estimator to determine poll
interval which I ripped out later for simpler stepped adjustments.
c-state would need higher frequency timing measurements than jiffies.

>> At any rate, let's say I have those
>> numbers, how would I feed it into c-state selection?
>
> if we have this, we need to put a bit of glue in the backend that
> tracks (per cpu I suppose) the shortest expected interrupt, which
> the C state code then queries.
> (and in that regard, it does not matter if shortest expected is
> computed via heuristic on a per irq basis, or passed in).
>
> mapping an irq to a cpu is not a 100% science (since interrupts can
> move in theory), but just assuming that the irq will happen on the same
> CPU it happened last time is more than good enough.

Hmmm... the thing is that there will be many cases which won't fit
irq_expect() model (why irq_watch() exists in the first place) and for
the time being libata is the only one providing that data. Would the
data still be useful to determine which c-state to use?

Thanks.

--
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/