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, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>