On Fri, 2016-07-22 at 21:05 -0700, Tony Jones wrote: > On 07/22/2016 06:27 PM, Tony Jones wrote: > > On 07/20/2016 07:54 AM, Michal Hocko wrote: > > > > > > Michal, just to make sure I understand you correctly, do you > > > > mean that we > > > > could infer the names of the shrinkers by looking at the names > > > > of their callbacks? > > > > > > Yes, %ps can then be used for the name of the shrinker structure > > > (assuming it is available). > > > > This is fine for emitting via the ftrace /sys interface,  but in > > order to have the data [name] get  > > marshalled thru to perf (for example) you need to add it to the > > TP_fast_assign entry. > > > > tony > > Unfortunately, %ps/%pF doesn't do much (re:  Michal's comment > "assuming it is available"): > > -       TP_printk("%pF %p: nid: %d objects to shrink %ld gfp_flags %s > pgs_scanned %ld lru_pgs %ld cache items %ld delta %lld total_scan > %ld", > +       TP_printk("%pF %p(%ps): nid: %d objects to shrink %ld > gfp_flags %s pgs_scanned %ld lru_pgs %ld cache items %ld delta %lld > total_scan %ld", >                 __entry->shrink, >                 __entry->shr, > +               __entry->shr, >                 __entry->nid, >                 __entry->nr_objects_to_shrink, > > # cat trace_pipe >             bash-1917  [003] ...1  2925.941062: mm_shrink_slab_start: > super_cache_scan+0x0/0x1a0 ffff88042bb60cc0(0xffff88042bb60cc0): nid: > 0 objects to shrink 0 gfp_flags GFP_KERNEL pgs_scanned 1000 lru_pgs > 1000 cache items 4 delta 7 total_scan 7 > > > Otherwise what I was suggesting was something like this to ensure it > was correctly marshaled for perf/etc: > Janani, it may make sense to have the code Tony posted be part of your patch series. Just have both of your Signed-off-by: lines on that patch. -- All Rights Reversed.