Re: [RFC PATCH 2/3] softirq: implement interrupt flood detection

From: Peter Zijlstra
Date: Thu Dec 19 2019 - 04:23:36 EST


On Thu, Dec 19, 2019 at 09:59:48AM +0800, Ming Lei wrote:
> > So pray tell, why did you not integrate this with IRQ_TIME_ACCOUNTING ?
> > That already takes a timestamp and does most of what you need.
>
> Yeah, that was the 1st approach I thought of, but IRQ_TIME_ACCOUNTING
> may be disabled, and enabling it may cause observable effect on IO
> performance.

Is that an actual concern, are people disabling it?

> > > @@ -356,6 +512,7 @@ void irq_enter(void)
> > > }
> > >
> > > __irq_enter();
> > > + irq_interval_update();
> > > }
> >
> > Arggh.. you're going to make every single interrupt take at least 2
> > extra cache misses for this gunk?!?
>
> Could you explain it a bit why two cache misses are involved?
>
> I understand at most one miss is caused, which should only happen in
> irq_interval_update(), and what is the other one?

The rq clock thing IIRC.