[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-discuss] No 'virtio-bus' bus found for device 'virtio-net-devi

From: Peter Maydell
Subject: Re: [Qemu-discuss] No 'virtio-bus' bus found for device 'virtio-net-device'
Date: Mon, 6 Feb 2017 18:00:37 +0000

On 6 February 2017 at 17:27, Vincenzo Romano
<address@hidden> wrote:
> I am using qemu-2.8.0 on a Ubuntu server 16.04.1 (x86_64).
> For a VM I am already using "-device virtio-net-pci" for its ethernets.
> I was willing to test also "-device virtio-net-device" but I get the error:
> No 'virtio-bus' bus found for device 'virtio-net-device' .

You would need to also create a virtio-pci device (and possibly
also use suitable options to both to ensure that the virtio-net-device
is plugged into the virtio-pci device).

virtio is split into two layers:
 * transport (how the virtio device connects to the guest),
   which could be PCI, or MMIO, or S390 device channels
 * backend (block, net, etc)
and the two are connected via a 'virtio-bus' bus, which is 1-1
(ie connects exactly one backend to one transport)

virtio-net-device is a backend, and the error is telling you
that there aren't any transports available to plug it into.

Almost always you don't need to care about the split between
backends and transports, because we provide convenience wrappers
like virtio-net-pci, which are a PCI transport plus a backend
already connected to each other and wrapped up in a handy
single device package. It's possible to create and plug together
a backend and a transport manually, but it's unnecessary
complexity of the command line.

Is there any particular reason you wanted to use virtio-net-device
directly? The only use for it specifically is if you wanted
to plug it directly into one of the legacy virtio-mmio
transports provided on some ARM board models; but even
there we recommend PCI virtio instead these days.

-- PMM

reply via email to

[Prev in Thread] Current Thread [Next in Thread]