Chinaunix首页 | 论坛 | 博客
  • 博客访问: 8112
  • 博文数量: 2
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 10
  • 用 户 组: 普通用户
  • 注册时间: 2013-06-19 17:49
个人简介

存储研发工程师

文章分类

全部博文(2)

文章存档

2016年(2)

我的朋友
最近访客

分类: LINUX

2016-03-28 03:21:42

内核make menuconfig 里的BUS选项里有
< > PCI Stub driver 这个配置,很是好奇它是干什么的
看Kconfig中的help:Say Y or M here if you want be able to reserve a PCI device when it is going to be assigned to a guest operating system.

还是不清楚,看了源代码的注释:
* Usage is simple, allocate a new id to the stub driver and bind the
* device to it. For example:
*
*PCI Stub driver
* # echo “8086 10f5″ > /sys/bus/pci/drivers/pci-stub/new_id
* # echo -n 0000:00:19.0 > /sys/bus/pci/drivers/e1000e/unbind
* # echo -n 0000:00:19.0 > /sys/bus/pci/drivers/pci-stub/bind
* # ls -l /sys/bus/pci/devices/0000:00:19.0/driver
* …/0000:00:19.0/driver -> ../../../bus/pci/drivers/pci-stub
*/

最后想通了,看来嵌入式环境目前还不要此选项。
当你在当前Linux主机上运行时,一个e1000e的Intel PCIe网卡已经和一个e1000e的驱动结合。当你想在主机上再运行一个虚拟机,如KVM。而这个虚拟机又想自己驱动这个e1000e网卡,那就有麻烦了–一个设备只能有一个驱动。
使用PCI Stub ,能够将这个pci设备跟目前绑定的驱动分离,暂时由PCI Stub driver接管,最后交给虚拟机。
操作注释:
# echo “8086 10f5″ > /sys/bus/pci/drivers/pci-stub/new_id

取消e1000e设备跟当前e1000e驱动的绑定
* # echo -n 0000:00:19.0 > /sys/bus/pci/drivers/e1000e/unbind
建立e1000e设备到pci-stub 驱动的绑定
* # echo -n 0000:00:19.0 > /sys/bus/pci/drivers/pci-stub/bind
现在可以看到e1000e设备的驱动已经是pci-stub 了
* # ls -l /sys/bus/pci/devices/0000:00:19.0/driver
* …/0000:00:19.0/driver -> ../../../bus/pci/drivers/pci-stub

阅读(832) | 评论(0) | 转发(0) |
0

上一篇:没有了

下一篇:开源虚拟化管理平台Ovirt简介

给主人留下些什么吧!~~
评论热议
请登录后评论。

登录 注册