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哈哈~
 
 

相关内容

    暂无相关文章