On Mon, Jan 25, 2016 at 04:46:35PM +0100, Ingo Molnar wrote: > > Of course, it'll be our luck that tracking the data for these > > tracepoints is the most expensive part of schedstats ... > > > > Ingo? > > IIRC it needed only a small subset of schedstats to make those tracepoints > work. > > We already have too much overhead in the scheduler as-is - and the extra > cache > footprint does not even show on the typically cache-rich enterprise CPUs most > of > the scalability testing goes on. > > My minimum requirement for such runtime enablement would be to make it > entirely > static-branch patched and triggered at the call sites as well - not hidden > inside > schedstat functions. >
As it is, it's static-branch patched but I'm struggling to see why they cannot be hidden in the schedstat_* functions which are just preprocessor macros. The checks could be put in the callsites but it's a lot of updates and I don't think the end result would be very nice to read. -- Mel Gorman SUSE Labs

