ANDROID: vendor_hook: Add hook in __free_pages()
Provide a vendor hook android_vh_free_pages to clear the information in struct page_ext, when the page is freed. Bug: 234214858 Signed-off-by: Bing Han <bing.han@transsion.com> Change-Id: Iac8e3a72f59f8d3ae16dbc93d94034fe4b627d61
This commit is contained in:

committed by
Treehugger Robot

parent
e064059673
commit
01680ae117
@@ -429,3 +429,4 @@ EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_unuse_swap_page);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_init_swap_info_struct);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_si_swapinfo);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_alloc_si);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_free_pages);
|
||||
|
@@ -212,6 +212,9 @@ DECLARE_HOOK(android_vh_si_swapinfo,
|
||||
DECLARE_HOOK(android_vh_alloc_si,
|
||||
TP_PROTO(struct swap_info_struct **p, bool *skip),
|
||||
TP_ARGS(p, skip));
|
||||
DECLARE_HOOK(android_vh_free_pages,
|
||||
TP_PROTO(struct page *page, unsigned int order),
|
||||
TP_ARGS(page, order));
|
||||
/* macro versions of hooks are no longer required */
|
||||
|
||||
#endif /* _TRACE_HOOK_MM_H */
|
||||
|
@@ -5180,6 +5180,7 @@ static inline void free_the_page(struct page *page, unsigned int order)
|
||||
|
||||
void __free_pages(struct page *page, unsigned int order)
|
||||
{
|
||||
trace_android_vh_free_pages(page, order);
|
||||
if (put_page_testzero(page))
|
||||
free_the_page(page, order);
|
||||
else if (!PageHead(page))
|
||||
|
Reference in New Issue
Block a user