Messages in this thread Patch in this message | | | Date | Wed, 15 Jun 2022 11:41:48 +0200 | Subject | Re: [PATCH mm v6] mm/tracing: add 'accounted' entry into output of allocation tracepoints | From | Vlastimil Babka <> |
| |
On 6/3/22 05:21, Vasily Averin wrote: > Slab caches marked with SLAB_ACCOUNT force accounting for every > allocation from this cache even if __GFP_ACCOUNT flag is not passed. > Unfortunately, at the moment this flag is not visible in ftrace output, > and this makes it difficult to analyze the accounted allocations. > > This patch adds boolean "accounted" entry into trace output, > and set it to 'true' for calls used __GFP_ACCOUNT flag and > for allocations from caches marked with SLAB_ACCOUNT. > Set it to 'false' if accounting is disabled in configs. > > Signed-off-by: Vasily Averin <vvs@openvz.org> > Acked-by: Shakeel Butt <shakeelb@google.com> > Acked-by: Roman Gushchin <roman.gushchin@linux.dev> > Acked-by: Muchun Song <songmuchun@bytedance.com> > Reviewed-by: Hyeonggon Yoo <42.hyeyoo@gmail.com>
Thanks, added to slab/for-5.20/tracing
> > --- > v6: > 1) subject changed from "tracing:" to "mm/tracing:" > 2) set flag to 'false' if accounting is disabled in configs
Looks like you forgot the kmem_alloc_node variant, fixed up locally:
--- a/include/trace/events/kmem.h +++ b/include/trace/events/kmem.h @@ -94,8 +94,9 @@ DECLARE_EVENT_CLASS(kmem_alloc_node, __entry->bytes_alloc = bytes_alloc; __entry->gfp_flags = (__force unsigned long)gfp_flags; __entry->node = node; - __entry->accounted = (gfp_flags & __GFP_ACCOUNT) || - (s && s->flags & SLAB_ACCOUNT); + __entry->accounted = IS_ENABLED(CONFIG_MEMCG_KMEM) ? + ((gfp_flags & __GFP_ACCOUNT) || + (s && s->flags & SLAB_ACCOUNT)) : false; ), TP_printk("call_site=%pS ptr=%p bytes_req=%zu bytes_alloc=%zu gfp_flags=%s node=%d accounted=%s",
| |