Bug 1743177 - Error message "Network port with UUID 00..00 does not exist" come along with other error messages
Summary: Error message "Network port with UUID 00..00 does not exist" come along with...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux Advanced Virtualization
Classification: Red Hat
Component: libvirt
Version: 8.1
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: rc
: 8.0
Assignee: Daniel Berrangé
QA Contact: Jing Qi
URL:
Whiteboard:
Depends On:
Blocks: 1585087
TreeView+ depends on / blocked
 
Reported: 2019-08-19 09:34 UTC by yalzhang@redhat.com
Modified: 2020-11-02 09:36 UTC (History)
3 users (show)

Fixed In Version: libvirt-5.9.0-1.el8
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2020-05-05 09:47:43 UTC
Type: Bug
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description yalzhang@redhat.com 2019-08-19 09:34:04 UTC
Description of problem:
Error message  "Network port with UUID 00000000-0000-0000-0000-000000000000 does not exist" come along with other error messages.

Version-Release number of selected component (if applicable):
libvirt-5.6.0-1.virtcov.el8.x86_64

How reproducible:
100%

Steps to Reproduce:
1. start a network without bandwidth setting;

2. prepare a vm with interface connected to this network, with floor setting in the bandwidth section:
# virsh dumpxml rhel | grep /interface -B9
    <interface type='network'>
      <mac address='52:54:00:d2:df:ea'/>
      <source network='test'/>
      <bandwidth>
        <inbound average='2000' peak='2000' floor='2000' burst='1024'/>
        <outbound average='2000' peak='2000' burst='1024'/>
      </bandwidth>
      <model type='virtio'/>
      <address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
    </interface>

3. try to start the vm, it will fail as expected
# virsh start rhel
error: Failed to start domain rhel
error: Operation not supported: Invalid use of 'floor' on interface with MAC address 52:54:00:d2:df:ea - network 'test' has no inbound QoS set

4. Check log, there is an unrelated error messages about "Network port with UUID 00000000-0000-0000-0000-000000000000 does not exist"

# grep error /var/log/libvirt/libvirtd.log | grep -v info
2019-08-15 07:55:52.006+0000: 41733: error : networkCheckBandwidth:5175 : Operation not supported: Invalid use of 'floor' on interface with MAC address 52:54:00:d2:df:ea - network 'test' has no inbound QoS set
2019-08-15 07:55:52.027+0000: 41733: error : virNetworkObjLookupPort:1681 : network port not found: Network port with UUID 00000000-0000-0000-0000-000000000000 does not exist

Actual results:
Unrelated error message about port 00000000-0000-0000-0000-000000000000 

Expected results:
no such error

Additional info:

Comment 1 Daniel Berrangé 2019-09-12 13:25:07 UTC
Patch proposed upstream

https://www.redhat.com/archives/libvir-list/2019-September/msg00484.html

Comment 2 Daniel Berrangé 2019-09-12 15:13:33 UTC
Merged upstream as

commit fb0239ff304d8cb1e0e029a8494ae8b1c3f4d8e3
Author: Daniel P. Berrangé <berrange>
Date:   Thu Sep 12 14:21:21 2019 +0100

    conf: avoid looking up network port that doesn't exist
    
    If the hypervisor driver has not yet created the network port, the
    portid field will be "00000000-0000-0000-0000-000000000000".
    
    If a failure occurs during early VM startup, the hypervisor driver may
    none the less try to release the network port, resulting in an
    undesirable warning:
    
    2019-09-12 13:17:42.349+0000: 16544: error :
    virNetworkObjLookupPort:1679 : network port not found: Network port with
    UUID 00000000-0000-0000-0000-000000000000 does not exist
    
    By checking if the portid UUID is valid, we can avoid polluting the logs
    in this way.
    
    Reviewed-by: Michal Privoznik <mprivozn>
    Signed-off-by: Daniel P. Berrangé <berrange>

Comment 4 Jing Qi 2020-01-20 07:44:52 UTC
Verified it with libvirt-6.0.0-1.virtcov.el8.x86_64 &
qemu-kvm-4.2.0-6.module+el8.2.0+5453+31b2b136.x86_64

1. Set the log in /etc/libvirt/libvirtd.conf and restart libvirtd
log_level = 1
log_outputs = "1:file:/var/log/libvirt/libvirtd.log"

2. The network xml is as below.
<network>
  <name>default</name>
  <uuid>652cf47d-a97c-4b1d-a55d-98879a5ded44</uuid>
  <forward mode='nat'/>
  <bridge name='virbr0' stp='on' delay='0'/>
  <mac address='52:54:00:15:27:20'/>
  <ip address='192.168.124.1' netmask='255.255.255.0'>
    <dhcp>
      <range start='192.168.124.2' end='192.168.124.254'/>
    </dhcp>
  </ip>
</network>

3. Start the domain with the "default" network with bandwidth configed.

<interface type='network'>
      <mac address='52:54:00:fa:d9:4f'/>
      <source network='default'/>
      <bandwidth>
        <inbound average='2000' peak='2000' floor='2000' burst='1024'/>
        <outbound average='2000' peak='2000' burst='1024'/>
      </bandwidth>
      <model type='rtl8139'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
    </interface>

4.  try to start the vm, it failed 
# virsh start rhel
error: Failed to start domain rhel
error: Operation not supported: Invalid use of 'floor' on interface with MAC address 52:54:00:d2:df:ea - network 'test' has no inbound QoS set

5. Check log, there is not the error message like "Network port with UUID 00000000-0000-0000-0000-000000000000 does not exist" any more.

Comment 6 errata-xmlrpc 2020-05-05 09:47:43 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://access.redhat.com/errata/RHBA-2020:2017


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