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.
On my little desktop box, one blk_done_softirq() loop iteration can take up to a few milliseconds, leaving me wondering if breaking that loop will help a studly box much. iow, I'd like to know how bad it gets, if one iteration can be huge, loop breaking there is fairly pointless, and I can stop fiddling. Do you happen to know iteration time during a size huge block softirq hit? On my little box, loop break/re-raise and whatnot improves the general case substantially, but doesn't do much at all for worst case.. or rather the next worst case in a list of unknown length ;-) -Mike -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/