mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-05 02:21:52 +09:00
ANDROID: mm: add kswapd wake/done rvh
These restricted hooks are needed for cases when vendor implementation needs to call sleeping functions. See the bug for details. Bug: 379922825 Change-Id: I0e5626bed930830caf7f96a5b051b3174f4cf250 Signed-off-by: Dmitry Skiba <dskiba@google.com>
This commit is contained in:
@@ -383,6 +383,8 @@ EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_compaction_try_to_compact_pages_exit);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mm_alloc_pages_direct_reclaim_enter);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mm_alloc_pages_direct_reclaim_exit);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mm_alloc_pages_may_oom_exit);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_vmscan_kswapd_wake);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_vmscan_kswapd_done);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_vmscan_kswapd_done);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mm_compaction_begin);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mm_compaction_end);
|
||||
|
||||
@@ -53,6 +53,13 @@ DECLARE_HOOK(android_vh_vmscan_kswapd_done,
|
||||
TP_PROTO(int node_id, unsigned int highest_zoneidx, unsigned int alloc_order,
|
||||
unsigned int reclaim_order),
|
||||
TP_ARGS(node_id, highest_zoneidx, alloc_order, reclaim_order));
|
||||
DECLARE_RESTRICTED_HOOK(android_rvh_vmscan_kswapd_wake,
|
||||
TP_PROTO(int node_id, unsigned int highest_zoneidx, unsigned int alloc_order),
|
||||
TP_ARGS(node_id, highest_zoneidx, alloc_order), 1);
|
||||
DECLARE_RESTRICTED_HOOK(android_rvh_vmscan_kswapd_done,
|
||||
TP_PROTO(int node_id, unsigned int highest_zoneidx, unsigned int alloc_order,
|
||||
unsigned int reclaim_order),
|
||||
TP_ARGS(node_id, highest_zoneidx, alloc_order, reclaim_order), 1);
|
||||
DECLARE_HOOK(android_vh_handle_trylock_failed_folio,
|
||||
TP_PROTO(struct list_head *folio_list),
|
||||
TP_ARGS(folio_list));
|
||||
|
||||
@@ -7874,8 +7874,12 @@ kswapd_try_sleep:
|
||||
*/
|
||||
trace_mm_vmscan_kswapd_wake(pgdat->node_id, highest_zoneidx,
|
||||
alloc_order);
|
||||
trace_android_rvh_vmscan_kswapd_wake(pgdat->node_id, highest_zoneidx,
|
||||
alloc_order);
|
||||
reclaim_order = balance_pgdat(pgdat, alloc_order,
|
||||
highest_zoneidx);
|
||||
trace_android_rvh_vmscan_kswapd_done(pgdat->node_id, highest_zoneidx,
|
||||
alloc_order, reclaim_order);
|
||||
trace_android_vh_vmscan_kswapd_done(pgdat->node_id, highest_zoneidx,
|
||||
alloc_order, reclaim_order);
|
||||
if (reclaim_order < alloc_order)
|
||||
|
||||
Reference in New Issue
Block a user