Hi, How is it supposed to live with Passthrough'ed NIC? Current way to instantiate a VFIO platform NIC looks like:
-device vfio-amd-xgbe,host=e0900000.xgmac where vfio-amd-xgbe is the name of the VFIO AMD XGBE platform QEMU device and e0900000.xgmac is the name of the device in /sys/bus/platform/devices. Before that commit I was able to instantiate this VFIO device and got networking working, testing it with ping. Now ping don't work anymore. I Guess I now use this other default NIC? Curiously it does not seem to prevent networking with upstreamed Calxeda Midway device and I did not figure why yet? Thank you in advance Best Regards Eric On 01/11/2016 03:34 PM, Peter Maydell wrote: > From: Ashok Kumar <ash...@broadcom.com> > > Support the legacy -nic syntax for creating PCI network devices > as well as the new-style -device options. This makes life easier > for people moving from x86 KVM virtualization to ARM KVM virtualization > and expecting their network configuration options to work the same > way for both setups. > > We use "virtio" as the default NIC model if the user doesn't specify one. > > Signed-off-by: Ashok Kumar <ash...@broadcom.com> > Message-id: 1452091659-17698-1-git-send-email-ash...@broadcom.com > Reviewed-by: Peter Maydell <peter.mayd...@linaro.org> > [PMM: expanded and clarified commit message] > Signed-off-by: Peter Maydell <peter.mayd...@linaro.org> > --- > hw/arm/virt.c | 14 ++++++++++++++ > 1 file changed, 14 insertions(+) > > diff --git a/hw/arm/virt.c b/hw/arm/virt.c > index acc1fcb..fd52b76 100644 > --- a/hw/arm/virt.c > +++ b/hw/arm/virt.c > @@ -808,6 +808,7 @@ static void create_pcie(const VirtBoardInfo *vbi, > qemu_irq *pic, > DeviceState *dev; > char *nodename; > int i; > + PCIHostState *pci; > > dev = qdev_create(NULL, TYPE_GPEX_HOST); > qdev_init_nofail(dev); > @@ -847,6 +848,19 @@ static void create_pcie(const VirtBoardInfo *vbi, > qemu_irq *pic, > sysbus_connect_irq(SYS_BUS_DEVICE(dev), i, pic[irq + i]); > } > > + pci = PCI_HOST_BRIDGE(dev); > + if (pci->bus) { > + for (i = 0; i < nb_nics; i++) { > + NICInfo *nd = &nd_table[i]; > + > + if (!nd->model) { > + nd->model = g_strdup("virtio"); > + } > + > + pci_nic_init_nofail(nd, pci->bus, nd->model, NULL); > + } > + } > + > nodename = g_strdup_printf("/pcie@%" PRIx64, base); > qemu_fdt_add_subnode(vbi->fdt, nodename); > qemu_fdt_setprop_string(vbi->fdt, nodename, >