Describe the bug
- redroid 12
- 长时间观看抖音直播/视频的时候发生绿屏
- 32G内存运行一台手机,一段时间后剩余内存仅1.3G,并且计算进程RSS之和为5.7G
- 如果创建多台手机,现象将更快复现
- 出现该问题时,kill该进程( media.c2@1.1-service)绿屏现象立马消失
make sure the required kernel modules present
分析信息
执行该分析脚本:test_mem_leakage.sh,随后发现:
count=1说明目前只有创建者持有该buffer
- 绝大部分记录都是类似的
- 类似的记录只增不减(说明有程序在疯狂分配内存但不释放)
--- DMA-BUF total size ---
Total DMA-BUF: 27594.29 MB (3406 buffers)
Dma-buf Objects:现
size flags mode count exp_name ino
00004096 00000002 00080007 00000001 system 00673261
Attached Devices:
Total 0 devices attached
...
继续执行adb shell dmabuf_dump,随后发现:
c2@1.1-service:该进程占用28G大小的dma-buf
----------------------
droid.ugc.aweme:20101
Name Rss Pss nr_procs Inode
<unknown> 14044 kB 0 kB 3 674514
...
PROCESS TOTAL 172272 kB 9116 kB
----------------------
c2@1.1-service:88
Name Rss Pss nr_procs Inode
<unknown> 356 kB 0 kB 1 603235
...
PROCESS TOTAL 28213724 kB 2164 kB
----------------------
dmabuf total: 28492484 kB kernel_rss: 0 kB userspace_rss: 28873428 kB userspace_pss: 11280 kB
Screenshots

Describe the bug
make sure the required kernel modules present
grep binder /proc/filesystemsgrep ashmem /proc/misc(optional)分析信息
执行该分析脚本:test_mem_leakage.sh,随后发现:
count=1说明目前只有创建者持有该buffer继续执行
adb shell dmabuf_dump,随后发现:c2@1.1-service:该进程占用28G大小的dma-bufScreenshots