1 /*
2 * Copyright (c) 2021 Huawei Device Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 * http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15 #include "htrace_mem_parser.h"
16 #include "clock_filter.h"
17 #include "htrace_event_parser.h"
18 #include "measure_filter.h"
19 #include "process_filter.h"
20 #include "stat_filter.h"
21 #include "symbols_filter.h"
22 #include "system_event_measure_filter.h"
23 namespace SysTuning {
24 namespace TraceStreamer {
HtraceMemParser(TraceDataCache * dataCache,const TraceStreamerFilters * ctx)25 HtraceMemParser::HtraceMemParser(TraceDataCache* dataCache, const TraceStreamerFilters* ctx)
26 : HtracePluginTimeParser(dataCache, ctx)
27 {
28 for (auto i = 0; i < MEM_MAX; i++) {
29 memNameDictMap_.insert(
30 std::make_pair(static_cast<MemInfoType>(i),
31 traceDataCache_->GetDataIndex(config_.memNameMap_.at(static_cast<MemInfoType>(i)))));
32 }
33 for (auto i = 0; i < SysMeminfoType::PMEM_KERNEL_RECLAIMABLE + 1; i++) {
34 sysMemNameDictMap_.insert(
35 std::make_pair(static_cast<SysMeminfoType>(i),
36 traceDataCache_->GetDataIndex(config_.sysMemNameMap_.at(static_cast<SysMeminfoType>(i)))));
37 }
38 for (auto i = 0; i < SysVMeminfoType::VMEMINFO_WORKINGSET_RESTORE + 1; i++) {
39 sysVMemNameDictMap_.insert(std::make_pair(
40 static_cast<SysVMeminfoType>(i),
41 traceDataCache_->GetDataIndex(config_.sysVirtualMemNameMap_.at(static_cast<SysVMeminfoType>(i)))));
42 }
43 }
44
~HtraceMemParser()45 HtraceMemParser::~HtraceMemParser()
46 {
47 TS_LOGI("mem ts MIN:%llu, MAX:%llu", static_cast<unsigned long long>(GetPluginStartTime()),
48 static_cast<unsigned long long>(GetPluginEndTime()));
49 }
Parse(const MemoryData & tracePacket,uint64_t timeStamp,BuiltinClocks clock)50 void HtraceMemParser::Parse(const MemoryData& tracePacket, uint64_t timeStamp, BuiltinClocks clock)
51 {
52 auto newTimeStamp = streamFilters_->clockFilter_->ToPrimaryTraceTime(clock, timeStamp);
53 UpdatePluginTimeRange(clock, timeStamp, newTimeStamp);
54 zram_ = tracePacket.zram();
55 if (tracePacket.processesinfo_size()) {
56 ParseProcessInfo(tracePacket, newTimeStamp);
57 }
58 if (tracePacket.meminfo_size()) {
59 ParseMemInfo(tracePacket, newTimeStamp);
60 }
61 if (tracePacket.vmeminfo_size()) {
62 ParseVMemInfo(tracePacket, newTimeStamp);
63 }
64 }
ParseProcessInfo(const MemoryData & tracePacket,uint64_t timeStamp) const65 void HtraceMemParser::ParseProcessInfo(const MemoryData& tracePacket, uint64_t timeStamp) const
66 {
67 if (tracePacket.processesinfo_size()) {
68 streamFilters_->statFilter_->IncreaseStat(TRACE_MEMORY, STAT_EVENT_RECEIVED);
69 }
70 for (int i = 0; i < tracePacket.processesinfo_size(); i++) {
71 auto memInfo = tracePacket.processesinfo(i);
72 auto ipid = streamFilters_->processFilter_->UpdateOrCreateProcessWithName(memInfo.pid(), memInfo.name());
73 uint32_t hasValue = 0;
74 hasValue += streamFilters_->processMeasureFilter_->AppendNewMeasureData(ipid, memNameDictMap_.at(MEM_VM_SIZE),
75 timeStamp, memInfo.vm_size_kb());
76 hasValue += streamFilters_->processMeasureFilter_->AppendNewMeasureData(ipid, memNameDictMap_.at(MEM_VM_RSS),
77 timeStamp, memInfo.vm_rss_kb());
78 hasValue += streamFilters_->processMeasureFilter_->AppendNewMeasureData(ipid, memNameDictMap_.at(MEM_VM_ANON),
79 timeStamp, memInfo.rss_anon_kb());
80 hasValue += streamFilters_->processMeasureFilter_->AppendNewMeasureData(ipid, memNameDictMap_.at(MEM_RSS_FILE),
81 timeStamp, memInfo.rss_file_kb());
82 hasValue += streamFilters_->processMeasureFilter_->AppendNewMeasureData(ipid, memNameDictMap_.at(MEM_RSS_SHMEM),
83 timeStamp, memInfo.rss_shmem_kb());
84 hasValue += streamFilters_->processMeasureFilter_->AppendNewMeasureData(ipid, memNameDictMap_.at(MEM_VM_SWAP),
85 timeStamp, memInfo.vm_swap_kb());
86 hasValue += streamFilters_->processMeasureFilter_->AppendNewMeasureData(ipid, memNameDictMap_.at(MEM_VM_LOCKED),
87 timeStamp, memInfo.vm_locked_kb());
88 hasValue += streamFilters_->processMeasureFilter_->AppendNewMeasureData(ipid, memNameDictMap_.at(MEM_VM_HWM),
89 timeStamp, memInfo.vm_hwm_kb());
90 hasValue += streamFilters_->processMeasureFilter_->AppendNewMeasureData(
91 ipid, memNameDictMap_.at(MEM_OOM_SCORE_ADJ), timeStamp, memInfo.oom_score_adj());
92 if (hasValue) {
93 streamFilters_->processFilter_->AddProcessMemory(ipid);
94 }
95 if (memInfo.smapinfo_size()) {
96 ParseSmapsInfoEasy(memInfo, timeStamp);
97 }
98 }
99 }
100
ParseSmapsInfoEasy(const ProcessMemoryInfo & memInfo,uint64_t timeStamp) const101 void HtraceMemParser::ParseSmapsInfoEasy(const ProcessMemoryInfo& memInfo, uint64_t timeStamp) const
102 {
103 streamFilters_->statFilter_->IncreaseStat(TRACE_SMAPS, STAT_EVENT_RECEIVED);
104 for (auto itor = memInfo.smapinfo().begin(); itor != memInfo.smapinfo().end(); itor++) {
105 auto startAddr = "0x" + itor->start_addr();
106 auto endAddr = "0x" + itor->end_addr();
107 uint64_t dirty = itor->dirty();
108 uint64_t swapper = itor->swapper();
109 uint64_t rss = itor->rss();
110 uint64_t pss = itor->pss();
111 uint64_t size = itor->size();
112 double reside = itor->reside();
113 DataIndex protection = traceDataCache_->GetDataIndex(itor->permission());
114 DataIndex path = traceDataCache_->GetDataIndex(itor->path());
115 traceDataCache_->GetSmapsData()->AppendNewData(timeStamp, startAddr, endAddr, dirty, swapper, rss, pss, size,
116 reside, protection, path);
117 }
118 }
119
ParseMemInfoEasy(const MemoryData & tracePacket,uint64_t timeStamp) const120 void HtraceMemParser::ParseMemInfoEasy(const MemoryData& tracePacket, uint64_t timeStamp) const
121 {
122 if (tracePacket.meminfo_size()) {
123 streamFilters_->statFilter_->IncreaseStat(TRACE_SYS_MEMORY, STAT_EVENT_RECEIVED);
124 }
125 for (int i = 0; i < tracePacket.meminfo_size(); i++) {
126 auto memInfo = tracePacket.meminfo(i);
127 if (config_.sysMemNameMap_.find(memInfo.key()) != config_.sysMemNameMap_.end()) {
128 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(sysMemNameDictMap_.at(memInfo.key()),
129 timeStamp, memInfo.value());
130 } else {
131 streamFilters_->statFilter_->IncreaseStat(TRACE_SYS_MEMORY, STAT_EVENT_DATA_INVALID);
132 }
133 }
134 }
135
ParseVMemInfoEasy(const MemoryData & tracePacket,uint64_t timeStamp) const136 void HtraceMemParser::ParseVMemInfoEasy(const MemoryData& tracePacket, uint64_t timeStamp) const
137 {
138 traceDataCache_->UpdateTraceTime(timeStamp);
139 if (tracePacket.vmeminfo_size()) {
140 streamFilters_->statFilter_->IncreaseStat(TRACE_SYS_VIRTUAL_MEMORY, STAT_EVENT_RECEIVED);
141 }
142 for (int i = 0; i < tracePacket.vmeminfo_size(); i++) {
143 auto memInfo = tracePacket.vmeminfo(i);
144 if (config_.sysVirtualMemNameMap_.find(memInfo.key()) != config_.sysVirtualMemNameMap_.end()) {
145 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(sysVMemNameDictMap_.at(memInfo.key()),
146 timeStamp, memInfo.value());
147 } else {
148 streamFilters_->statFilter_->IncreaseStat(TRACE_SYS_VIRTUAL_MEMORY, STAT_EVENT_DATA_INVALID);
149 }
150 }
151 }
152
ParseMemInfo(const MemoryData & tracePacket,uint64_t timeStamp) const153 void HtraceMemParser::ParseMemInfo(const MemoryData& tracePacket, uint64_t timeStamp) const
154 {
155 streamFilters_->statFilter_->IncreaseStat(TRACE_SYS_MEMORY, STAT_EVENT_RECEIVED);
156 for (int i = 0; i < tracePacket.meminfo_size(); i++) {
157 auto vMemInfo = tracePacket.meminfo(i);
158 switch (static_cast<int32_t>(vMemInfo.key())) {
159 case SysMeminfoType::PMEM_UNSPECIFIED:
160 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
161 sysMemNameDictMap_.at(SysMeminfoType::PMEM_UNSPECIFIED), timeStamp, vMemInfo.value());
162 break;
163 case SysMeminfoType::PMEM_MEM_TOTAL:
164 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
165 sysMemNameDictMap_.at(SysMeminfoType::PMEM_MEM_TOTAL), timeStamp, vMemInfo.value());
166 break;
167 case SysMeminfoType::PMEM_MEM_FREE:
168 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
169 sysMemNameDictMap_.at(SysMeminfoType::PMEM_MEM_FREE), timeStamp, vMemInfo.value());
170 break;
171 case SysMeminfoType::PMEM_MEM_AVAILABLE:
172 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
173 sysMemNameDictMap_.at(SysMeminfoType::PMEM_MEM_AVAILABLE), timeStamp, vMemInfo.value());
174 break;
175 case SysMeminfoType::PMEM_BUFFERS:
176 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
177 sysMemNameDictMap_.at(SysMeminfoType::PMEM_BUFFERS), timeStamp, vMemInfo.value());
178 break;
179 case SysMeminfoType::PMEM_CACHED:
180 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
181 sysMemNameDictMap_.at(SysMeminfoType::PMEM_CACHED), timeStamp, vMemInfo.value());
182 break;
183 case SysMeminfoType::PMEM_SWAP_CACHED:
184 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
185 sysMemNameDictMap_.at(SysMeminfoType::PMEM_SWAP_CACHED), timeStamp, vMemInfo.value());
186 break;
187 case SysMeminfoType::PMEM_ACTIVE:
188 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
189 sysMemNameDictMap_.at(SysMeminfoType::PMEM_ACTIVE), timeStamp, vMemInfo.value());
190 break;
191 case SysMeminfoType::PMEM_INACTIVE:
192 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
193 sysMemNameDictMap_.at(SysMeminfoType::PMEM_INACTIVE), timeStamp, vMemInfo.value());
194 break;
195 case SysMeminfoType::PMEM_ACTIVE_ANON:
196 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
197 sysMemNameDictMap_.at(SysMeminfoType::PMEM_ACTIVE_ANON), timeStamp, vMemInfo.value());
198 break;
199 case SysMeminfoType::PMEM_INACTIVE_ANON:
200 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
201 sysMemNameDictMap_.at(SysMeminfoType::PMEM_INACTIVE_ANON), timeStamp, vMemInfo.value());
202 break;
203 case SysMeminfoType::PMEM_ACTIVE_FILE:
204 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
205 sysMemNameDictMap_.at(SysMeminfoType::PMEM_ACTIVE_FILE), timeStamp, vMemInfo.value());
206 break;
207 case SysMeminfoType::PMEM_INACTIVE_FILE:
208 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
209 sysMemNameDictMap_.at(SysMeminfoType::PMEM_INACTIVE_FILE), timeStamp, vMemInfo.value());
210 break;
211 case SysMeminfoType::PMEM_UNEVICTABLE:
212 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
213 sysMemNameDictMap_.at(SysMeminfoType::PMEM_UNEVICTABLE), timeStamp, vMemInfo.value());
214 break;
215 case SysMeminfoType::PMEM_MLOCKED:
216 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
217 sysMemNameDictMap_.at(SysMeminfoType::PMEM_MLOCKED), timeStamp, vMemInfo.value());
218 break;
219 case SysMeminfoType::PMEM_SWAP_TOTAL:
220 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
221 sysMemNameDictMap_.at(SysMeminfoType::PMEM_SWAP_TOTAL), timeStamp, vMemInfo.value());
222 break;
223 case SysMeminfoType::PMEM_SWAP_FREE:
224 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
225 sysMemNameDictMap_.at(SysMeminfoType::PMEM_SWAP_FREE), timeStamp, vMemInfo.value());
226 break;
227 case SysMeminfoType::PMEM_DIRTY:
228 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
229 sysMemNameDictMap_.at(SysMeminfoType::PMEM_DIRTY), timeStamp, vMemInfo.value());
230 break;
231 case SysMeminfoType::PMEM_WRITEBACK:
232 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
233 sysMemNameDictMap_.at(SysMeminfoType::PMEM_WRITEBACK), timeStamp, vMemInfo.value());
234 break;
235 case SysMeminfoType::PMEM_ANON_PAGES:
236 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
237 sysMemNameDictMap_.at(SysMeminfoType::PMEM_ANON_PAGES), timeStamp, vMemInfo.value());
238 break;
239 case SysMeminfoType::PMEM_MAPPED:
240 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
241 sysMemNameDictMap_.at(SysMeminfoType::PMEM_MAPPED), timeStamp, vMemInfo.value());
242 break;
243 case SysMeminfoType::PMEM_SHMEM:
244 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
245 sysMemNameDictMap_.at(SysMeminfoType::PMEM_SHMEM), timeStamp, vMemInfo.value());
246 break;
247 case SysMeminfoType::PMEM_SLAB:
248 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
249 sysMemNameDictMap_.at(SysMeminfoType::PMEM_SLAB), timeStamp, vMemInfo.value());
250 break;
251 case SysMeminfoType::PMEM_SLAB_RECLAIMABLE:
252 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
253 sysMemNameDictMap_.at(SysMeminfoType::PMEM_SLAB_RECLAIMABLE), timeStamp, vMemInfo.value());
254 break;
255 case SysMeminfoType::PMEM_SLAB_UNRECLAIMABLE:
256 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
257 sysMemNameDictMap_.at(SysMeminfoType::PMEM_SLAB_UNRECLAIMABLE), timeStamp, vMemInfo.value());
258 break;
259 case SysMeminfoType::PMEM_KERNEL_STACK:
260 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
261 sysMemNameDictMap_.at(SysMeminfoType::PMEM_KERNEL_STACK), timeStamp, vMemInfo.value());
262 break;
263 case SysMeminfoType::PMEM_PAGE_TABLES:
264 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
265 sysMemNameDictMap_.at(SysMeminfoType::PMEM_PAGE_TABLES), timeStamp, vMemInfo.value());
266 break;
267 case SysMeminfoType::PMEM_COMMIT_LIMIT:
268 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
269 sysMemNameDictMap_.at(SysMeminfoType::PMEM_COMMIT_LIMIT), timeStamp, vMemInfo.value());
270 break;
271 case SysMeminfoType::PMEM_COMMITED_AS:
272 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
273 sysMemNameDictMap_.at(SysMeminfoType::PMEM_COMMITED_AS), timeStamp, vMemInfo.value());
274 break;
275 case SysMeminfoType::PMEM_VMALLOC_TOTAL:
276 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
277 sysMemNameDictMap_.at(SysMeminfoType::PMEM_VMALLOC_TOTAL), timeStamp, vMemInfo.value());
278 break;
279 case SysMeminfoType::PMEM_VMALLOC_USED:
280 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
281 sysMemNameDictMap_.at(SysMeminfoType::PMEM_VMALLOC_USED), timeStamp, vMemInfo.value());
282 break;
283 case SysMeminfoType::PMEM_VMALLOC_CHUNK:
284 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
285 sysMemNameDictMap_.at(SysMeminfoType::PMEM_VMALLOC_CHUNK), timeStamp, vMemInfo.value());
286 break;
287 case SysMeminfoType::PMEM_CMA_TOTAL:
288 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
289 sysMemNameDictMap_.at(SysMeminfoType::PMEM_CMA_TOTAL), timeStamp, vMemInfo.value());
290 break;
291 case SysMeminfoType::PMEM_CMA_FREE:
292 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
293 sysMemNameDictMap_.at(SysMeminfoType::PMEM_CMA_FREE), timeStamp, vMemInfo.value());
294 break;
295 case SysMeminfoType::PMEM_KERNEL_RECLAIMABLE:
296 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(
297 sysMemNameDictMap_.at(SysMeminfoType::PMEM_KERNEL_RECLAIMABLE), timeStamp, vMemInfo.value());
298 break;
299 case SysMeminfoType_INT_MIN_SENTINEL_DO_NOT_USE_:
300 case SysMeminfoType_INT_MAX_SENTINEL_DO_NOT_USE_:
301 default:
302 streamFilters_->statFilter_->IncreaseStat(TRACE_SYS_MEMORY, STAT_EVENT_DATA_INVALID);
303 break;
304 }
305 }
306 streamFilters_->sysEventMemMeasureFilter_->AppendNewMeasureData(zramIndex_, timeStamp, zram_);
307 }
ParseVMemInfo(const MemoryData & tracePacket,uint64_t timeStamp) const308 void HtraceMemParser::ParseVMemInfo(const MemoryData& tracePacket, uint64_t timeStamp) const
309 {
310 streamFilters_->statFilter_->IncreaseStat(TRACE_SYS_VIRTUAL_MEMORY, STAT_EVENT_RECEIVED);
311 for (int i = 0; i < tracePacket.vmeminfo_size(); i++) {
312 auto vMemInfo = tracePacket.vmeminfo(i);
313 switch (static_cast<int32_t>(vMemInfo.key())) {
314 case SysVMeminfoType::VMEMINFO_UNSPECIFIED:
315 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
316 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_UNSPECIFIED), timeStamp, vMemInfo.value());
317 break;
318 case SysVMeminfoType::VMEMINFO_NR_FREE_PAGES:
319 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
320 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_FREE_PAGES), timeStamp, vMemInfo.value());
321 break;
322 case SysVMeminfoType::VMEMINFO_NR_ALLOC_BATCH:
323 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
324 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_ALLOC_BATCH), timeStamp, vMemInfo.value());
325 break;
326 case SysVMeminfoType::VMEMINFO_NR_INACTIVE_ANON:
327 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
328 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_INACTIVE_ANON), timeStamp, vMemInfo.value());
329 break;
330 case SysVMeminfoType::VMEMINFO_NR_ACTIVE_ANON:
331 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
332 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_ACTIVE_ANON), timeStamp, vMemInfo.value());
333 break;
334 case SysVMeminfoType::VMEMINFO_NR_INACTIVE_FILE:
335 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
336 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_INACTIVE_FILE), timeStamp, vMemInfo.value());
337 break;
338 case SysVMeminfoType::VMEMINFO_NR_ACTIVE_FILE:
339 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
340 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_ACTIVE_FILE), timeStamp, vMemInfo.value());
341 break;
342 case SysVMeminfoType::VMEMINFO_NR_UNEVICTABLE:
343 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
344 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_UNEVICTABLE), timeStamp, vMemInfo.value());
345 break;
346 case SysVMeminfoType::VMEMINFO_NR_MLOCK:
347 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
348 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_MLOCK), timeStamp, vMemInfo.value());
349 break;
350 case SysVMeminfoType::VMEMINFO_NR_ANON_PAGES:
351 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
352 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_ANON_PAGES), timeStamp, vMemInfo.value());
353 break;
354 case SysVMeminfoType::VMEMINFO_NR_MAPPED:
355 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
356 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_MAPPED), timeStamp, vMemInfo.value());
357 break;
358 case SysVMeminfoType::VMEMINFO_NR_FILE_PAGES:
359 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
360 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_FILE_PAGES), timeStamp, vMemInfo.value());
361 break;
362 case SysVMeminfoType::VMEMINFO_NR_DIRTY:
363 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
364 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_DIRTY), timeStamp, vMemInfo.value());
365 break;
366 case SysVMeminfoType::VMEMINFO_NR_WRITEBACK:
367 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
368 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_WRITEBACK), timeStamp, vMemInfo.value());
369 break;
370 case SysVMeminfoType::VMEMINFO_NR_SLAB_RECLAIMABLE:
371 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
372 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_SLAB_RECLAIMABLE), timeStamp, vMemInfo.value());
373 break;
374 case SysVMeminfoType::VMEMINFO_NR_SLAB_UNRECLAIMABLE:
375 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
376 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_SLAB_UNRECLAIMABLE), timeStamp,
377 vMemInfo.value());
378 break;
379 case SysVMeminfoType::VMEMINFO_NR_PAGE_TABLE_PAGES:
380 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
381 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_PAGE_TABLE_PAGES), timeStamp, vMemInfo.value());
382 break;
383 case SysVMeminfoType::VMEMINFO_NR_KERNEL_STACK:
384 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
385 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_KERNEL_STACK), timeStamp, vMemInfo.value());
386 break;
387 case SysVMeminfoType::VMEMINFO_NR_OVERHEAD:
388 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
389 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_OVERHEAD), timeStamp, vMemInfo.value());
390 break;
391 case SysVMeminfoType::VMEMINFO_NR_UNSTABLE:
392 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
393 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_UNSTABLE), timeStamp, vMemInfo.value());
394 break;
395 case SysVMeminfoType::VMEMINFO_NR_BOUNCE:
396 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
397 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_BOUNCE), timeStamp, vMemInfo.value());
398 break;
399 case SysVMeminfoType::VMEMINFO_NR_VMSCAN_WRITE:
400 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
401 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_VMSCAN_WRITE), timeStamp, vMemInfo.value());
402 break;
403 case SysVMeminfoType::VMEMINFO_NR_VMSCAN_IMMEDIATE_RECLAIM:
404 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
405 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_VMSCAN_IMMEDIATE_RECLAIM), timeStamp,
406 vMemInfo.value());
407 break;
408 case SysVMeminfoType::VMEMINFO_NR_WRITEBACK_TEMP:
409 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
410 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_WRITEBACK_TEMP), timeStamp, vMemInfo.value());
411 break;
412 case SysVMeminfoType::VMEMINFO_NR_ISOLATED_ANON:
413 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
414 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_ISOLATED_ANON), timeStamp, vMemInfo.value());
415 break;
416 case SysVMeminfoType::VMEMINFO_NR_ISOLATED_FILE:
417 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
418 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_ISOLATED_FILE), timeStamp, vMemInfo.value());
419 break;
420 case SysVMeminfoType::VMEMINFO_NR_SHMEM:
421 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
422 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_SHMEM), timeStamp, vMemInfo.value());
423 break;
424 case SysVMeminfoType::VMEMINFO_NR_DIRTIED:
425 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
426 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_DIRTIED), timeStamp, vMemInfo.value());
427 break;
428 case SysVMeminfoType::VMEMINFO_NR_WRITTEN:
429 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
430 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_WRITTEN), timeStamp, vMemInfo.value());
431 break;
432 case SysVMeminfoType::VMEMINFO_NR_PAGES_SCANNED:
433 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
434 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_PAGES_SCANNED), timeStamp, vMemInfo.value());
435 break;
436 case SysVMeminfoType::VMEMINFO_WORKINGSET_REFAULT:
437 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
438 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_WORKINGSET_REFAULT), timeStamp, vMemInfo.value());
439 break;
440 case SysVMeminfoType::VMEMINFO_WORKINGSET_ACTIVATE:
441 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
442 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_WORKINGSET_ACTIVATE), timeStamp, vMemInfo.value());
443 break;
444 case SysVMeminfoType::VMEMINFO_WORKINGSET_NODERECLAIM:
445 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
446 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_WORKINGSET_NODERECLAIM), timeStamp,
447 vMemInfo.value());
448 break;
449 case SysVMeminfoType::VMEMINFO_NR_ANON_TRANSPARENT_HUGEPAGES:
450 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
451 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_ANON_TRANSPARENT_HUGEPAGES), timeStamp,
452 vMemInfo.value());
453 break;
454 case SysVMeminfoType::VMEMINFO_NR_FREE_CMA:
455 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
456 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_FREE_CMA), timeStamp, vMemInfo.value());
457 break;
458 case SysVMeminfoType::VMEMINFO_NR_SWAPCACHE:
459 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
460 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_SWAPCACHE), timeStamp, vMemInfo.value());
461 break;
462 case SysVMeminfoType::VMEMINFO_NR_DIRTY_THRESHOLD:
463 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
464 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_DIRTY_THRESHOLD), timeStamp, vMemInfo.value());
465 break;
466 case SysVMeminfoType::VMEMINFO_NR_DIRTY_BACKGROUND_THRESHOLD:
467 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
468 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_DIRTY_BACKGROUND_THRESHOLD), timeStamp,
469 vMemInfo.value());
470 break;
471 case SysVMeminfoType::VMEMINFO_PGPGIN:
472 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
473 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGPGIN), timeStamp, vMemInfo.value());
474 break;
475 case SysVMeminfoType::VMEMINFO_PGPGOUT:
476 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
477 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGPGOUT), timeStamp, vMemInfo.value());
478 break;
479 case SysVMeminfoType::VMEMINFO_PGPGOUTCLEAN:
480 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
481 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGPGOUTCLEAN), timeStamp, vMemInfo.value());
482 break;
483 case SysVMeminfoType::VMEMINFO_PSWPIN:
484 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
485 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PSWPIN), timeStamp, vMemInfo.value());
486 break;
487 case SysVMeminfoType::VMEMINFO_PSWPOUT:
488 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
489 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PSWPOUT), timeStamp, vMemInfo.value());
490 break;
491 case SysVMeminfoType::VMEMINFO_PGALLOC_DMA:
492 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
493 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGALLOC_DMA), timeStamp, vMemInfo.value());
494 break;
495 case SysVMeminfoType::VMEMINFO_PGALLOC_NORMAL:
496 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
497 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGALLOC_NORMAL), timeStamp, vMemInfo.value());
498 break;
499 case SysVMeminfoType::VMEMINFO_PGALLOC_MOVABLE:
500 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
501 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGALLOC_MOVABLE), timeStamp, vMemInfo.value());
502 break;
503 case SysVMeminfoType::VMEMINFO_PGFREE:
504 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
505 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGFREE), timeStamp, vMemInfo.value());
506 break;
507 case SysVMeminfoType::VMEMINFO_PGACTIVATE:
508 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
509 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGACTIVATE), timeStamp, vMemInfo.value());
510 break;
511 case SysVMeminfoType::VMEMINFO_PGDEACTIVATE:
512 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
513 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGDEACTIVATE), timeStamp, vMemInfo.value());
514 break;
515 case SysVMeminfoType::VMEMINFO_PGFAULT:
516 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
517 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGFAULT), timeStamp, vMemInfo.value());
518 break;
519 case SysVMeminfoType::VMEMINFO_PGMAJFAULT:
520 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
521 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGMAJFAULT), timeStamp, vMemInfo.value());
522 break;
523 case SysVMeminfoType::VMEMINFO_PGREFILL_DMA:
524 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
525 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGREFILL_DMA), timeStamp, vMemInfo.value());
526 break;
527 case SysVMeminfoType::VMEMINFO_PGREFILL_NORMAL:
528 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
529 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGREFILL_NORMAL), timeStamp, vMemInfo.value());
530 break;
531 case SysVMeminfoType::VMEMINFO_PGREFILL_MOVABLE:
532 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
533 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGREFILL_MOVABLE), timeStamp, vMemInfo.value());
534 break;
535 case SysVMeminfoType::VMEMINFO_PGSTEAL_KSWAPD_DMA:
536 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
537 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGSTEAL_KSWAPD_DMA), timeStamp, vMemInfo.value());
538 break;
539 case SysVMeminfoType::VMEMINFO_PGSTEAL_KSWAPD_NORMAL:
540 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
541 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGSTEAL_KSWAPD_NORMAL), timeStamp,
542 vMemInfo.value());
543 break;
544 case SysVMeminfoType::VMEMINFO_PGSTEAL_KSWAPD_MOVABLE:
545 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
546 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGSTEAL_KSWAPD_MOVABLE), timeStamp,
547 vMemInfo.value());
548 break;
549 case SysVMeminfoType::VMEMINFO_PGSTEAL_DIRECT_DMA:
550 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
551 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGSTEAL_DIRECT_DMA), timeStamp, vMemInfo.value());
552 break;
553 case SysVMeminfoType::VMEMINFO_PGSTEAL_DIRECT_NORMAL:
554 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
555 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGSTEAL_DIRECT_NORMAL), timeStamp,
556 vMemInfo.value());
557 break;
558 case SysVMeminfoType::VMEMINFO_PGSTEAL_DIRECT_MOVABLE:
559 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
560 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGSTEAL_DIRECT_MOVABLE), timeStamp,
561 vMemInfo.value());
562 break;
563 case SysVMeminfoType::VMEMINFO_PGSCAN_KSWAPD_DMA:
564 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
565 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGSCAN_KSWAPD_DMA), timeStamp, vMemInfo.value());
566 break;
567 case SysVMeminfoType::VMEMINFO_PGSCAN_KSWAPD_NORMAL:
568 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
569 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGSCAN_KSWAPD_NORMAL), timeStamp,
570 vMemInfo.value());
571 break;
572 case SysVMeminfoType::VMEMINFO_PGSCAN_KSWAPD_MOVABLE:
573 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
574 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGSCAN_KSWAPD_MOVABLE), timeStamp,
575 vMemInfo.value());
576 break;
577 case SysVMeminfoType::VMEMINFO_PGSCAN_DIRECT_DMA:
578 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
579 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGSCAN_DIRECT_DMA), timeStamp, vMemInfo.value());
580 break;
581 case SysVMeminfoType::VMEMINFO_PGSCAN_DIRECT_NORMAL:
582 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
583 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGSCAN_DIRECT_NORMAL), timeStamp,
584 vMemInfo.value());
585 break;
586 case SysVMeminfoType::VMEMINFO_PGSCAN_DIRECT_MOVABLE:
587 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
588 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGSCAN_DIRECT_MOVABLE), timeStamp,
589 vMemInfo.value());
590 break;
591 case SysVMeminfoType::VMEMINFO_PGSCAN_DIRECT_THROTTLE:
592 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
593 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGSCAN_DIRECT_THROTTLE), timeStamp,
594 vMemInfo.value());
595 break;
596 case SysVMeminfoType::VMEMINFO_PGINODESTEAL:
597 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
598 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGINODESTEAL), timeStamp, vMemInfo.value());
599 break;
600 case SysVMeminfoType::VMEMINFO_SLABS_SCANNED:
601 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
602 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_SLABS_SCANNED), timeStamp, vMemInfo.value());
603 break;
604 case SysVMeminfoType::VMEMINFO_KSWAPD_INODESTEAL:
605 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
606 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_KSWAPD_INODESTEAL), timeStamp, vMemInfo.value());
607 break;
608 case SysVMeminfoType::VMEMINFO_KSWAPD_LOW_WMARK_HIT_QUICKLY:
609 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
610 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_KSWAPD_LOW_WMARK_HIT_QUICKLY), timeStamp,
611 vMemInfo.value());
612 break;
613 case SysVMeminfoType::VMEMINFO_KSWAPD_HIGH_WMARK_HIT_QUICKLY:
614 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
615 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_KSWAPD_HIGH_WMARK_HIT_QUICKLY), timeStamp,
616 vMemInfo.value());
617 break;
618 case SysVMeminfoType::VMEMINFO_PAGEOUTRUN:
619 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
620 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PAGEOUTRUN), timeStamp, vMemInfo.value());
621 break;
622 case SysVMeminfoType::VMEMINFO_ALLOCSTALL:
623 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
624 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_ALLOCSTALL), timeStamp, vMemInfo.value());
625 break;
626 case SysVMeminfoType::VMEMINFO_PGROTATED:
627 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
628 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGROTATED), timeStamp, vMemInfo.value());
629 break;
630 case SysVMeminfoType::VMEMINFO_DROP_PAGECACHE:
631 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
632 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_DROP_PAGECACHE), timeStamp, vMemInfo.value());
633 break;
634 case SysVMeminfoType::VMEMINFO_DROP_SLAB:
635 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
636 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_DROP_SLAB), timeStamp, vMemInfo.value());
637 break;
638 case SysVMeminfoType::VMEMINFO_PGMIGRATE_SUCCESS:
639 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
640 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGMIGRATE_SUCCESS), timeStamp, vMemInfo.value());
641 break;
642 case SysVMeminfoType::VMEMINFO_PGMIGRATE_FAIL:
643 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
644 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGMIGRATE_FAIL), timeStamp, vMemInfo.value());
645 break;
646 case SysVMeminfoType::VMEMINFO_COMPACT_MIGRATE_SCANNED:
647 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
648 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_COMPACT_MIGRATE_SCANNED), timeStamp,
649 vMemInfo.value());
650 break;
651 case SysVMeminfoType::VMEMINFO_COMPACT_FREE_SCANNED:
652 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
653 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_COMPACT_FREE_SCANNED), timeStamp,
654 vMemInfo.value());
655 break;
656 case SysVMeminfoType::VMEMINFO_COMPACT_ISOLATED:
657 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
658 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_COMPACT_ISOLATED), timeStamp, vMemInfo.value());
659 break;
660 case SysVMeminfoType::VMEMINFO_COMPACT_STALL:
661 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
662 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_COMPACT_STALL), timeStamp, vMemInfo.value());
663 break;
664 case SysVMeminfoType::VMEMINFO_COMPACT_FAIL:
665 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
666 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_COMPACT_FAIL), timeStamp, vMemInfo.value());
667 break;
668 case SysVMeminfoType::VMEMINFO_COMPACT_SUCCESS:
669 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
670 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_COMPACT_SUCCESS), timeStamp, vMemInfo.value());
671 break;
672 case SysVMeminfoType::VMEMINFO_COMPACT_DAEMON_WAKE:
673 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
674 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_COMPACT_DAEMON_WAKE), timeStamp, vMemInfo.value());
675 break;
676 case SysVMeminfoType::VMEMINFO_UNEVICTABLE_PGS_CULLED:
677 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
678 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_UNEVICTABLE_PGS_CULLED), timeStamp,
679 vMemInfo.value());
680 break;
681 case SysVMeminfoType::VMEMINFO_UNEVICTABLE_PGS_SCANNED:
682 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
683 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_UNEVICTABLE_PGS_SCANNED), timeStamp,
684 vMemInfo.value());
685 break;
686 case SysVMeminfoType::VMEMINFO_UNEVICTABLE_PGS_RESCUED:
687 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
688 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_UNEVICTABLE_PGS_RESCUED), timeStamp,
689 vMemInfo.value());
690 break;
691 case SysVMeminfoType::VMEMINFO_UNEVICTABLE_PGS_MLOCKED:
692 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
693 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_UNEVICTABLE_PGS_MLOCKED), timeStamp,
694 vMemInfo.value());
695 break;
696 case SysVMeminfoType::VMEMINFO_UNEVICTABLE_PGS_MUNLOCKED:
697 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
698 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_UNEVICTABLE_PGS_MUNLOCKED), timeStamp,
699 vMemInfo.value());
700 break;
701 case SysVMeminfoType::VMEMINFO_UNEVICTABLE_PGS_CLEARED:
702 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
703 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_UNEVICTABLE_PGS_CLEARED), timeStamp,
704 vMemInfo.value());
705 break;
706 case SysVMeminfoType::VMEMINFO_UNEVICTABLE_PGS_STRANDED:
707 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
708 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_UNEVICTABLE_PGS_STRANDED), timeStamp,
709 vMemInfo.value());
710 break;
711 case SysVMeminfoType::VMEMINFO_NR_ZSPAGES:
712 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
713 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_ZSPAGES), timeStamp, vMemInfo.value());
714 break;
715 case SysVMeminfoType::VMEMINFO_NR_ION_HEAP:
716 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
717 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_ION_HEAP), timeStamp, vMemInfo.value());
718 break;
719 case SysVMeminfoType::VMEMINFO_NR_GPU_HEAP:
720 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
721 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_GPU_HEAP), timeStamp, vMemInfo.value());
722 break;
723 case SysVMeminfoType::VMEMINFO_ALLOCSTALL_DMA:
724 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
725 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_ALLOCSTALL_DMA), timeStamp, vMemInfo.value());
726 break;
727 case SysVMeminfoType::VMEMINFO_ALLOCSTALL_MOVABLE:
728 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
729 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_ALLOCSTALL_MOVABLE), timeStamp, vMemInfo.value());
730 break;
731 case SysVMeminfoType::VMEMINFO_ALLOCSTALL_NORMAL:
732 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
733 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_ALLOCSTALL_NORMAL), timeStamp, vMemInfo.value());
734 break;
735 case SysVMeminfoType::VMEMINFO_COMPACT_DAEMON_FREE_SCANNED:
736 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
737 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_COMPACT_DAEMON_FREE_SCANNED), timeStamp,
738 vMemInfo.value());
739 break;
740 case SysVMeminfoType::VMEMINFO_COMPACT_DAEMON_MIGRATE_SCANNED:
741 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
742 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_COMPACT_DAEMON_MIGRATE_SCANNED), timeStamp,
743 vMemInfo.value());
744 break;
745 case SysVMeminfoType::VMEMINFO_NR_FASTRPC:
746 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
747 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_FASTRPC), timeStamp, vMemInfo.value());
748 break;
749 case SysVMeminfoType::VMEMINFO_NR_INDIRECTLY_RECLAIMABLE:
750 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
751 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_INDIRECTLY_RECLAIMABLE), timeStamp,
752 vMemInfo.value());
753 break;
754 case SysVMeminfoType::VMEMINFO_NR_ION_HEAP_POOL:
755 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
756 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_ION_HEAP_POOL), timeStamp, vMemInfo.value());
757 break;
758 case SysVMeminfoType::VMEMINFO_NR_KERNEL_MISC_RECLAIMABLE:
759 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
760 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_KERNEL_MISC_RECLAIMABLE), timeStamp,
761 vMemInfo.value());
762 break;
763 case SysVMeminfoType::VMEMINFO_NR_SHADOW_CALL_STACK_BYTES:
764 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
765 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_SHADOW_CALL_STACK_BYTES), timeStamp,
766 vMemInfo.value());
767 break;
768 case SysVMeminfoType::VMEMINFO_NR_SHMEM_HUGEPAGES:
769 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
770 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_SHMEM_HUGEPAGES), timeStamp, vMemInfo.value());
771 break;
772 case SysVMeminfoType::VMEMINFO_NR_SHMEM_PMDMAPPED:
773 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
774 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_SHMEM_PMDMAPPED), timeStamp, vMemInfo.value());
775 break;
776 case SysVMeminfoType::VMEMINFO_NR_UNRECLAIMABLE_PAGES:
777 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
778 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_UNRECLAIMABLE_PAGES), timeStamp,
779 vMemInfo.value());
780 break;
781 case SysVMeminfoType::VMEMINFO_NR_ZONE_ACTIVE_ANON:
782 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
783 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_ZONE_ACTIVE_ANON), timeStamp, vMemInfo.value());
784 break;
785 case SysVMeminfoType::VMEMINFO_NR_ZONE_ACTIVE_FILE:
786 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
787 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_ZONE_ACTIVE_FILE), timeStamp, vMemInfo.value());
788 break;
789 case SysVMeminfoType::VMEMINFO_NR_ZONE_INACTIVE_ANON:
790 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
791 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_ZONE_INACTIVE_ANON), timeStamp,
792 vMemInfo.value());
793 break;
794 case SysVMeminfoType::VMEMINFO_NR_ZONE_INACTIVE_FILE:
795 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
796 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_ZONE_INACTIVE_FILE), timeStamp,
797 vMemInfo.value());
798 break;
799 case SysVMeminfoType::VMEMINFO_NR_ZONE_UNEVICTABLE:
800 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
801 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_ZONE_UNEVICTABLE), timeStamp, vMemInfo.value());
802 break;
803 case SysVMeminfoType::VMEMINFO_NR_ZONE_WRITE_PENDING:
804 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
805 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_NR_ZONE_WRITE_PENDING), timeStamp,
806 vMemInfo.value());
807 break;
808 case SysVMeminfoType::VMEMINFO_OOM_KILL:
809 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
810 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_OOM_KILL), timeStamp, vMemInfo.value());
811 break;
812 case SysVMeminfoType::VMEMINFO_PGLAZYFREE:
813 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
814 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGLAZYFREE), timeStamp, vMemInfo.value());
815 break;
816 case SysVMeminfoType::VMEMINFO_PGLAZYFREED:
817 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
818 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGLAZYFREED), timeStamp, vMemInfo.value());
819 break;
820 case SysVMeminfoType::VMEMINFO_PGREFILL:
821 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
822 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGREFILL), timeStamp, vMemInfo.value());
823 break;
824 case SysVMeminfoType::VMEMINFO_PGSCAN_DIRECT:
825 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
826 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGSCAN_DIRECT), timeStamp, vMemInfo.value());
827 break;
828 case SysVMeminfoType::VMEMINFO_PGSCAN_KSWAPD:
829 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
830 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGSCAN_KSWAPD), timeStamp, vMemInfo.value());
831 break;
832 case SysVMeminfoType::VMEMINFO_PGSKIP_DMA:
833 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
834 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGSKIP_DMA), timeStamp, vMemInfo.value());
835 break;
836 case SysVMeminfoType::VMEMINFO_PGSKIP_MOVABLE:
837 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
838 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGSKIP_MOVABLE), timeStamp, vMemInfo.value());
839 break;
840 case SysVMeminfoType::VMEMINFO_PGSKIP_NORMAL:
841 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
842 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGSKIP_NORMAL), timeStamp, vMemInfo.value());
843 break;
844 case SysVMeminfoType::VMEMINFO_PGSTEAL_DIRECT:
845 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
846 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGSTEAL_DIRECT), timeStamp, vMemInfo.value());
847 break;
848 case SysVMeminfoType::VMEMINFO_PGSTEAL_KSWAPD:
849 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
850 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_PGSTEAL_KSWAPD), timeStamp, vMemInfo.value());
851 break;
852 case SysVMeminfoType::VMEMINFO_SWAP_RA:
853 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
854 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_SWAP_RA), timeStamp, vMemInfo.value());
855 break;
856 case SysVMeminfoType::VMEMINFO_SWAP_RA_HIT:
857 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
858 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_SWAP_RA_HIT), timeStamp, vMemInfo.value());
859 break;
860 case SysVMeminfoType::VMEMINFO_WORKINGSET_RESTORE:
861 streamFilters_->sysEventVMemMeasureFilter_->AppendNewMeasureData(
862 sysVMemNameDictMap_.at(SysVMeminfoType::VMEMINFO_WORKINGSET_RESTORE), timeStamp, vMemInfo.value());
863 break;
864 case SysVMeminfoType_INT_MIN_SENTINEL_DO_NOT_USE_:
865 case SysVMeminfoType_INT_MAX_SENTINEL_DO_NOT_USE_:
866 default:
867 streamFilters_->statFilter_->IncreaseStat(TRACE_SYS_VIRTUAL_MEMORY, STAT_EVENT_DATA_INVALID);
868 }
869 }
870 }
Finish()871 void HtraceMemParser::Finish()
872 {
873 traceDataCache_->MixTraceTime(GetPluginStartTime(), GetPluginEndTime());
874 }
875 } // namespace TraceStreamer
876 } // namespace SysTuning
877