xref: /openbmc/linux/mm/debug_page_ref.c (revision e3d786a3)
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 
8 void __page_ref_set(struct page *page, int v)
9 {
10 	trace_page_ref_set(page, v);
11 }
12 EXPORT_SYMBOL(__page_ref_set);
13 EXPORT_TRACEPOINT_SYMBOL(page_ref_set);
14 
15 void __page_ref_mod(struct page *page, int v)
16 {
17 	trace_page_ref_mod(page, v);
18 }
19 EXPORT_SYMBOL(__page_ref_mod);
20 EXPORT_TRACEPOINT_SYMBOL(page_ref_mod);
21 
22 void __page_ref_mod_and_test(struct page *page, int v, int ret)
23 {
24 	trace_page_ref_mod_and_test(page, v, ret);
25 }
26 EXPORT_SYMBOL(__page_ref_mod_and_test);
27 EXPORT_TRACEPOINT_SYMBOL(page_ref_mod_and_test);
28 
29 void __page_ref_mod_and_return(struct page *page, int v, int ret)
30 {
31 	trace_page_ref_mod_and_return(page, v, ret);
32 }
33 EXPORT_SYMBOL(__page_ref_mod_and_return);
34 EXPORT_TRACEPOINT_SYMBOL(page_ref_mod_and_return);
35 
36 void __page_ref_mod_unless(struct page *page, int v, int u)
37 {
38 	trace_page_ref_mod_unless(page, v, u);
39 }
40 EXPORT_SYMBOL(__page_ref_mod_unless);
41 EXPORT_TRACEPOINT_SYMBOL(page_ref_mod_unless);
42 
43 void __page_ref_freeze(struct page *page, int v, int ret)
44 {
45 	trace_page_ref_freeze(page, v, ret);
46 }
47 EXPORT_SYMBOL(__page_ref_freeze);
48 EXPORT_TRACEPOINT_SYMBOL(page_ref_freeze);
49 
50 void __page_ref_unfreeze(struct page *page, int v)
51 {
52 	trace_page_ref_unfreeze(page, v);
53 }
54 EXPORT_SYMBOL(__page_ref_unfreeze);
55 EXPORT_TRACEPOINT_SYMBOL(page_ref_unfreeze);
56