On Wed, Jul 13, 2016 at 06:01:28PM -0400, Tejun Heo wrote: > Technically, I think the lglock approach would be better here given > the combination of requirements; however, it's quite a bit more code > which would likely require some sophistications down the line (like > blocking new readers first at the start of down_write).
So the immediate problem with lg style locks is that the 'local' lock will not stay local since these are preemptible locks we can get migrations etc.. All fixable, but still. > If we have to > go there, we'll go there but for now I think it'd be simpler to > conditionally switch to the expedited operations. It can be a config > option which is selected by !RT as you suggested. If anyone hits an > actual issue with that, we can go for the lglock thing. So the main objection I have is that this isn't a fundamental fix, this only cures things because Android only runs on small machines. If someone with a big computer tries to do the same things we're up some creek without no paddle. There's just no way we can make a global writer 'fast'.