Bug 591438 - libvirt: daemon restart forgets <interface> targets, breaks 'virsh domifstat'
Summary: libvirt: daemon restart forgets <interface> targets, breaks 'virsh domifstat'
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: libvirt
Version: 12
Hardware: All
OS: Linux
low
medium
Target Milestone: ---
Assignee: Daniel Veillard
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2010-05-12 09:14 UTC by M Nikolov
Modified: 2010-07-27 02:48 UTC (History)
7 users (show)

Fixed In Version: libvirt-0.8.2-1.fc12
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2010-07-27 02:48:58 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description M Nikolov 2010-05-12 09:14:50 UTC
Description of problem:
If I have QEMU/KVM guest started in libvirtd and then restart libvirtd, libvirtd no longer knows mapping between guests and tun devices on host and quering virDomainInterfaceStats do not work.


Version-Release number of selected component (if applicable):
libvirt version 0.7.1 (Fedora 12 rpm: libvirt-0.7.1-15.fc12.x86_64)

also tested with Centos 5.4 and libvirt 0.6.3

How reproducible:
every time

Steps to Reproduce:
1. Start QEMU/KVM guest with: virsh start vm01
2. restart libvirtd: /sbin/service libvrtd restart
3. Get statistics with virsh domifstat vm01 vnet0
  
Actual results:
[root@kvm01 ~]# virsh domifstat vm01 vnet0
error: Failed to get interface stats vm01 vnet0
error: invalid argument in invalid path, 'vnet0' is not a known interface


Expected results:
[root@kvm01 ~]# virsh domifstat vm01 vnet0
vnet0 rx_bytes 83980
vnet0 rx_packets 1612
vnet0 rx_errs 0
vnet0 rx_drop 0
vnet0 tx_bytes 3546
vnet0 tx_packets 15
vnet0 tx_errs 0
vnet0 tx_drop 0


Additional info:
I found out that after libvirtd forgets mapping for virtual interfaces. Here are the output from virsh dumpxml vm01 before restart:
    <interface type='network'>
      <mac address='52:54:00:28:59:5c'/>
      <source network='default'/>
      <target dev='vnet0'/>
      <model type='virtio'/>
    </interface>

and after restart of libvirtd:
    <interface type='network'>
      <mac address='52:54:00:28:59:5c'/>
      <source network='default'/>
      <model type='virtio'/>
    </interface>

the <target dev='vnet0'/>  is missing.

Comment 1 Cole Robinson 2010-05-21 17:45:26 UTC
Thanks for the report, sounds like a real bug.

Comment 2 Fedora Update System 2010-07-12 17:16:31 UTC
libvirt-0.8.2-1.fc13 has been submitted as an update for Fedora 13.
http://admin.fedoraproject.org/updates/libvirt-0.8.2-1.fc13

Comment 3 Fedora Update System 2010-07-12 17:22:20 UTC
libvirt-0.8.2-1.fc12 has been submitted as an update for Fedora 12.
http://admin.fedoraproject.org/updates/libvirt-0.8.2-1.fc12

Comment 4 Fedora Update System 2010-07-13 07:43:51 UTC
libvirt-0.8.2-1.fc12 has been pushed to the Fedora 12 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update libvirt'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/libvirt-0.8.2-1.fc12

Comment 5 Cole Robinson 2010-07-13 12:40:35 UTC
Danpb, has this really been fixed? I don't remember an upstream patch addressing it.

Comment 6 Daniel Berrangé 2010-07-13 12:54:56 UTC
Yep, in this patch:

commit 362bc09a4d9441f9abd14956546777f86d8b9d79
Author: Jiri Denemark <jdenemar>
Date:   Tue May 4 15:16:29 2010 +0200

    Don't wipe generated iface target in active domains
    
    Wipe generated interface target only when reading configuration of
    inactive domains.

Comment 7 Fedora Update System 2010-07-27 02:48:21 UTC
libvirt-0.8.2-1.fc12 has been pushed to the Fedora 12 stable repository.  If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.