You've already forked linux-rockchip
mirror of
https://github.com/armbian/linux-rockchip.git
synced 2026-01-06 11:08:10 -08:00
Revert "Revert "ANDROID: vendor_hooks:vendor hook for __alloc_pages_slowpath.""
This reverts commit cc51dcbc60.
Reason for revert: The vendor hooks were reverted but they are needed.
Bug: 243629905
Signed-off-by: xiaofeng <xiaofeng5@xiaomi.com>
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
Change-Id: I4b2eab1a9bf3bbbb200f9d09f2c57fb4d9f2c143
This commit is contained in:
@@ -465,6 +465,8 @@ EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_alloc_si);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_free_pages);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_set_shmem_page_flag);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_sched_pelt_multiplier);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_alloc_pages_reclaim_bypass);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_alloc_pages_failure_bypass);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_check_page_look_around_ref);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_look_around);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_look_around_migrate_page);
|
||||
|
||||
@@ -287,6 +287,14 @@ DECLARE_HOOK(android_vh_set_shmem_page_flag,
|
||||
DECLARE_HOOK(android_vh_remove_vmalloc_stack,
|
||||
TP_PROTO(struct vm_struct *vm),
|
||||
TP_ARGS(vm));
|
||||
DECLARE_HOOK(android_vh_alloc_pages_reclaim_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_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_test_clear_look_around_ref,
|
||||
TP_PROTO(struct page *page),
|
||||
TP_ARGS(page));
|
||||
|
||||
@@ -4956,6 +4956,12 @@ retry:
|
||||
if (current->flags & PF_MEMALLOC)
|
||||
goto nopage;
|
||||
|
||||
trace_android_vh_alloc_pages_reclaim_bypass(gfp_mask, order,
|
||||
alloc_flags, ac->migratetype, &page);
|
||||
|
||||
if (page)
|
||||
goto got_pg;
|
||||
|
||||
/* Try direct reclaim and then allocating */
|
||||
page = __alloc_pages_direct_reclaim(gfp_mask, order, alloc_flags, ac,
|
||||
&did_some_progress);
|
||||
@@ -5071,6 +5077,11 @@ nopage:
|
||||
goto retry;
|
||||
}
|
||||
fail:
|
||||
trace_android_vh_alloc_pages_failure_bypass(gfp_mask, order,
|
||||
alloc_flags, ac->migratetype, &page);
|
||||
if (page)
|
||||
goto got_pg;
|
||||
|
||||
warn_alloc(gfp_mask, ac->nodemask,
|
||||
"page allocation failure: order:%u", order);
|
||||
got_pg:
|
||||
|
||||
Reference in New Issue
Block a user