1 /*
2  * Copyright (C) 2024 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 #ifndef MEM_EVENTS_TEST_H_
18 #define MEM_EVENTS_TEST_H_
19 
20 #include <inttypes.h>
21 
22 #include <memevents/bpf_types.h>
23 
24 /* BPF-Prog Paths */
25 #define MEM_EVENTS_TEST_OOM_KILL_TP "/sys/fs/bpf/memevents/prog_bpfMemEventsTest_skfilter_oom_kill"
26 #define MEM_EVENTS_TEST_DIRECT_RECLAIM_START_TP \
27     "/sys/fs/bpf/memevents/prog_bpfMemEventsTest_skfilter_direct_reclaim_begin"
28 #define MEM_EVENTS_TEST_DIRECT_RECLAIM_END_TP \
29     "/sys/fs/bpf/memevents/prog_bpfMemEventsTest_skfilter_direct_reclaim_end"
30 #define MEM_EVENTS_TEST_KSWAPD_WAKE_TP \
31     "/sys/fs/bpf/memevents/prog_bpfMemEventsTest_skfilter_kswapd_wake"
32 #define MEM_EVENTS_TEST_KSWAPD_SLEEP_TP \
33     "/sys/fs/bpf/memevents/prog_bpfMemEventsTest_skfilter_kswapd_sleep"
34 
35 // clang-format off
36 const struct mem_event_t mocked_oom_event = {
37      .type = MEM_EVENT_OOM_KILL,
38      .event_data.oom_kill = {
39         .pid = 1234,
40         .uid = 4321,
41         .process_name = "fake_process",
42         .timestamp_ms = 1,
43         .oom_score_adj = 999,
44         .total_vm_kb = 123,
45         .anon_rss_kb = 321,
46         .file_rss_kb = 345,
47         .shmem_rss_kb = 543,
48         .pgtables_kb = 6789,
49 }};
50 
51 const struct mem_event_t mocked_kswapd_wake_event = {
52      .type = MEM_EVENT_KSWAPD_WAKE,
53      .event_data.kswapd_wake = {
54         .node_id = 1,
55         .zone_id = 0,
56         .alloc_order = 2,
57 }};
58 
59 const struct mem_event_t mocked_kswapd_sleep_event = {
60      .type = MEM_EVENT_KSWAPD_SLEEP,
61      .event_data.kswapd_sleep = {
62         .node_id = 3,
63 }};
64 // clang-format on
65 
66 #endif /* MEM_EVENTS_TEST_H_ */