Chinaunix首页 | 论坛 | 博客
  • 博客访问: 53755
  • 博文数量: 11
  • 博客积分: 606
  • 博客等级: 上士
  • 技术积分: 120
  • 用 户 组: 普通用户
  • 注册时间: 2010-01-31 22:16
文章分类
文章存档

2011年(1)

2010年(10)

分类: LINUX

2010-03-02 17:15:41

问题描述:
  部分linux发行版安装在笔记本上时可能会出现类似如下错误提示:
pci 0000:01:00.0: BAR 6: no parent found for of device
pci 0000:01:00.0: BAR 0: no parent found for of device
pci 0000:01:00.0: BAR 2: no parent found for of device
pci 0000:01:00.0: BAR 0: no parent found for of device
  这是kernel加载时,检查设备出现的错误提示,但是好像不影响使用,所以只要修改下内核,屏蔽掉此错误提示,然后重新编译安装新内核即可。
  我使用的事fedora 12,此次重新编译内核选择2.6.32.9

解决步骤:
1.下载新内核,并解压
#tar xvf linux-2.6.32.9.tar.bz2 -C /usr/src
2.进入新内核目录,修改dirvers/pci/setup-res.c源码
#vi drivers/pci/setup-res.c
先找到111行,因为我出现的只有
pci 0000:01:00.0: BAR 0: no parent found for of device
pci 0000:01:00.0: BAR 2: no parent found for of device
pci 0000:01:00.0: BAR 0: no parent found for of device
这两个错误提示(BAR 0 和BAR 2),所以我修改为:
if (err && (resource != 0) && (resource != 2) ) {
如果你的错误提示有含有BAR 6这个字段,则写成如下:
if (err && (resource != 0) && (resource != 2) && (resource != 6)) {
 再找到113行,修改成如下:(就是删除掉of)
              dev_err(&dev->dev, "BAR %d: %s %s %pR\n",
3.编译安装新内核
先拷贝系统内核的配置文件到当前内核目录下,并改名为.config:
#cp /boot/config-2.6.31~~~ /usr/src/linux-2.6.32.9/.config
#make menuconfig
加载刚才的.config,确定退出
#make all
#make modules_install
#make install (执行此步骤前,保证/boot目录剩余100M左右空间)
#vi /boot/grub/grub.conf (确定grub.conf已经正确配置,能引导新内核)
4.完成,重新启动即可。

完成这些,感谢1024crak给与提示!网友转载请注明出处。

阅读(2580) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~