Bug 1313264

Summary: direct interface with multiqueue enabled donesn't support hotplugging
Product: Red Hat Enterprise Linux 7 Reporter: Shanzhi Yu <shyu>
Component: libvirtAssignee: Michal Privoznik <mprivozn>
Status: CLOSED ERRATA QA Contact: Virtualization Bugs <virt-bugs>
Severity: medium Docs Contact:
Priority: medium    
Version: 7.3CC: dyuan, mzhan, rbalakri, yalzhang
Target Milestone: rcKeywords: Upstream
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: libvirt-1.3.3-1.el7 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-11-03 18:38:37 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Shanzhi Yu 2016-03-01 09:39:51 UTC
Description of problem:

direct interface with multiqueue enabled donesn't support hotplugging

Version-Release number of selected component (if applicable):

libvirt-1.3.1-1.el7.x86_64

How reproducible:

100%

Steps to Reproduce:

1. Prepare a running guest

# virsh list 
 Id    Name                           State
----------------------------------------------------
 4     rh7                            running


2. Prepare xml file as below
# cat interface.xml 
   <interface type='direct'>
      <source network='net-bridge-bridge' dev='enp2s0' mode='bridge'/>
      <model type='virtio'/>
      <driver name='vhost' queues='2'/>
    </interface>


3. Do interface hotplug

# virsh attach-device rh7 interface.xml 
error: Failed to attach device from interface.xml
error: unsupported configuration: Multiqueue network is not supported for: direct



Actual results:


Expected results:

support direct interface with multiqueue enabled plugging


Additional info:

patch post to upstream.

Comment 2 Michal Privoznik 2016-03-02 13:20:06 UTC
Patch is upstream:

commit 751033a2e4af5197e56f5f3fc1e327b8d83f2f1a
Author:     Shanzhi Yu <shyu>
AuthorDate: Fri Feb 26 15:02:46 2016 +0800
Commit:     Michal Privoznik <mprivozn>
CommitDate: Tue Mar 1 16:16:58 2016 +0100

    qemu: enalbe hotplugging of macvtap device with multiqueue
    
    in commit 81a110, multiqueue for macvtap is enabled but forget
    to support hotplugging enabled
    
    Signed-off-by: Shanzhi Yu <shyu>


v1.3.2-50-g751033a

Comment 3 Mike McCune 2016-03-28 23:09:17 UTC
This bug was accidentally moved from POST to MODIFIED via an error in automation, please see mmccune with any questions

Comment 5 yalzhang@redhat.com 2016-04-08 02:02:42 UTC
Verified on libvirt-1.3.3-1.el7.x86_64, the result is as expected.

# virsh start rhel7.2
Domain rhel7.2 started

# cat tmp.xml
<interface type='direct'>
<source dev='eth0' mode='bridge'/>
<model type='virtio'/>
<driver name='vhost' queues='2'/>
</interface>

# virsh attach-device rhel7.2 tmp.xml
Device attached successfully

# virsh dumpxml rhel7.2 | grep /interface -B8
    <interface type='direct'>
      <mac address='52:54:00:66:ca:0a'/>
      <source dev='eth0' mode='bridge'/>
      <target dev='macvtap0'/>
      <model type='virtio'/>
      <driver name='vhost' queues='2'/>
      <alias name='net0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
    </interface>

check on the guest:
# ethtool -l eth0
Channel parameters for eth0:
Pre-set maximums:
RX:		0
TX:		0
Other:		0
Combined:	2
Current hardware settings:
RX:		0
TX:		0
Other:		0
Combined:	1

# ethtool -L eth0 combined 2
# ethtool -l eth0
Channel parameters for eth0:
Pre-set maximums:
RX:		0
TX:		0
Other:		0
Combined:	2
Current hardware settings:
RX:		0
TX:		0
Other:		0
Combined:	2

Comment 8 errata-xmlrpc 2016-11-03 18:38:37 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHSA-2016-2577.html