1 { 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-gpu-transferbuffer", 31 "mmap-gpu-ringbuffer", 32 "mmap-catch-all", 33 "tc-disk_cache-backing", 34 "tc-disk_cache-other", 35 "tc-sqlite3MemAlloc", 36 "tc-angle", 37 "tc-crypto", 38 "tc-net-iobuffer", 39 "tc-stl-string", 40 "tc-stl-rbtree", 41 "tc-stl-vector", 42 "tc-stl-hashtable", 43 "tc-stl-node", 44 "tc-catch-all", 45 "tc-unused", 46 "UNTIL_HERE_FOR_TOTAL", 47 "total-exclude-profiler", 48 "total", 49 "absent", 50 "anonymous", 51 "file-exec", 52 "file-nonexec", 53 "stack", 54 "other", 55 "mmap-total-log", 56 "mmap-no-log", 57 "mmap-total-record", 58 "other-total-log", 59 "tc-total-log", 60 "tc-no-log", 61 "tc-total-record", 62 "tc-total" 63 ], 64 "rules": [ 65 { 66 "name": "second", 67 "stacktrace": "optional", 68 "allocator": "optional" 69 }, 70 { 71 "name": "mmap-profiler", 72 "stacktrace": ".*(ProfilerMalloc|MemoryRegionMap::).*", 73 "allocator": "mmap" 74 }, 75 { 76 "name": "mmap-type-profiler", 77 "stacktrace": ".*(TypeProfilerMalloc).*", 78 "allocator": "mmap" 79 }, 80 { 81 "name": "mmap-tcmalloc", 82 "stacktrace": ".*(DoAllocWithArena|SbrkSysAllocator::Alloc|MmapSysAllocator::Alloc|LowLevelAlloc::Alloc|LowLevelAlloc::AllocWithArena).*", 83 "allocator": "mmap" 84 }, 85 { 86 "name": "FROM_HERE_FOR_TOTAL", 87 "stacktrace": "optional", 88 "allocator": "optional" 89 }, 90 { 91 "name": "mustbezero", 92 "stacktrace": "optional", 93 "allocator": "optional" 94 }, 95 { 96 "name": "unhooked-absent", 97 "stacktrace": "optional", 98 "allocator": "optional" 99 }, 100 { 101 "name": "unhooked-ashmem-dalvik-heap", 102 "mappedpathname": "/dev/ashmem/dalvik-heap.*", 103 "allocator": "unhooked" 104 }, 105 { 106 "name": "unhooked-ashmem-dalvik-LinearAlloc", 107 "mappedpathname": "/dev/ashmem/dalvik-LinearAlloc.*", 108 "allocator": "unhooked" 109 }, 110 { 111 "name": "unhooked-ashmem-dalvik-aux-structure", 112 "mappedpathname": "/dev/ashmem/dalvik-aux-structure.*", 113 "allocator": "unhooked" 114 }, 115 { 116 "name": "unhooked-ashmem-dalvik-bitmap", 117 "mappedpathname": "/dev/ashmem/dalvik-bitmap.*", 118 "allocator": "unhooked" 119 }, 120 { 121 "name": "unhooked-ashmem-dalvik-other", 122 "mappedpathname": "/dev/ashmem/dalvik.*", 123 "allocator": "unhooked" 124 }, 125 { 126 "name": "unhooked-kgsl", 127 "mappedpathname": "/dev/kgsl-3d0", 128 "allocator": "unhooked" 129 }, 130 { 131 "name": "unhooked-pvrsrvkm", 132 "mappedpathname": "/dev/pvrsrvkm.*", 133 "allocator": "unhooked" 134 }, 135 { 136 "name": "unhooked-system-dex", 137 "mappedpathname": "/data/dalvik-cache/system.*.dex.*", 138 "allocator": "unhooked" 139 }, 140 { 141 "name": "unhooked-chrome-dex", 142 "mappedpathname": "^/.*?(chrome|content).*?apk (a] classes.dex", 143 "allocator": "unhooked" 144 }, 145 { 146 "name": "unhooked-other-ashmem", 147 "mappedpathname": "/dev/ashmem/.*", 148 "allocator": "unhooked" 149 }, 150 { 151 "name": "unhooked-anonymous", 152 "mappedpathname": "^$", 153 "allocator": "unhooked" 154 }, 155 { 156 "name": "unhooked-file-exec-lib-chrome-shared", 157 "mappedpathname": "^/.*?(chromeview|content).*", 158 "mappedpermission": "..x.", 159 "allocator": "unhooked", 160 "sharedwith": ["group", "others"] 161 }, 162 { 163 "name": "unhooked-file-exec-lib-chrome-private", 164 "mappedpathname": "^/.*?(chromeview|content).*", 165 "mappedpermission": "..x.", 166 "allocator": "unhooked", 167 "sharedwith": ["private"] 168 }, 169 { 170 "name": "unhooked-file-exec", 171 "mappedpathname": "^/.*", 172 "mappedpermission": "..x.", 173 "allocator": "unhooked" 174 }, 175 { 176 "name": "unhooked-file-nonexec-lib-chrome-shared", 177 "mappedpathname": "^/.*?(chromeview|content).*", 178 "allocator": "unhooked", 179 "sharedwith": ["group", "others"] 180 }, 181 { 182 "name": "unhooked-file-nonexec-lib-chrome-private", 183 "mappedpathname": "^/.*?(chromeview|content).*", 184 "allocator": "unhooked", 185 "sharedwith": ["private"] 186 }, 187 { 188 "name": "unhooked-file-nonexec", 189 "mappedpathname": "^/.*", 190 "allocator": "unhooked" 191 }, 192 { 193 "name": "unhooked-stack", 194 "mappedpathname": ".stack.", 195 "allocator": "unhooked" 196 }, 197 { 198 "name": "unhooked-other", 199 "mappedpathname": ".*", 200 "allocator": "unhooked" 201 }, 202 { 203 "name": "mmap-gpu-transferbuffer", 204 "stacktrace": ".*gpu::TransferBufferManager::RegisterTransferBuffer.*", 205 "allocator": "mmap" 206 }, 207 { 208 "name": "mmap-gpu-ringbuffer", 209 "stacktrace": ".*gpu::CommandBufferHelper::AllocateRingBuffer.*", 210 "allocator": "mmap" 211 }, 212 { 213 "name": "mmap-catch-all", 214 "stacktrace": ".*", 215 "allocator": "mmap" 216 }, 217 { 218 "name": "tc-disk_cache-backing", 219 "stacktrace": ".*disk_cache::BackendImpl::InitBackingStore.*", 220 "allocator": "malloc" 221 }, 222 { 223 "name": "tc-disk_cache-other", 224 "stacktrace": ".*disk_cache::.*", 225 "allocator": "malloc" 226 }, 227 { 228 "name": "tc-sqlite3MemAlloc", 229 "stacktrace": ".*sqlite3MemMalloc.*", 230 "allocator": "malloc" 231 }, 232 { 233 "name": "tc-angle", 234 "stacktrace": ".*TPoolAllocator::allocate.*", 235 "allocator": "malloc" 236 }, 237 { 238 "name": "tc-crypto", 239 "stacktrace": ".*(CRYPTO_malloc|CRYPTO_realloc).*", 240 "allocator": "malloc" 241 }, 242 { 243 "name": "tc-net-iobuffer", 244 "stacktrace": ".*net::IOBuffer::IOBuffer.*", 245 "allocator": "malloc" 246 }, 247 { 248 "name": "tc-stl-string", 249 "stacktrace": ".*std::basic_string::.*", 250 "allocator": "malloc" 251 }, 252 { 253 "name": "tc-stl-rbtree", 254 "stacktrace": ".*std::priv::_Rb_tree::.*", 255 "allocator": "malloc" 256 }, 257 { 258 "name": "tc-stl-vector", 259 "stacktrace": ".*std::priv::_Impl_vector::.*", 260 "allocator": "malloc" 261 }, 262 { 263 "name": "tc-stl-hashtable", 264 "stacktrace": ".*std::hashtable::.*", 265 "allocator": "malloc" 266 }, 267 { 268 "name": "tc-stl-node", 269 "stacktrace": ".*std::priv::_Impl_vector::.*", 270 "allocator": "malloc" 271 }, 272 { 273 "name": "tc-catch-all", 274 "stacktrace": ".*", 275 "allocator": "malloc" 276 }, 277 { 278 "name": "UNTIL_HERE_FOR_TOTAL", 279 "stacktrace": "optional", 280 "allocator": "optional" 281 }, 282 { 283 "name": "total-exclude-profiler", 284 "stacktrace": "optional", 285 "allocator": "optional" 286 }, 287 { 288 "name": "total", 289 "stacktrace": "optional", 290 "allocator": "optional" 291 }, 292 { 293 "name": "absent", 294 "stacktrace": "optional", 295 "allocator": "optional" 296 }, 297 { 298 "name": "anonymous", 299 "stacktrace": "optional", 300 "allocator": "optional" 301 }, 302 { 303 "name": "file-exec", 304 "stacktrace": "optional", 305 "allocator": "optional" 306 }, 307 { 308 "name": "file-nonexec", 309 "stacktrace": "optional", 310 "allocator": "optional" 311 }, 312 { 313 "name": "stack", 314 "stacktrace": "optional", 315 "allocator": "optional" 316 }, 317 { 318 "name": "other", 319 "stacktrace": "optional", 320 "allocator": "optional" 321 } 322 ], 323 "version": "POLICY_DEEP_3" 324 } 325