搜索

244

主题

289

帖子

2158

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2158
发表于 2021-5-27 17:51:10 11118 浏览 0 回复

ramdump如何设置No_Delete.rdmp或mrdump_preallocated预留空间大小

[FAQ13777] ramdump如何设置No_Delete.rdmp或mrdump_preallocated预留空间大小
内容 (2021-03-02)


[DESCRIPTION]
开启ramdump功能,kernel发生crash后会在lk生成ramdump,由于lk没有文件系统的概念,无法在EXT4文件系统里创建文件并将ramdump保存起来,目前的做法是在kernel阶段先将文件创建好(/data/No_Delete.rdmp,M版本之后放在/data/dumpsys/mrdump_preallocated;Q版本之后放在/data/vendor/dumpsys/mrdump_preallocated),然后将文件的位置(lbaooo)再传给lk。
ramdump是压缩过的,大小随内容变化而变化,因此该文件要预留多大的空间很重要,那如何调整该文件的大小呢?

[SOLUTION]
开机后aee会根据以下条件生成No_Delete.rdmp(不会看该功能是否enable):
生成No_Delete.rdmp或mrdump_preallocated之后的/data剩余空间必须>=500MB。(空间太小也不行)
/sys/module/mrdump/dump_status必须存在。(表示存在mrdump driver)
默认的大小是物理内存的一半。如果想修改默认值,
L版本有以下2种方法:
请在*.rc设置persist.mtk.aee.allocate,该property的单位为: MB。该property必须在aee启动前设置,所以最好在*.rc设置这个值,注意:该property只有在不存在No_Delete.rdmp或mrdump_preallocated的情况下会生效,因此请添加完property后,同时删除/data/No_Delete.rdmp或/data/dumpsys/mrdump_preallocated(格式化刷机则不需要这个动作)。
你也可以手动执行命令控制文件大小(可以大于4G):adb shell aee -a [0|1|2|nnn]。其中大小是:
0:关闭,同时删除No_Delete.rdmp。
1:/proc/meminfo:MemTotal值的一半。
2:/proc/meminfo:MemTotal值。
nnn:自定义大小,单位为:MB。
执行完这个命令后会删除No_Delete.rdmp或mrdump_preallocated,然后根据新的大小重新生成该文件,同时生成persist.mtk.aee.allocate。
Q&R版本有以下3种方法:
可通过改code直接关闭MRDUMP feature:
在lk中:platform/mtxxx/rules.mk中:set MTK_MRDUMP_ENABLE=no

如果有root权限,可使用如下命令直接关闭:

mrdump_tool output-set none

如果有root权限,可设置size:

mrdump_tool file-allocate 0/1/2             0/1/2分别代表:关,hafmem,fullmem.

回复

使用道具 举报

返回列表
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


登录或注册
快速回复 返回顶部 返回列表