目录
分配的ION buffer 都会设置为DMA buffer,以fd的形式交给使用方, 如app, camera等。
查看ion 的使用情况,可以查看ion 的各个heap分配情况, 也可以从DMA buffer 入手查看具体使用者的信息,整合各个信息能看到是谁异常使用。
Android 12开始, ION分配已经被DMA-buf heaps替代。 但核心还是使用 DMA buffer分享到各个进程。
查看DMA buffer 信息
使用如下命令, 其中带ion 字样的为ion buffer。 其中有ino项, 为dms buffer inode.
cat /sys/kernel/debug/dma_buf/bufinfo
使用如下命令找使用该ino的pid号:
lsof |grep ino
使用lsof查看某个pid打开的文件情况, 包括fd, 类型, 大小等。
lsof -p pid
也可以查看某个pid 打开的 dmsbuf
ls -l /proc/pid/fd
查看ion buffer 的总体分配情况
列出ion 各heap类型: 信息
ls -l /sys/kernel/debug/ion
查看heap 类型为system 的使用情况:
cat /sys/kernel/debug/ion/system/system_stats