Re: virtio-pci new configuration proposal

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

 



On Thu, 2011-11-03 at 12:28 +1030, Rusty Russell wrote: 
> On Wed, 02 Nov 2011 20:49:27 +0200, Sasha Levin <levinsasha928@xxxxxxxxx> wrote:
> > This is a proposal for a new layout of the virtio-pci config space.
> > 
> > We will separate the current configuration into two: A virtio-pci common
> > configuration and a device specific configuration. This allows more flexibility
> > with adding features and makes usage easier, specifically in cases like the
> > ones in virtio-net where device specific configurations depend on device
> > specific features.
> 
> Thanks for this Sasha.  Several general comments:
> 
> 1) How to we distinguish the two layouts?  In theory, we need to do this
>    forever.  In practice we can deprecate the old layout in several
>    years' time.

Old layouts won't have the new virtio-pci cap structure in their PCI
config space.

> 2) I don't think we want to turn the device-specific config into a
>    linked list.  We haven't needed variable-length config (yet!), and
>    it's (slightly) more complex.  That's also the part of the spec which
>    is shared with non-PCI virtio implementations.

Variable length config wasn't used yet because space in the device
specific space was reserved for a feature even if that feature wasn't
used.

For example, the MAC feature reserved 6 bytes in the config space for
the MAC even if VIRTIO_NET_F_MAC wasn't enabled. Here we can just avoid
having it pollute the config space until it's enabled.

I don't think it'll have any impact on non-PCI implementations since the
"pointers" are simply offsets from the beginning of the config space,
and are not PCI specific in any way.

> 3) If we're changing the queue layout, it's a chance to fix a
>    longstanding bug: let the guest notify the host of preferred
>    queue size and alignment.

Yup, we can do that.

-- 

Sasha.


_______________________________________________
Virtualization mailing list
Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx
https://lists.linuxfoundation.org/mailman/listinfo/virtualization


[Index of Archives]     [KVM Development]     [Libvirt Development]     [Libvirt Users]     [CentOS Virtualization]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux