OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

virtio message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Re: [virtio] Groups - Action Item "Create text version of virtio 0.9.5 document" added


On Wed, 2013-07-31 at 14:25 +0100, Anthony Liguori wrote:
> I'm not sure where this discussion took place, but there is nothing in
> QEMU that requires a dummy device to be used.

http://thread.gmane.org/gmane.linux.kernel.virtualization/20144

> The analogy would be a PCI slot that doesn't have a device plugged into
> it.  Per the PCI spec, if a device is absent, any reads to the slot
> will return a well defined value (all ones).  Those values are invalid
> for things like a device id.

It is very unsafe to "probe" memory mapped peripherals.

> I really dislike the design of virtio-mmio.  I don't understand why it
> limits itself to a single device.  

It is modelled after simple memory mapped peripherals, so it is simple
itself. And if I was doing it today from scratch again, I would still
focus on doing one thing only. After all there are discoverable buses
out there, I don't see any reason to try to invent my own discovery
mechanism.

> But that's a different discussion.

It is indeed, and I am open to all suggestions how to make it more
likeable :-)

> virtio-blk is a separate device that can be connected to the transport.

As in: block device of zero size? This has also been suggested in the
thread linked above.

> And yes, there should be a way to specify "this transport is not
> connected to anything".

In a "virtio generic" way or mmio-specific one? Maybe instead of
defining zero as a do-nothing-device we should simply make this value
reserved or illegal? This would make PCI situation clear (no device will
be ever allowed to have it) and mmio driver could "overload" its meaning
as "ignore".

Paweł




[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]