Re: [PATCH] Make virtio devices multi-function

Avi Kivity
2008-04-22T16:27:14Z

Anthony Liguori wrote:
>
> I think we need to decide what we want to target in terms of upper
> limits.
>
> With a bridge or two, we can probably easily do 128.
>
> If we really want to push things, I think we should do a PCI based
> virtio controller. I doubt a large number of PCI devices is ever
> going to perform very well b/c of interrupt sharing and some of the
> assumptions in virtio_pci.
>
> If we implement a controller, we can use a single interrupt, but
> multiplex multiple notifications on that single interrupt. We can
> also be more aggressive about using shared memory instead of PCI
> config space which would reduce the overall number of exits.
>
> We could easily support a very large number of devices this way. But
> again, what do we want to target for now?

I think that for networking we should keep things as is. I don't see
anybody using 100 virtual NICs.

For mass storage, we should follow the SCSI model with a single device
serving multiple disks, similar to what you suggest. Not sure if the
device should have a single queue or one queue per disk.

--
error compiling committee.c: too many arguments to function