一、配置 make menuconfig General setup (18)Kernel log buffer size (16 => 64KB,17 => 128KB)二、源码 kernel/printk.c define __LOG_BUF_LEN (1 << CONFIG_LOG_BUF_SHIFT)static char __log_buf[__LOG_BUF_LEN];可以看到,是已经
+++ b/kernel/printk/printk.c @@ -456,7+456,8@@ static u32 clear_idx;/* record buffer */#define LOG_ALIGN __alignof__(struct printk_log)-#define __LOG_BUF_LEN (1 << CONFIG_LOG_BUF_SHIFT)+/*#define __LOG_BUF_LEN (1 << CONFIG_LOG_BUF_SHIFT)*/+#define __LOG_BUF_LEN (...
static char __log_buf[__LOG_BUF_LEN] __aligned(LOG_ALIGN); 缓冲区大小是 CONFIG_LOG_BUF_SHIFT*2 个字节,CONFIG_LOG_BUF_SHIFT 是在 init/Kconfig 文件中设置的,我们可以在menuconfig的相关路径中修改: General setup -> Kernel log buffer size(16 => 64KB, 17 => 128kB) 还可以在加载内核时用...
Select kernel log buffer sizeasa power of2.Examples:17=>128KB16=>64KB15=>32KB14=>16KB13=>8KB12=>4KB 可以看到 shift 最大值限制到了 21,也就是:2 M 方法2:源码中修改 路径:kernel/printk.c #define __LOG_BUF_LEN (1 << CONFIG_LOG_BUF_SHIFT)static char __log_buf[__LOG_BUF_LEN]; ...
#define __LOG_BUF_LEN (1 << CONFIG_LOG_BUF_SHIFT)===> Let buffer size x 32 #define _...
linux 内存分配参数导致的 buffer_pool 分配不出来的问题排查: 参考:http://blog.csdn.net/jollyjumper/article/details/24127009 原文:http://www.cnblogs.com/gomysql/p/6130405.html vm.overcommit_memory 默认值为:0 从内核文档里得知,该参数有三个值,分别是: ...
kernel.unprivileged_userns_clone=1 vm 参数 vm.swappiness: 主要作用在内存与交换分区之间优化,该值的大小对如何使用swap分区是有着很大的联系的,并对系统使用效率有一定的影响,因为Swap分区数据存于磁盘性能会相对内存低,尤其是读写频繁的情绪IO消耗会更大 (注意具体环境具体分析); ...
int "Kernel log buffer size (16 => 64KB, 17 => 128KB)" range 12 25 if !H8300 range 12 19 if H8300 default 17 depends on PRINTK help Select the minimal kernel log buffer size as a power of 2. The final size is affected by LOG_CPU_MAX_BUF_SHIFT config ...
比如平时我们只需要打印KERN_WARNING级别以上的关键性LOG,但是调试的时候,我们可以选择打印KERN_DEBUG等以上的详细LOG。而这些都不需要我们修改代码,只需要通过命令修改默认日志输出级别: mtj@ubuntu:~$ cat/proc/sys/kernel/printk4417mtj@ubuntu:~$ cat/proc/sys/kernel/printk_delay0mtj@ubuntu:~$ cat/proc/sys...
可以看到kernel log可以通过串口输出,也可以在发生oops/panic后将buffer保存成文件打包到db里,然后拿到串口log或db对kernel进行调试分析了。 通常手机会保留串口测试点,但要抓串口log一般都要拆机,比较麻烦。前面讲到可以将kernel log保存成文件打包在db里,db是什么东西?