Messages in this thread | | | Subject | Re: [PATCH] mm: add resched points to remap_pmd_range/ioremap_pmd_range | From | Mike Galbraith <> | Date | Thu, 30 Jul 2015 20:55:21 +0200 |
| |
On Thu, 2015-07-30 at 09:58 -0700, Jörn Engel wrote: > On Thu, Jul 30, 2015 at 05:22:55PM +0200, Mike Galbraith wrote: > > > > I piddled about with the thought that it might be nice to be able to > > sprinkle cond_resched() about to cut rt latencies without wrecking > > normal load throughput, cobbled together a cond_resched_rt(). > > > > On my little box that was a waste of time, as the biggest hits are block > > softirq and free_hot_cold_page_list(). > > Block softirq is one of our problems as well. It is a bit of a joke > that __do_softirq() moves work to ksoftirqd after 2ms, but block softirq > can take several 100ms in bad cases. > > We could give individual softirqs a time budget. If they exceed the > budget they should complete, but reassert themselves. Not sure about > the rest, but that would be pretty simple to implement for block > softirq.
Yeah, it wants something, not sure what though. Fix up every spot that hinders rt performance, you'll end up with PREEMPT_RT, and generic performance falls straight through the floor. Darn.
-Mike
| |