On 09/12/2015 03:36 PM, Knut Omang wrote:
Without this, the devfn argument to pci_create_*()
does not affect the assigned devfn.

Needed to support (VF_STRIDE,VF_OFFSET) values other than (1,1)
for SR/IOV.

Signed-off-by: Knut Omang <knut.om...@oracle.com>
---
  hw/pci/pci.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/hw/pci/pci.c b/hw/pci/pci.c
index ccea628..a5cc015 100644
--- a/hw/pci/pci.c
+++ b/hw/pci/pci.c
@@ -1840,7 +1840,7 @@ static void pci_qdev_realize(DeviceState *qdev, Error 
**errp)
      bus = PCI_BUS(qdev_get_parent_bus(qdev));
      pci_dev = do_pci_register_device(pci_dev, bus,
                                       object_get_typename(OBJECT(qdev)),
-                                     pci_dev->devfn, errp);
+                                     object_property_get_int(OBJECT(qdev), 
"addr", NULL), errp);
Hi,

I don't get this, using object_property_get_int on "addr" should return the value 
of pci_dev->devfn,
can you please tell what exactly is not working?

Thanks,
Marcel



      if (pci_dev == NULL)
          return;




Reply via email to