Bug 906446

Summary: vmUpdateDevice fails when nic has boot order set
Product: [Fedora] Fedora Reporter: Eric Blake <eblake>
Component: libvirtAssignee: Libvirt Maintainers <libvirt-maint>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 18CC: abaron, acathrow, asegurap, bazulay, berrange, clalancette, cpelland, crobinso, danken, dyasny, dyuan, eblake, iheim, itamar, jforbes, jyang, laine, libvirt-maint, lpeer, mzhan, rwu, veillard, virt-maint, whuang, ydu, ykaul
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Linux   
Whiteboard: network
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 895294 Environment:
Last Closed: 2013-04-11 19:30:57 EDT Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
Bug Depends On:    
Bug Blocks: 881006    

Comment 1 Eric Blake 2013-01-31 11:28:57 EST
Extracting public portions of private comment 0; then moving to POST since this patch has already been pushed to v0.10.2-maint.  It will be in the 0.10.2.4 release:

Description of problem:
When creating a VM with a specific boot order set for a nic, attempting to use the new 3.2 feature of vmUpdateDevice will result in an exception

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


How reproducible: 100%


Steps to Reproduce:
1. Create a VM with a nic. Set boot order=1 to it.
2. Go to the host (cmdline) and do:
vdsClient -s 0 vmUpdateDevice vmId deviceType=interface alias=net0 linkActive=False
  
Actual results:
A libvirt Exception
Thread-1516::DEBUG::2013-01-15 02:22:02,673::libvirtvm::1660::vm.Vm::(setLinkAndNetwork) vmId=`b04b6a8c-3471-45ae-8c98-1aa9801cb2ad`::Request failed: <interface type="bridge">
        <address bus="0x00" domain="0x0000" function="0x0" slot="0x04" type="pci"/>
        <mac address="00:1a:4a:a8:7a:09"/>
        <model type="virtio"/>
        <source bridge="rhevm"/>
        <filterref filter="vdsm-no-mac-spoofing"/>
        <link state="up"/>
        <boot order="1"/>
</interface>
Traceback (most recent call last):
  File "/usr/share/vdsm/libvirtvm.py", line 1656, in setLinkAndNetwork
    libvirt.VIR_DOMAIN_AFFECT_LIVE)
  File "/usr/share/vdsm/libvirtvm.py", line 539, in f
    ret = attr(*args, **kwargs)
  File "/usr/lib64/python2.6/site-packages/vdsm/libvirtconnection.py", line 111, in wrapper
    ret = f(*args, **kwargs)
  File "/usr/lib64/python2.6/site-packages/libvirt.py", line 1742, in updateDeviceFlags
    if ret == -1: raise libvirtError ('virDomainUpdateDeviceFlags() failed', dom=self)
libvirtError: this function is not supported by the connection driver: cannot modify network device boot index setting

Expected results:
The VM nic link goes down.

Additional info:


--- Additional comment from Laine Stump on 2013-01-17 13:11:17 MST ---

I pushed the following upstream:

commit 877dab6ccf9ce79e28c1e5f9b70459a9f9a8a6c2
Author: Laine Stump <laine@laine.org>
Date:   Thu Jan 17 11:18:21 2013 -0500

    conf: don't fail to parse <boot> when parsing a single device
Comment 2 Dan Kenigsberg 2013-03-24 04:31:58 EDT
(In reply to comment #1)
> Extracting public portions of private comment 0; then moving to POST since
> this patch has already been pushed to v0.10.2-maint.  It will be in the
> 0.10.2.4 release:

Is a 0.10.2.4 release expected? oVirt-3.2 would love to see it.

http://gerrit.ovirt.org/11600
Comment 3 Cole Robinson 2013-03-25 16:38:49 EDT
(In reply to comment #2)
> (In reply to comment #1)
> > Extracting public portions of private comment 0; then moving to POST since
> > this patch has already been pushed to v0.10.2-maint.  It will be in the
> > 0.10.2.4 release:
> 
> Is a 0.10.2.4 release expected? oVirt-3.2 would love to see it.
> 
> http://gerrit.ovirt.org/11600

I'll shoot for getting a build out this week.
Comment 4 Fedora Update System 2013-04-01 18:05:32 EDT
libvirt-0.10.2.4-1.fc18 has been submitted as an update for Fedora 18.
https://admin.fedoraproject.org/updates/libvirt-0.10.2.4-1.fc18
Comment 5 Fedora Update System 2013-04-03 00:28:10 EDT
Package libvirt-0.10.2.4-1.fc18:
* should fix your issue,
* was pushed to the Fedora 18 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing libvirt-0.10.2.4-1.fc18'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2013-4691/libvirt-0.10.2.4-1.fc18
then log in and leave karma (feedback).
Comment 6 Fedora Update System 2013-04-11 19:31:02 EDT
libvirt-0.10.2.4-1.fc18 has been pushed to the Fedora 18 stable repository.  If problems still persist, please make note of it in this bug report.