[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] Possible bug with pass-through hot-plug?
The qemu xen i tested today, (which aslo doesn't work), is: -------------------------------------------------------------- commit a05958b6e32f1748ea70b1efca13394956c0698b Author: Ian Jackson <ian.jackson@xxxxxxxxxxxxx> Date: Wed Oct 7 15:57:18 2009 +0100 block: Clean up after deleting BHs -------------------------------------------------------------- Here are the log results you wanted (without my change): dm-command: hot insert pass-through pci dev insert_to_pci_devfn: bdf_slt="0000:00:1b.0@100" insert_to_pci_devfn: devfn=0x100 -> slot=0x00, func=0x0 register_real_device: Assigning real physical device 00:1b.0 ... Try to reproduce it, with the change i offered, and i'm almost sure, you will see it happens. Tom On Thu, Oct 8, 2009 at 1:41 AM, Simon Horman <horms@xxxxxxxxxxxx> wrote: > On Thu, Oct 08, 2009 at 09:52:11AM +1100, Simon Horman wrote: >> On Wed, Oct 07, 2009 at 05:41:38PM +0200, Tom Rotenberg wrote: >> > Just tried it, with xen-unstable changeset: 20249, and it also doesn't >> > work. >> > >> > When i assigned the device regularly, it was assigned to the virtual >> > BDF: 00:04.0, and the detachment worked fine, but when i caused it to >> > be registered on the virtual BDF 00:1b.0 - the detachment didn't >> > work... >> > >> > The change i made to the qemu code to make the device to be assigned >> > on 00:1b.0, is: >> > >> > diff --git a/hw/pass-through.c b/hw/pass-through.c >> > index 8d80755..2b79812 100644 >> > --- a/hw/pass-through.c >> > +++ b/hw/pass-through.c >> > @@ -974,6 +974,7 @@ int insert_to_pci_devfn(char *bdf_slt) >> > return -1; >> > } >> > >> > + devfn = PCI_DEVFN(0x1b,0); >> > return __insert_to_pci_devfn(bus, dev, func, devfn, opt); >> > >> > } >> > >> > >> > Can u please check if it works on your system? >> >> Sure, will do. > > Hi Tom, > > I'm not having any luck reproducing this problem. > Could you check which version of qemu-xen you have, > mine is commit "allow logdirty commands while paused (unbreaks > 60dbe1+8f09f4)" (743edef44f1d0da792aeb38a33bf468a4596f730) of > http://xenbits.xensource.com/git-http/qemu-xen-unstable.git > > I am curious to know what the value of bdf_slt and devfn > without your modification. Could you try the following? > > diff --git a/hw/pass-through.c b/hw/pass-through.c > index a97368a..4a5c016 100644 > --- a/hw/pass-through.c > +++ b/hw/pass-through.c > @@ -971,11 +971,15 @@ int insert_to_pci_devfn(char *bdf_slt) > int seg, bus, dev, func, devfn; > char *opt; > > + PT_LOG("bdf_slt=\"%s\"\n", bdf_slt); > + > if ( !parse_bdf(&bdf_slt, &seg, &bus, &dev, &func, &opt, &devfn) ) > { > return -1; > } > > + PT_LOG("devfn=0x%02x -> slot=0x%02x, func=0x%x\n", > + devfn, PCI_SLOT(devfn), PCI_FUNC(devfn)); > return __insert_to_pci_devfn(bus, dev, func, devfn, opt); > > } > > _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |