[libvirt] [PATCH] Add support for 'passthru' mode for direct network interfaces

Daniel P. Berrange berrange at redhat.com
Wed May 11 12:21:44 UTC 2011


On Tue, May 10, 2011 at 04:21:29PM -0600, Eric Blake wrote:
> On 05/10/2011 05:59 AM, D. Herrendoerfer wrote:
> > Hi all,
> > 
> > starting with kernel 2.6.38 macvtap supports a 'passthru' mode for
> > attaching virtual functions
> > of a SRIOV capable network card directly to a VM.
> > This patch adds the capability to configure such a device.
> > 
> > Signed-off-by: Dirk Herrendoerfer <d.herrendoerfer at herrendoerfer.name>
> > 
> > diff --git a/docs/schemas/domain.rng b/docs/schemas/domain.rng
> > index 7163c6e..e2a66ae 100644
> > --- a/docs/schemas/domain.rng
> > +++ b/docs/schemas/domain.rng
> > @@ -2351,7 +2351,7 @@
> >    </define>
> >    <define name="bridgeMode">
> >      <data type="string">
> > -      <param name="pattern">(vepa|bridge|private)</param>
> > +      <param name="pattern">(vepa|bridge|private|passthru)</param>
> >      </data>
> >    </define>
> >    <define name="addrMAC">
> 
> Missing corresponding documentation in docs/formatdomain.html.in to
> describe the new mode.
> 
> What happens if you try to use this mode but you have an older kernel?
> Do we need to add any sanity checking to give a saner error message than
> just blindly trying the string and reporting back whatever message gets
> returned about an unknown argument?
> 
> The rest of this patch looks okay to me (with my disclaimer that I've
> never used an SRIOV card), but I'd rather wait for a v2 than push this
> without documentation.

The kernel GIT commit actually has some useful info


commit eb06acdc85585f28864261f28659157848762ee4
Author: Sridhar Samudrala <sri at us.ibm.com>
Date:   Thu Oct 28 13:10:50 2010 +0000

    macvlan: Introduce 'passthru' mode to takeover the underlying device
    
    With the current default 'vepa' mode, a KVM guest using virtio with
    macvtap backend has the following limitations.
    - cannot change/add a mac address on the guest virtio-net
    - cannot create a vlan device on the guest virtio-net
    - cannot enable promiscuous mode on guest virtio-net
    
    To address these limitations, this patch introduces a new mode called
    'passthru' when creating a macvlan device which allows takeover of the
    underlying device and passing it to a guest using virtio with macvtap
    backend.
    
    Only one macvlan device is allowed in passthru mode and it inherits
    the mac address from the underlying device and sets it in promiscuous
    mode to receive and forward all the packets.

Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|




More information about the libvir-list mailing list