On Tue, Nov 25, 2008 at 07:38:39PM -0800, Chris Wright wrote: > When doing device assignment with KVM there's currently nothing to > protect the device from having a driver in the host as well as the guest. > This trivial module just binds the pci device on the host to a stub > driver so that a real host driver can't bind to the device. It has no > pci id table, it supports only dynamic ids. > > # 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 > lrwxrwxrwx 1 root root 0 2008-11-25 19:10 /sys/bus/pci/devices/0000:00:19.0/driver -> ../../../bus/pci/drivers/pci-stub You might want to put this somewhere in the .c or documentation files somewhere as well. > > Cc: "Kay, Allen M" <allen.m.kay@xxxxxxxxx> > Cc: "Nakajima, Jun" <jun.nakajima@xxxxxxxxx> > Signed-off-by: Chris Wright <chrisw@xxxxxxxxxxxx> > --- > drivers/pci/Kconfig | 9 +++++++++ > drivers/pci/Makefile | 2 ++ > drivers/pci/pci-stub.c | 38 ++++++++++++++++++++++++++++++++++++++ > 3 files changed, 49 insertions(+), 0 deletions(-) > create mode 100644 drivers/pci/pci-stub.c > > diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig > index e1ca425..f6183df 100644 > --- a/drivers/pci/Kconfig > +++ b/drivers/pci/Kconfig > @@ -42,6 +42,15 @@ config PCI_DEBUG > > When in doubt, say N. > > +config PCI_STUB > + tristate "PCI Stub driver" > + depends on PCI > + 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. "guest operating system"? Otherwise, just "guest" doesn't mean much here in this context. Other than that minor thing, looks great. Acked-by: Greg Kroah-Hartman <gregkh@xxxxxxx> thanks, greg k-h -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html