ANDROID: vendor_hook: Add hook in si_swapinfo()
This reverts commit 86be1a3d9f
The hook android_vh_si_swapinfo is deleted, due to the symbol
is not added to the abi list. The symbol is added to the abi
list in patch:2183484. This patch is to add the hook
android_vh_si_swapinfo again.
Bug: 234214858
Bug: 203756332
Cc: Greg Kroah-Hartman <gregkh@google.com>
Signed-off-by: Bing Han <bing.han@transsion.com>
Change-Id: Ifd1e05f44ac04b67816618139badd5c2ee786b50
This commit is contained in:
@@ -443,5 +443,6 @@ EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_inactive_is_low);
|
|||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_snapshot_refaults);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_snapshot_refaults);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_account_swap_pages);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_account_swap_pages);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_unuse_swap_page);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_unuse_swap_page);
|
||||||
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_si_swapinfo);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_set_shmem_page_flag);
|
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_sched_pelt_multiplier);
|
||||||
|
@@ -245,6 +245,9 @@ DECLARE_HOOK(android_vh_account_swap_pages,
|
|||||||
DECLARE_HOOK(android_vh_unuse_swap_page,
|
DECLARE_HOOK(android_vh_unuse_swap_page,
|
||||||
TP_PROTO(struct swap_info_struct *si, struct page *page),
|
TP_PROTO(struct swap_info_struct *si, struct page *page),
|
||||||
TP_ARGS(si, page));
|
TP_ARGS(si, page));
|
||||||
|
DECLARE_HOOK(android_vh_si_swapinfo,
|
||||||
|
TP_PROTO(struct swap_info_struct *si, bool *skip),
|
||||||
|
TP_ARGS(si, skip));
|
||||||
DECLARE_HOOK(android_vh_set_shmem_page_flag,
|
DECLARE_HOOK(android_vh_set_shmem_page_flag,
|
||||||
TP_PROTO(struct page *page),
|
TP_PROTO(struct page *page),
|
||||||
TP_ARGS(page));
|
TP_ARGS(page));
|
||||||
|
@@ -3454,8 +3454,10 @@ void si_swapinfo(struct sysinfo *val)
|
|||||||
spin_lock(&swap_lock);
|
spin_lock(&swap_lock);
|
||||||
for (type = 0; type < nr_swapfiles; type++) {
|
for (type = 0; type < nr_swapfiles; type++) {
|
||||||
struct swap_info_struct *si = swap_info[type];
|
struct swap_info_struct *si = swap_info[type];
|
||||||
|
bool skip = false;
|
||||||
|
|
||||||
if ((si->flags & SWP_USED) && !(si->flags & SWP_WRITEOK))
|
trace_android_vh_si_swapinfo(si, &skip);
|
||||||
|
if (!skip && (si->flags & SWP_USED) && !(si->flags & SWP_WRITEOK))
|
||||||
nr_to_be_unused += si->inuse_pages;
|
nr_to_be_unused += si->inuse_pages;
|
||||||
}
|
}
|
||||||
val->freeswap = atomic_long_read(&nr_swap_pages) + nr_to_be_unused;
|
val->freeswap = atomic_long_read(&nr_swap_pages) + nr_to_be_unused;
|
||||||
|
Reference in New Issue
Block a user