内核不支持 crashkernel=auto 参数分析

来源:互联网 发布:周立功单片机 编辑:程序博客网 时间:2024/05/12 12:44

最新的opnfv内核不支持  crashkernel=auto 参数分析,是因为在__parse_crashkernel中少了如下的代码


#ifdef CONFIG_KEXEC_AUTO_RESERVEif (strncmp(ck_cmdline, "auto", 4) == 0) {unsigned long long size;size = arch_default_crash_size(system_ram);if (size != 0) {*crash_size = size;*crash_base = arch_default_crash_base();return 0;} else {pr_warning("crashkernel=auto resulted in zero bytes of reserved memory.\n");return -ENOMEM;}}#endif


这段代码发现参数为crashkernel=auto后,会用arch_default_crash_size()和arch_default_crash_base() 自动计算小内核的内存大小和起始位置,现在新的内核4.4.6中没有了该逻辑,必须配置crashkernel=256M这样的参数


注:

CONFIG_KEXEC_AUTO_RESERVE这段代码,在upstream的3.10都没有,说明是红帽自己的补丁,网上有讨论,看来没有合入主分支,可以参考

http://marc.info/?t=124947125000003&r=1&w=2


0 0