Permission message rules: Each rule must have >= 1 required permissions
[chromium-blink-merge.git] / tools / deep_memory_profiler / policy.android.renderer.json
blob2c9ffa2096b20ac368fbb48263f128fd8cb53cd2
2   "components": [
3     "second",
4     "mmap-profiler",
5     "mmap-type-profiler",
6     "mmap-tcmalloc",
7     "FROM_HERE_FOR_TOTAL",
8     "mustbezero",
9     "unhooked-absent",
10     "unhooked-ashmem-dalvik-heap",
11     "unhooked-ashmem-dalvik-LinearAlloc",
12     "unhooked-ashmem-dalvik-aux-structure",
13     "unhooked-ashmem-dalvik-bitmap",
14     "unhooked-ashmem-dalvik-other",
15     "unhooked-kgsl",
16     "unhooked-pvrsrvkm",
17     "unhooked-system-dex",
18     "unhooked-chrome-dex",
19     "unhooked-other-ashmem",
20     "unhooked-anonymous",
21     "unhooked-file-exec-lib-chrome-shared",
22     "unhooked-file-exec-lib-chrome-private",
23     "unhooked-file-exec",
24     "unhooked-file-nonexec-lib-chrome-shared",
25     "unhooked-file-nonexec-lib-chrome-private",
26     "unhooked-file-nonexec",
27     "unhooked-stack",
28     "unhooked-other",
29     "no-bucket",
30     "mmap-v8-heap-newspace",
31     "mmap-v8-heap-coderange",
32     "mmap-v8-heap-pagedspace",
33     "mmap-v8-other",
34     "mmap-gpu-mappedmemorymanager",
35     "mmap-gpu-command-ringbuffer",
36     "mmap-gpu-transfer-ringbuffer",
37     "mmap-gpu-gles2-createbuffer",
38     "mmap-skia-font",
39     "mmap-catch-all",
40     "tc-webcore-fontcache",
41     "tc-skia",
42     "tc-renderstyle",
43     "tc-webcore-sharedbuf",
44     "tc-webcore-XHRcreate",
45     "tc-webcore-XHRreceived",
46     "tc-webcore-docwriter-add",
47     "tc-webcore-node-and-doc",
48     "tc-webcore-node-factory",
49     "tc-webcore-element-wrapper",
50     "tc-webcore-stylepropertyset",
51     "tc-webcore-style-createsheet",
52     "tc-webcore-resource",
53     "tc-webcore-script-execute",
54     "tc-webcore-events-related",
55     "tc-webcore-document-write",
56     "tc-webcore-element-create-renderer",
57     "tc-webcore-image-frame-generator",
58     "tc-webcore-render-catch-all",
59     "tc-webcore-setInnerHTML-except-node",
60     "tc-wtf-StringImpl-user-catch-all",
61     "tc-wtf-HashTable-user-catch-all",
62     "tc-webcore-everything-create",
63     "tc-webkit-from-v8-catch-all",
64     "tc-webkit-catch-all",
65     "tc-v8-catch-all",
66     "tc-stl-string",
67     "tc-stl-rbtree",
68     "tc-stl-vector",
69     "tc-stl-hashtable",
70     "tc-stl-other",
71     "tc-catch-all",
72     "tc-unused",
73     "UNTIL_HERE_FOR_TOTAL",
74     "total-exclude-profiler",
75     "total",
76     "absent",
77     "anonymous",
78     "file-exec",
79     "file-nonexec",
80     "stack",
81     "other",
82     "mmap-total-log",
83     "mmap-no-log",
84     "mmap-total-record",
85     "other-total-log",
86     "tc-total-log",
87     "tc-no-log",
88     "tc-total-record",
89     "tc-total"
90   ],
91   "rules": [
92     {
93       "name": "second",
94       "stacktrace": "optional",
95       "allocator": "optional"
96     },
97     {
98       "name": "mmap-profiler",
99       "stacktrace": ".*(ProfilerMalloc|MemoryRegionMap::).*",
100       "allocator": "mmap"
101     },
102     {
103       "name": "mmap-type-profiler",
104       "stacktrace": ".*(TypeProfilerMalloc).*",
105       "allocator": "mmap"
106     },
107     {
108       "name": "mmap-tcmalloc",
109       "stacktrace": ".*(DoAllocWithArena|SbrkSysAllocator::Alloc|MmapSysAllocator::Alloc|LowLevelAlloc::Alloc|LowLevelAlloc::AllocWithArena).*",
110       "allocator": "mmap"
111     },
112     {
113       "name": "FROM_HERE_FOR_TOTAL",
114       "stacktrace": "optional",
115       "allocator": "optional"
116     },
117     {
118       "name": "mustbezero",
119       "stacktrace": "optional",
120       "allocator": "optional"
121     },
122     {
123       "name": "unhooked-absent",
124       "stacktrace": "optional",
125       "allocator": "optional"
126     },
127     {
128       "name": "unhooked-ashmem-dalvik-heap",
129       "mappedpathname": "/dev/ashmem/dalvik-heap.*",
130       "allocator": "unhooked"
131     },
132     {
133       "name": "unhooked-ashmem-dalvik-LinearAlloc",
134       "mappedpathname": "/dev/ashmem/dalvik-LinearAlloc.*",
135       "allocator": "unhooked"
136     },
137     {
138       "name": "unhooked-ashmem-dalvik-aux-structure",
139       "mappedpathname": "/dev/ashmem/dalvik-aux-structure.*",
140       "allocator": "unhooked"
141     },
142     {
143       "name": "unhooked-ashmem-dalvik-bitmap",
144       "mappedpathname": "/dev/ashmem/dalvik-bitmap.*",
145       "allocator": "unhooked"
146     },
147     {
148       "name": "unhooked-ashmem-dalvik-other",
149       "mappedpathname": "/dev/ashmem/dalvik.*",
150       "allocator": "unhooked"
151     },
152     {
153       "name": "unhooked-kgsl",
154       "mappedpathname": "/dev/kgsl-3d0",
155       "allocator": "unhooked"
156     },
157     {
158       "name": "unhooked-pvrsrvkm",
159       "mappedpathname": "/dev/pvrsrvkm.*",
160       "allocator": "unhooked"
161     },
162     {
163       "name": "unhooked-system-dex",
164       "mappedpathname": "/data/dalvik-cache/system.*.dex.*",
165       "allocator": "unhooked"
166     },
167     {
168       "name": "unhooked-chrome-dex",
169       "mappedpathname": "^/.*?(chrome|content).*?apk@classes.dex",
170       "allocator": "unhooked"
171     },
172     {
173       "name": "unhooked-other-ashmem",
174       "mappedpathname": "/dev/ashmem/.*",
175       "allocator": "unhooked"
176     },
177     {
178       "name": "unhooked-anonymous",
179       "mappedpathname": "^$",
180       "allocator": "unhooked"
181     },
182     {
183       "name": "unhooked-file-exec-lib-chrome-shared",
184       "mappedpathname": "^/.*?(chromeview|content).*",
185       "mappedpermission": "..x.",
186       "allocator": "unhooked",
187       "sharedwith": ["group", "others"]
188     },
189     {
190       "name": "unhooked-file-exec-lib-chrome-private",
191       "mappedpathname": "^/.*?(chromeview|content).*",
192       "mappedpermission": "..x.",
193       "allocator": "unhooked",
194       "sharedwith": ["private"]
195     },
196     {
197       "name": "unhooked-file-exec",
198       "mappedpathname": "^/.*",
199       "mappedpermission": "..x.",
200       "allocator": "unhooked"
201     },
202     {
203       "name": "unhooked-file-nonexec-lib-chrome-shared",
204       "mappedpathname": "^/.*?(chromeview|content).*",
205       "allocator": "unhooked",
206       "sharedwith": ["group", "others"]
207     },
208     {
209       "name": "unhooked-file-nonexec-lib-chrome-private",
210       "mappedpathname": "^/.*?(chromeview|content).*",
211       "allocator": "unhooked",
212       "sharedwith": ["private"]
213     },
214     {
215       "name": "unhooked-file-nonexec",
216       "mappedpathname": "^/.*",
217       "allocator": "unhooked"
218     },
219     {
220       "name": "unhooked-stack",
221       "mappedpathname": ".stack.",
222       "allocator": "unhooked"
223     },
224     {
225       "name": "unhooked-other",
226       "mappedpathname": ".*",
227       "allocator": "unhooked"
228     },
229     {
230       "name": "mmap-v8-heap-newspace",
231       "stacktrace": ".*v8::internal::NewSpace::SetUp.*",
232       "allocator": "mmap"
233     },
234     {
235       "name": "mmap-v8-heap-coderange",
236       "stacktrace": ".*v8::internal::CodeRange::SetUp.*",
237       "allocator": "mmap"
238     },
239     {
240       "name": "mmap-v8-heap-pagedspace",
241       "stacktrace": ".*v8::internal::PagedSpace::AllocateRaw.*",
242       "allocator": "mmap"
243     },
244     {
245       "name": "mmap-v8-other",
246       "stacktrace": ".*v8::.*",
247       "allocator": "mmap"
248     },
249     {
250       "name": "mmap-gpu-mappedmemorymanager",
251       "stacktrace": ".*gpu::MappedMemoryManager::Alloc.*",
252       "allocator": "mmap"
253     },
254     {
255       "name": "mmap-gpu-command-ringbuffer",
256       "stacktrace": ".*gpu::CommandBufferHelper::AllocateRingBuffer.*",
257       "allocator": "mmap"
258     },
259     {
260       "name": "mmap-gpu-transfer-ringbuffer",
261       "stacktrace": ".*gpu::TransferBuffer::AllocateRingBuffer.*",
262       "allocator": "mmap"
263     },
264     {
265       "name": "mmap-gpu-gles2-createbuffer",
266       "stacktrace": ".*gpu::gles2::BufferTracker::CreateBuffer.*",
267       "allocator": "mmap"
268     },
269     {
270       "name": "mmap-skia-font",
271       "stacktrace": ".*SkTypeface::openStream.*",
272       "allocator": "mmap"
273     },
274     {
275       "name": "mmap-catch-all",
276       "stacktrace": ".*",
277       "allocator": "mmap"
278     },
279     {
280       "name": "tc-webcore-fontcache",
281       "stacktrace": ".*(WebCore|blink)::FontCache::getCachedFontData.*",
282       "allocator": "malloc"
283     },
284     {
285       "name": "tc-skia",
286       "stacktrace": ".* Sk[A-Za-z_]+::.*",
287       "allocator": "malloc"
288     },
289     {
290       "name": "tc-renderstyle",
291       "stacktrace": ".*(WebCore|blink)::RenderStyle::create.*",
292       "allocator": "malloc"
293     },
294     {
295       "name": "tc-renderstyle",
296       "stacktrace": ".*(WebCore|blink)::RenderStyle::clone.*",
297       "allocator": "malloc"
298     },
299     {
300       "name": "tc-webcore-sharedbuf",
301       "stacktrace": ".*(WebCore|blink)::SharedBuffer::create.*",
302       "allocator": "malloc"
303     },
304     {
305       "name": "tc-webcore-sharedbuf",
306       "stacktrace": ".*(WebCore|blink)::SharedBuffer::buffer.*",
307       "allocator": "malloc"
308     },
309     {
310       "name": "tc-webcore-sharedbuf",
311       "stacktrace": ".*(WebCore|blink)::SharedBuffer::append.*",
312       "allocator": "malloc"
313     },
314     {
315       "name": "tc-webcore-XHRcreate",
316       "stacktrace": ".*(WebCore|blink)::XMLHttpRequest::create .*",
317       "allocator": "malloc"
318     },
319     {
320       "name": "tc-webcore-XHRreceived",
321       "stacktrace": ".*(WebCore|blink)::XMLHttpRequest::didReceiveData.*",
322       "allocator": "malloc"
323     },
324     {
325       "name": "tc-webcore-docwriter-add",
326       "stacktrace": ".*(WebCore|blink)::DocumentWriter::addData.*",
327       "allocator": "malloc"
328     },
329     {
330       "name": "tc-webcore-node-and-doc",
331       "stacktrace": ".*(WebCore|blink)::HTML[a-zA-Z0-9_]*Element::create .*",
332       "allocator": "malloc"
333     },
334     {
335       "name": "tc-webcore-node-and-doc",
336       "stacktrace": ".*(WebCore|blink)::Text::create .*",
337       "allocator": "malloc"
338     },
339     {
340       "name": "tc-webcore-node-and-doc",
341       "stacktrace": ".*(WebCore|blink)::Comment::create .*",
342       "allocator": "malloc"
343     },
344     {
345       "name": "tc-webcore-node-and-doc",
346       "stacktrace": ".*(WebCore|blink)::HTMLDocument::create .*",
347       "allocator": "malloc"
348     },
349     {
350       "name": "tc-webcore-node-and-doc",
351       "stacktrace": ".*(WebCore|blink)::CSSStyleRule::create .*",
352       "allocator": "malloc"
353     },
354     {
355       "name": "tc-webcore-node-and-doc",
356       "stacktrace": ".*(WebCore|blink)::Attribute::create .*",
357       "allocator": "malloc"
358     },
359     {
360       "name": "tc-webcore-node-and-doc",
361       "stacktrace": ".*(WebCore|blink)::DOMWindow::create .*",
362       "allocator": "malloc"
363     },
364     {
365       "name": "tc-webcore-node-factory",
366       "stacktrace": ".*(WebCore|blink)::HTML[a-zA-Z0-9_]*Factory::create[a-zA-Z0-9_]*Element.*",
367       "allocator": "malloc"
368     },
369     {
370       "name": "tc-webcore-element-wrapper",
371       "stacktrace": ".*(WebCore|blink)::createHTML[a-zA-Z0-9_]*ElementWrapper.*",
372       "allocator": "malloc"
373     },
374     {
375       "name": "tc-webcore-stylepropertyset",
376       "stacktrace": ".*(WebCore|blink)::StylePropertySet::create .*",
377       "allocator": "malloc"
378     },
379     {
380       "name": "tc-webcore-style-createsheet",
381       "stacktrace": ".*(WebCore|blink)::StyleElement::createSheet.*",
382       "allocator": "malloc"
383     },
384     {
385       "name": "tc-webcore-resource",
386       "stacktrace": ".*(WebCore|blink)::ResourceFetcher::requestResource .*",
387       "allocator": "malloc"
388     },
389     {
390       "name": "tc-webcore-script-execute",
391       "stacktrace": ".*(WebCore|blink)::ScriptLoader::execute.*",
392       "allocator": "malloc"
393     },
394     {
395       "name": "tc-webcore-events-related",
396       "stacktrace": ".*(WebCore|blink)::createAttributeEventListener.*",
397       "allocator": "malloc"
398     },
399     {
400       "name": "tc-webcore-events-related",
401       "stacktrace": ".*(WebCore|blink)::V8LazyEventListener::create.*",
402       "allocator": "malloc"
403     },
404     {
405       "name": "tc-webcore-events-related",
406       "stacktrace": ".*(WebCore|blink)::V8EventListener::create.*",
407       "allocator": "malloc"
408     },
409     {
410       "name": "tc-webcore-events-related",
411       "stacktrace": ".*(WebCore|blink)::Event::create .*",
412       "allocator": "malloc"
413     },
414     {
415       "name": "tc-webcore-events-related",
416       "stacktrace": ".*(WebCore|blink)::EventListener::create .*",
417       "allocator": "malloc"
418     },
419     {
420       "name": "tc-webcore-document-write",
421       "stacktrace": ".*(WebCore|blink)::Document::write.*",
422       "allocator": "malloc"
423     },
424     {
425       "name": "tc-webcore-element-create-renderer",
426       "stacktrace": ".*(WebCore|blink)::[a-zA-Z0-9_]*Element::createRenderer .*",
427       "allocator": "malloc"
428     },
429     {
430       "name": "tc-webcore-image-frame-generator",
431       "stacktrace": ".*(WebCore|blink)::ImageFrameGenerator.*",
432       "allocator": "malloc"
433     },
434     {
435       "name": "tc-webcore-render-catch-all",
436       "stacktrace": ".*(WebCore|blink)::RenderLayer.*",
437       "allocator": "malloc"
438     },
439     {
440       "name": "tc-webcore-render-catch-all",
441       "stacktrace": ".*(WebCore|blink)::RenderBlock.*",
442       "allocator": "malloc"
443     },
444     {
445       "name": "tc-webcore-render-catch-all",
446       "stacktrace": ".*(WebCore|blink)::RenderWidget.*",
447       "allocator": "malloc"
448     },
449     {
450       "name": "tc-webcore-render-catch-all",
451       "stacktrace": ".*(WebCore|blink)::RenderView.*",
452       "allocator": "malloc"
453     },
454     {
455       "name": "tc-webcore-render-catch-all",
456       "stacktrace": ".*(WebCore|blink)::RenderViewImpl.*",
457       "allocator": "malloc"
458     },
459     {
460       "name": "tc-webcore-render-catch-all",
461       "stacktrace": ".*(WebCore|blink)::RenderStyle.*",
462       "allocator": "malloc"
463     },
464     {
465       "name": "tc-webcore-render-catch-all",
466       "stacktrace": ".*(WebCore|blink)::RenderText.*",
467       "allocator": "malloc"
468     },
469     {
470       "name": "tc-webcore-render-catch-all",
471       "stacktrace": ".* RendererMain .*",
472       "allocator": "malloc"
473     },
474     {
475       "name": "tc-webcore-setInnerHTML-except-node",
476       "stacktrace": ".*(WebCore|blink)::Element::setInnerHTML.*",
477       "allocator": "malloc"
478     },
479     {
480       "name": "tc-wtf-StringImpl-user-catch-all",
481       "stacktrace": ".*WTF::StringImpl::create .*",
482       "allocator": "malloc"
483     },
484     {
485       "name": "tc-wtf-StringImpl-user-catch-all",
486       "stacktrace": ".*WTF::StringImpl::createUninitialized.*",
487       "allocator": "malloc"
488     },
489     {
490       "name": "tc-wtf-HashTable-user-catch-all",
491       "stacktrace": ".*WTF::HashTable::allocateTable.*",
492       "allocator": "malloc"
493     },
494     {
495       "name": "tc-webcore-everything-create",
496       "stacktrace": ".*(WebCore|blink)::[a-zA-Z0-9_]*::create .*",
497       "allocator": "malloc"
498     },
499     {
500       "name": "tc-webkit-from-v8-catch-all",
501       "stacktrace": ".*(WTF::|WebCore::|blink::|WebKit::).*v8::.*",
502       "allocator": "malloc"
503     },
504     {
505       "name": "tc-webkit-catch-all",
506       "stacktrace": ".*(WTF::|WebCore::|blink::|WebKit::).*",
507       "allocator": "malloc"
508     },
509     {
510       "name": "tc-v8-catch-all",
511       "stacktrace": ".*v8::.*",
512       "allocator": "malloc"
513     },
514     {
515       "name": "tc-stl-string",
516       "stacktrace": ".*std::basic_string::.*",
517       "allocator": "malloc"
518     },
519     {
520       "name": "tc-stl-rbtree",
521       "stacktrace": ".*std::priv::_Rb_tree::.*",
522       "allocator": "malloc"
523     },
524     {
525       "name": "tc-stl-vector",
526       "stacktrace": ".*std::priv::_Impl_vector::.*",
527       "allocator": "malloc"
528     },
529     {
530       "name": "tc-stl-hashtable",
531       "stacktrace": ".*std::hashtable::.*",
532       "allocator": "malloc"
533     },
534     {
535       "name": "tc-stl-other",
536       "stacktrace": ".*std::__stl_new.*",
537       "allocator": "malloc"
538     },
539     {
540       "name": "tc-catch-all",
541       "stacktrace": ".*",
542       "allocator": "malloc"
543     },
544     {
545       "name": "UNTIL_HERE_FOR_TOTAL",
546       "stacktrace": "optional",
547       "allocator": "optional"
548     },
549     {
550       "name": "total-exclude-profiler",
551       "stacktrace": "optional",
552       "allocator": "optional"
553     },
554     {
555       "name": "total",
556       "stacktrace": "optional",
557       "allocator": "optional"
558     },
559     {
560       "name": "absent",
561       "stacktrace": "optional",
562       "allocator": "optional"
563     },
564     {
565       "name": "anonymous",
566       "stacktrace": "optional",
567       "allocator": "optional"
568     },
569     {
570       "name": "file-exec",
571       "stacktrace": "optional",
572       "allocator": "optional"
573     },
574     {
575       "name": "file-nonexec",
576       "stacktrace": "optional",
577       "allocator": "optional"
578     },
579     {
580       "name": "stack",
581       "stacktrace": "optional",
582       "allocator": "optional"
583     },
584     {
585       "name": "other",
586       "stacktrace": "optional",
587       "allocator": "optional"
588     }
589   ],
590   "version": "POLICY_DEEP_3"