redhat9内核替换后不能关机解决
redhat9内核替换后不能关机解决
redhat9内核替换后不能关机解决
哥是小菜,高手飘过。。。。。。
背景
由于本本不给力,编译一次linux2.6就要一个多小时(虽然有做精简,水平有限),只好暂时把内核改动转到2.4,代码学习依然用2.6(等攒点钱了换本本-_-#)。把平台换到了redhat9,采用了内核版本为2.4.37.11。
内核在redhat9原有内核基础上仅开启了SMP,结果关机不掉电,如图:
看到这一幕,一头雾水,肿么办?系统出问题了/(ㄒoㄒ)/~~
1、先看看启动日志找找线索
有一句日志进入我的视线,my god(linux电源管理相关的是apm,直接切入)
有点眉目了,大致知道了原因,可以怎么解决呢?Linux嘛,看代码是王道。
2、搜代码弄死它
直接在代码里搜索相关日志,像我这个笨的都会,哈哈
if ((smp_num_cpus > 1) && !power_off && !smp) {
printk(KERN_NOTICE "apm: disabled - APM is not SMP safe.\n");
return -ENODEV;
}
一看就明白了吧,我的CPU有两个,所有power_off和smp不对,在找这俩的出去,咋不对呢?
在apm_setup中是这样的:
if (strncmp(str, "smp", 3) == 0) {
smp = !invert;
}
if ((strncmp(str, "power-off", 9) == 0) || (strncmp(str, "power_off", 9) == 0))
power_off = !invert;
invert就是看有没有前缀no-、no_。
3、解决验证下
启动参数加上apm=on,power-off,smp,十几分钟搞定O(∩_∩)O哈哈~
评论暂时关闭