Messages in this thread | | | Date | Mon, 9 Nov 2015 16:19:16 -0800 | From | Jacob Pan <> | Subject | Re: [RFC PATCH 3/3] sched: introduce synchronized idle injection |
| |
On Fri, 6 Nov 2015 15:49:29 -0800 Jacob Pan <jacob.jun.pan@linux.intel.com> wrote:
> > Check the softirq stuff before calling throttle ? > > yes, played with it but it seems there are other cases causing pending > softirq in idle in addition to throttle. I still haven't figure it > out, this problem only shows up in heavy irq, network load. e.g. > compile kernel over NFS. Debugging. ok, I added a check for softirq_pending and a retry. seems to work. Now idle injection will allow softirq and softirqd to run. The caveat is that during that injection period, if softirqd does not run for the entire duration, other normal tasks would also run during forced idle. But just for that period. I guess we have to strike for the right balance for QoS and overhead. For most workload, pending softirq is rare so the tasks slip under softirqd are also rare. Will send out V2 soon.
Thanks,
Jacob
| |