1// SPDX-License-Identifier: GPL-2.0
2#include <linux/mm_types.h>
3#include <linux/tracepoint.h>
4
5#define CREATE_TRACE_POINTS
6#include <trace/events/page_ref.h>
7
8void __page_ref_set(struct page *page, int v)
9{
10 trace_page_ref_set(page, v);
11}
12EXPORT_SYMBOL(__page_ref_set);
13EXPORT_TRACEPOINT_SYMBOL(page_ref_set);
14
15void __page_ref_mod(struct page *page, int v)
16{
17 trace_page_ref_mod(page, v);
18}
19EXPORT_SYMBOL(__page_ref_mod);
20EXPORT_TRACEPOINT_SYMBOL(page_ref_mod);
21
22void __page_ref_mod_and_test(struct page *page, int v, int ret)
23{
24 trace_page_ref_mod_and_test(page, v, ret);
25}
26EXPORT_SYMBOL(__page_ref_mod_and_test);
27EXPORT_TRACEPOINT_SYMBOL(page_ref_mod_and_test);
28
29void __page_ref_mod_and_return(struct page *page, int v, int ret)
30{
31 trace_page_ref_mod_and_return(page, v, ret);
32}
33EXPORT_SYMBOL(__page_ref_mod_and_return);
34EXPORT_TRACEPOINT_SYMBOL(page_ref_mod_and_return);
35
36void __page_ref_mod_unless(struct page *page, int v, int u)
37{
38 trace_page_ref_mod_unless(page, v, ret: u);
39}
40EXPORT_SYMBOL(__page_ref_mod_unless);
41EXPORT_TRACEPOINT_SYMBOL(page_ref_mod_unless);
42
43void __page_ref_freeze(struct page *page, int v, int ret)
44{
45 trace_page_ref_freeze(page, v, ret);
46}
47EXPORT_SYMBOL(__page_ref_freeze);
48EXPORT_TRACEPOINT_SYMBOL(page_ref_freeze);
49
50void __page_ref_unfreeze(struct page *page, int v)
51{
52 trace_page_ref_unfreeze(page, v);
53}
54EXPORT_SYMBOL(__page_ref_unfreeze);
55EXPORT_TRACEPOINT_SYMBOL(page_ref_unfreeze);
56

source code of linux/mm/debug_page_ref.c