[RK3399]开启ramoops,查看kernel log

本文档详细介绍了如何在基于RK3399的Linux系统上配置和验证内核持久化存储(pstore),包括修改内核配置文件、配置设备树以及设置内存预留区域。通过这些步骤,可以实现内核和用户空间消息的记录,以便在系统崩溃或异常时进行故障排查。
摘要由CSDN通过智能技术生成

环境

CPU:RK3399
kernl:Linux 4.4
OS::ubuntu 18.04

配置

方式一:直接修改kernel/arch/arm64/configs/rk3399_linux_defconfig文件

CONFIG_PSTORE=y
CONFIG_PSTORE_CONSOLE=y
CONFIG_PSTORE_RAM=y

配置dts增加相关节点:ramoops_mem

 reserved-memory {
            #address-cells = <2>;
            #size-cells = <2>;
            ranges;

            drm_logo: drm-logo@00000000 {
                    compatible = "rockchip,drm-logo";
                    reg = <0x0 0x0 0x0 0x0>;
            };

            ramoops_mem: region@110000 {
                    reg = <0x0 0x110000 0x0 0xf0000>;
                    reg-names = "ramoops_mem";
            };
    };
    
 ramoops: ramoops {
                compatible = "ramoops";
                record-size = <0x0 0x40000>;
                console-size = <0x0 0x80000>;
                ftrace-size = <0x0 0x00000>;
                pmsg-size = <0x0 0x00000>;
                memory-region = <&ramoops_mem>;
        };

方式二:make menuconfig 配置

	$ make menuconfig
	|-> File systems
		|-> Miscellaneous filesystems
			|-> Persistent store support
				|-> Log kernel console messages		# console 前端
				|-> Log user space messages			# pmsg 前端
				|-> Persistent function tracer			# ftrace 前端
				|-> Log panic/oops to a RAM buffer 		# pstore/ram 后端
				|-> Log panic/oops to a block device 	# pstore/blk 后端

验证

step1:echo 1 > /proc/sys/kernel/sysrq
step2:echo c > /proc/sysrq-trigger
此时会产生kernel panic。

查看日志文件

挂载:
mount -t pstore pstore /sys/fs/pstore
这一步,可以在开机时执行。

注意:出现死机后不能不能掉电,开关机也不行,可以直接通关reset按键复位。
日志文件位于/sys/fs/pstore下。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值