[linux内存管理] 第 059 篇 /proc/slabinfo 详解 2026-09-08 评论
[linux内存管理] 第 059 篇 /proc/slabinfo 详解

本文详细介绍了Linux内核SLUB内存分配器中`/proc/slabinfo`文件的内容与实现原理。文章首先说明SLUB是默认的内核对象分配器,并解释了通用缓存(如`kmalloc-*`)与专用缓存(如`dentry`)的管理框架。核心内容围绕如何利用`/proc/slabinfo`排查slab内存泄漏问题,包括结合`/proc/meminfo`、识别异常`kmem_cache`、进行时间序列采样及使用调试工具等步骤。此外,文章还分析了`/proc/slabinfo`在内核代码中的注册与`seq_file`接口实现。

[Android稳定性] 第050篇 [问题篇] slab内存泄露造成设备黑屏 2025-06-19 评论
[Android稳定性] 第050篇 [问题篇] slab内存泄露造成设备黑屏

本文描述了在测试手机经过长期智能充电后,出现卡顿和黑屏的问题现象。复现步骤包括设置手机时间和电池温度,并使用QC3.0充电器进行充电。预期结果是系统界面流畅,但实际结果是系统界面卡死和黑屏。通过分析内存信息和slab信息,发现内存不足和slab内存泄露问题。通过slabtrace分析,确定问题根源在于charger模块中的一些函数调用导致了内存泄露。解决方案是在申请内存前,先判断是否已经申请过,以避免重复申请。