ANDROID: Fix lost track action type in save_track_hash

Transmit the track action type to save_track_hash, otherwise we do not
know it is allocation stack or free stack.

Fixes: 8bc6337823c6 ("ANDROID: vendor_hooks: add hooks for slab memory leak debugging")
Bug: 184928480
Bug: 395197442
Signed-off-by: Liujie Xie <xieliujie@oppo.com>
Change-Id: I74c50c02cfb4ebbf3e9fecdf125e76946ff4e7d1
(cherry picked from commit 7d216e2512082853f4cf0c220a1b48119203144f)
Signed-off-by: huzhanyuan <huzhanyuan@oppo.com>
Signed-off-by: wengle <wengle@oppo.com>
This commit is contained in:
Liujie Xie
2021-06-24 10:10:14 +08:00
committed by Carlos Llamas
parent 203b0df23a
commit 3404298ae0
3 changed files with 6 additions and 0 deletions
+1
View File
@@ -365,6 +365,7 @@ EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_warn_alloc_tune_ratelimit);
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_warn_alloc_show_mem_bypass);
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_use_vm_swappiness);
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_tune_scan_control);
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_save_track_hash);
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_exit_signal);
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_process_madvise_bypass);
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_madvise_pageout_return_error);
+4
View File
@@ -12,6 +12,7 @@
struct shmem_inode_info;
struct folio;
struct folio_batch;
struct track;
DECLARE_RESTRICTED_HOOK(android_rvh_shmem_get_folio,
TP_PROTO(struct shmem_inode_info *info, struct folio **folio, int order),
@@ -325,6 +326,9 @@ DECLARE_HOOK(android_vh_alloc_pages_failure_bypass,
TP_PROTO(gfp_t gfp_mask, int order, int alloc_flags,
int migratetype, struct page **page),
TP_ARGS(gfp_mask, order, alloc_flags, migratetype, page));
DECLARE_HOOK(android_vh_save_track_hash,
TP_PROTO(bool alloc, struct track *p),
TP_ARGS(alloc, p));
#endif /* _TRACE_HOOK_MM_H */
/* This part must be outside protection */
+1
View File
@@ -996,6 +996,7 @@ static void set_track_update(struct kmem_cache *s, void *object,
p->cpu = smp_processor_id();
p->pid = current->pid;
p->when = jiffies;
trace_android_vh_save_track_hash(alloc == TRACK_ALLOC, p);
}
static __always_inline void set_track(struct kmem_cache *s, void *object,