[libvirt] docs: Document the new hostdev and address type 'mdev'

Alex Williamson alex.williamson at redhat.com
Mon Feb 27 16:09:13 UTC 2017


On Mon, 27 Feb 2017 11:03:42 +0100
Erik Skultety <eskultet at redhat.com> wrote:

> On Mon, Feb 27, 2017 at 09:33:51AM +0100, Martin Polednik wrote:
> > On 20/02/17 15:28 +0100, Erik Skultety wrote:  
> > > Signed-off-by: Erik Skultety <eskultet at redhat.com>
> > > ---
> > > docs/formatdomain.html.in | 48 +++++++++++++++++++++++++++++++++++++++++++----
> > > 1 file changed, 44 insertions(+), 4 deletions(-)
> > > 
> > > diff --git a/docs/formatdomain.html.in b/docs/formatdomain.html.in
> > > index b69bd4c..13cb767 100644
> > > --- a/docs/formatdomain.html.in
> > > +++ b/docs/formatdomain.html.in
> > > @@ -3277,8 +3277,20 @@
> > >         attributes: <code>iobase</code> and <code>irq</code>.
> > >         <span class="since">Since 1.2.1</span>
> > >       </dd>
> > > +      <dt><code>mdev</code></dt>
> > > +      <dd>Mediated devices' addresses have so far only one mandatory attribute
> > > +        <code>uuid</code> (<span class="since">since 3.1.0</span>) which
> > > +        uniquely identifies a mediated device under the syfs file system.
> > > +      </dd>
> > >     </dl>
> > > 
> > > +    <p>
> > > +        Note: Due to nature of mediated devices, being only software devices
> > > +        defining an allocation of resources on the physical parent device, the
> > > +        address type <code>mdev</code> is supposed to be used to identify a
> > > +        device on the host only, rather than identifying it in the guest.
> > > +    </p>
> > > +
> > >     <h4><a name="elementsControllers">Controllers</a></h4>
> > > 
> > >     <p>
> > > @@ -3774,6 +3786,19 @@
> > >   </devices>
> > >   ...</pre>
> > > 
> > > +    <p>or:</p>
> > > +
> > > +<pre>
> > > +  ...
> > > +  <devices>
> > > +    <hostdev mode='subsystem' type='mdev' model='vfio-pci'>
> > > +    <source>
> > > +      <address type='mdev' uuid='c2177883-f1bb-47f0-914d-32a22e3a8804'>
> > > +    </source>
> > > +    </hostdev>
> > > +  </devices>
> > > +  ...</pre>  
> > 
> > Can't really test it yet, but from the docs/code seems to be OK for
> > oVirt.
> >   
> 
> Actually you can, with kernel 4.10, I don't know how the distro-packaged
> kernels are configured, so my honest guess just would be to try modprobe mtty
> and see what happens. Anyway, you can build your own kernel and just make sure
> the vfio mediated devices framework is either included or modularized and the
> CONFIG_SAMPLE_VFIO_MDEV_MTTY sample driver is checked and you're good to go.

Distro kernels aren't likely to include sample drivers, but KVMGT (ie.
Intel vGPUs) also went in for v4.10 and makes use of the vfio-mdev
framework as well.  These should be supported on Broadwell and newer
systems.  There's work yet to do for stability and robustness of this
particular mdev driver, but the sysfs interface mostly behaves as
intended and it can be expected to improve significantly though v4.11
kernels and v4.10 stable backports.  Thanks,

Alex




More information about the libvir-list mailing list