[CC Josh - the whole series is http://lkml.kernel.org/r/153365347929.19074.12509495712735843805.stgit@localhost.localdomain] On Wed 08-08-18 13:17:44, Kirill Tkhai wrote: > On 08.08.2018 10:20, Michal Hocko wrote: > > On Tue 07-08-18 18:37:36, Kirill Tkhai wrote: > >> This patch kills all CONFIG_SRCU defines and > >> the code under !CONFIG_SRCU. > > > > The last time somebody tried to do this there was a pushback due to > > kernel tinyfication. So this should really give some numbers about the > > code size increase. Also why can't we make this depend on MMU. Is > > anybody else than the reclaim asking for unconditional SRCU usage? > > I don't know one. The size numbers (sparc64) are: > > $ size image.srcu.disabled > text data bss dec hex filename > 5117546 8030506 1968104 15116156 e6a77c image.srcu.disabled > $ size image.srcu.enabled > text data bss dec hex filename > 5126175 8064346 1968104 15158625 e74d61 image.srcu.enabled > The difference is: 15158625-15116156 = 42469 ~41Kb > > Please, see the measurement details to my answer to Stephen. > > > Btw. I totaly agree with Steven. This is a very poor changelog. It is > > trivial to see what the patch does but it is far from clear why it is > > doing that and why we cannot go other ways. > We possibly can go another way, and there is comment to [2/10] about this. > Percpu rwsem may be used instead, the only thing, it is worse, is it will > make shrink_slab() wait unregistering shrinkers, while srcu-based > implementation does not require this. Well, if unregisterring doesn't do anything subtle - e.g. an allocation or take locks which depend on allocation - and we can guarantee that then blocking shrink_slab shouldn't be a big deal. It is subtle though. Maybe subtle enough to make unconditional SRCU worth it. This all should be in the changelog though. > This may be not a big problem. > But, if SRCU is real problem for embedded people, I really don't want they > hate me in the future because of this, so please CC someone if you know :) I guess Josh was trying to pursue kernel tinification. -- Michal Hocko SUSE Labs