Bug 1311464 - libvirt will crash when start a guest with hostdev network whose interface pool specified with a list of <interface> elements
libvirt will crash when start a guest with hostdev network whose interface po...
Status: CLOSED DUPLICATE of bug 1004676
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: libvirt (Show other bugs)
7.3
Unspecified Unspecified
unspecified Severity unspecified
: rc
: ---
Assigned To: Laine Stump
yalzhang@redhat.com
:
Depends On:
Blocks: 1401400
  Show dependency treegraph
 
Reported: 2016-02-24 05:12 EST by yalzhang@redhat.com
Modified: 2017-03-26 19:59 EDT (History)
5 users (show)

See Also:
Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2017-03-26 19:59:00 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description yalzhang@redhat.com 2016-02-24 05:12:02 EST
Description of problem:
libvirt will crash when start a guest with hostdev type network whose interface pool specified with a list of <interface> elements (currently only support <address> elements) 

Version-Release number of selected component (if applicable):
libvirt-1.3.1-1.el7.x86_64

How reproducible:


Steps to Reproduce:
1.Setup SR-IOV
[root@ibm-x3850x5-05 tmp]# virsh nodedev-list --tree
 +- pci_0000_80_01_0
  |   |
  |   +- pci_0000_86_00_0
  |   |   |
  |   |   +- net_eth2_90_e2_ba_30_79_5c
  |   |     
  |   +- pci_0000_86_00_1
  |   |   |
  |   |   +- net_eth6_90_e2_ba_30_79_5d
  |   |     
  |   +- pci_0000_86_10_0
  |   |   |
  |   |   +- net_eth4_52_54_00_93_2d_e9
  |   |     
  |   +- pci_0000_86_10_1
  |   |   |
  |   |   +- net_eth7_52_54_00_c8_8a_82
  |   |     
  |   +- pci_0000_86_10_2
  |   |   |
  |   |   +- net_eth8_52_54_00_d1_51_4a
  |   |     
  |   +- pci_0000_86_10_3
  |   |   |
  |   |   +- net_eth9_52_54_00_65_fd_75
  |   |     
  |   +- pci_0000_86_10_4
  |   |   |
  |   |   +- net_eth3_56_57_33_44_55_66
  |   |     
  |   +- pci_0000_86_10_5
  |       |
  |       +- net_eth5_62_8c_c3_60_ed_20
  |         

2. Define and start a network with forward mode=hostdev and interface pool specified with VF's name which is not supported currently.
[root@ibm-x3850x5-05 tmp]# cat testnet.xml
<network>
<name>testnet</name>
<forward dev='eth4' mode='hostdev' managed='yes'>
<driver name='vfio'/>
<interface dev='eth4'/>
<interface dev='eth7'/>
<interface dev='eth8'/>
<interface dev='eth9'/>
</forward>
</network>
[root@ibm-x3850x5-05 tmp]# virsh net-define testnet.xml
Network testnet defined from testnet.xml
[root@ibm-x3850x5-05 tmp]# virsh net-start testnet
Network testnet started

3. Start a guest with source network=testnet, the libvirtd crash and restart with a new pid.
[root@ibm-x3850x5-05 tmp]# virsh dumpxml rhel7.2 | grep /interface -B5
    <interface type='network'>
      <mac address='52:54:00:1b:6f:e5'/>
      <source network='testnet'/>
      <model type='virtio'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
    </interface>
[root@ibm-x3850x5-05 tmp]# pidof libvirtd
4367
[root@ibm-x3850x5-05 tmp]# virsh start rhel7.2
error: Disconnected from qemu:///system due to I/O error
error: Failed to start domain rhel7.2
error: End of file while reading data: Input/output error

error: One or more references were leaked after disconnect from the hypervisor
[root@ibm-x3850x5-05 tmp]# pidof libvirtd
5977

4. Start a guest, then attach an interface in the previous defined network.
[root@ibm-x3850x5-05 tmp]# pidof libvirtd
5977
[root@ibm-x3850x5-05 tmp]# virsh attach-interface rhel7.2 --type network --source testnet
error: Disconnected from qemu:///system due to I/O error
error: Failed to attach interface
error: End of file while reading data: Input/output error

error: One or more references were leaked after disconnect from the hypervisor
[root@ibm-x3850x5-05 tmp]# pidof libvirtd
6473
[root@ibm-x3850x5-05 tmp]# 


Actual results:
libvirt crashed with illegal operation.

Expected results:
libvirt should not crash.

Additional info:
N/A
Comment 2 Ján Tomko 2016-02-24 06:16:16 EST
Could you please provide a backtrace of the crash?
(The 'thread apply all bt' command in gdb)
Comment 3 yalzhang@redhat.com 2016-02-24 21:54:57 EST
(In reply to RHEL Product and Program Management from comment #1)
> Since this bug report was entered in bugzilla, the release flag has been
> set to ? to ensure that it is properly evaluated for this release.

(gdb) c
Continuing.

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7f8f2114c700 (LWP 30472)]
__GI___libc_free (mem=0x200000000) at malloc.c:2931
2931	  if (chunk_is_mmapped(p))                       /* release mmapped memory. */
(gdb) t
[Current thread is 16 (Thread 0x7f8f2114c700 (LWP 30472))]
(gdb) thread apply all bt full

Thread 17 (Thread 0x7f8f2194d700 (LWP 30471)):
#0  pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
No locals.
#1  0x00007f8f30d59296 in virCondWait (c=c@entry=0x7f8f321de3a8, 
    m=m@entry=0x7f8f321de380) at util/virthread.c:154
        ret = <optimized out>
#2  0x00007f8f30d59b9b in virThreadPoolWorker (
    opaque=opaque@entry=0x7f8f321dde60) at util/virthreadpool.c:105
        data = 0x0
        pool = 0x7f8f321de340
        cond = 0x7f8f321de3a8
        priority = false
        job = 0x0
#3  0x00007f8f30d59028 in virThreadHelper (data=<optimized out>)
    at util/virthread.c:206
        args = 0x0
        local = {func = 0x7f8f30d599b0 <virThreadPoolWorker>, 
          funcName = 0x7f8f30f4353b "virNetServerHandleJob", worker = true, 
          opaque = 0x7f8f321dde60}
#4  0x00007f8f2e3c0dc5 in start_thread (arg=0x7f8f2194d700)
    at pthread_create.c:308
---Type <return> to continue, or q <return> to quit---
        __res = <optimized out>
        pd = 0x7f8f2194d700
        now = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140252720453376, 
                -7149386318848016560, 0, 140252720454080, 140252720453376, 
                140252976355760, 7193942042807287632, 7193967681611808592}, 
              mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, 
            data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <optimized out>
        pagesize_m1 = <optimized out>
        sp = <optimized out>
        freesize = <optimized out>
#5  0x00007f8f2e0ee28d in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113
No locals.

Thread 16 (Thread 0x7f8f2114c700 (LWP 30472)):
#0  __GI___libc_free (mem=0x200000000) at malloc.c:2931
        ar_ptr = <optimized out>
        p = <optimized out>
        hook = 0x0
#1  0x00007f8f30cf726a in virFree (ptrptr=ptrptr@entry=0x7f8f04000ec0)
    at util/viralloc.c:582
---Type <return> to continue, or q <return> to quit---
        save_errno = 0
#2  0x00007f8f30d773b9 in virDomainHostdevDefClear (def=0x7f8f04000e88)
    at conf/domain_conf.c:2054
        scsisrc = 0x7f8f04000eb0
#3  0x00007f8f30d77506 in virDomainActualNetDefFree (def=0x7f8f04000e80)
    at conf/domain_conf.c:1582
No locals.


#4  0x00007f8f1c73096b in networkReleaseActualDevice (dom=<optimized out>, 
    iface=iface@entry=0x7f8f04002a50) at network/bridge_driver.c:4622
        driver = <optimized out>
        actualType = <optimized out>
        network = 0x0
        netdef = <optimized out>
        dev = <optimized out>
        i = <optimized out>
        ret = -1
        __FUNCTION__ = "networkReleaseActualDevice"
        __func__ = "networkReleaseActualDevice"

#5  0x00007f8eeb45f608 in qemuDomainAttachNetDevice (conn=<optimized out>, 
    driver=driver@entry=0x7f8ec40f3060, vm=vm@entry=0x7f8ec4335470, 
    net=0x7f8f04002a50) at qemu/qemu_hotplug.c:1173
        priv = <optimized out>
        tapfdName = 0x0
---Type <return> to continue, or q <return> to quit---
        tapfd = 0x0
        tapfdSize = 0
        vhostfdName = 0x0
        vhostfd = 0x0
        vhostfdSize = 0
        nicstr = 0x0
        netstr = 0x0
        vport = <optimized out>
        ret = <optimized out>
        guestAddr = {domain = 374543160, bus = 339, slot = 67121264, 
          function = 32655, multi = 67111520}
        vlan = <optimized out>
        releaseaddr = <optimized out>
        iface_connected = <optimized out>
        actualType = <optimized out>
        actualBandwidth = <optimized out>
        cfg = 0x7f8ec4240e70
        i = <optimized out>
        __FUNCTION__ = "qemuDomainAttachNetDevice"
        __func__ = "qemuDomainAttachNetDevice"
#6  0x00007f8eeb4cb68d in qemuDomainAttachDeviceLive (dom=0x7f8f040008c0, 
    dev=0x7f8f04000a60, vm=0x7f8ec4335470) at qemu/qemu_driver.c:7732
        driver = 0x7f8ec40f3060
---Type <return> to continue, or q <return> to quit---
        ret = -1
        alias = 0x0

#7  qemuDomainAttachDeviceFlags (dom=0x7f8f040008c0, xml=<optimized out>, 
    flags=1) at qemu/qemu_driver.c:8511
        driver = 0x7f8ec40f3060
        vm = 0x7f8ec4335470
        vmdef = 0x0
        dev = 0x7f8f04000a60
        dev_copy = 0x7f8f04000a60
        ret = <optimized out>

        qemuCaps = 0x7f8ec4282a80
        priv = <optimized out>
        cfg = 0x7f8ec4240e70
        caps = 0x7f8ec4253ab0
        __FUNCTION__ = "qemuDomainAttachDeviceFlags"

#8  0x00007f8f30e01846 in virDomainAttachDevice (

    domain=domain@entry=0x7f8f040008c0, 
    xml=0x7f8f040009e0 "<interface type='network'>\n  <source network='testnet'/>\n</interface>\n") at libvirt-domain.c:8317
        ret = <optimized out>
        conn = <optimized out>
        __func__ = "virDomainAttachDevice"
        __FUNCTION__ = "virDomainAttachDevice"
---Type <return> to continue, or q <return> to quit---
#9  0x00007f8f31a5178f in remoteDispatchDomainAttachDevice (
    server=0x7f8f321de120, msg=0x7f8f321ff6d0, args=0x7f8f04000900, 
    rerr=0x7f8f2114bc30, client=<optimized out>) at remote_dispatch.h:2850
        dom = 0x7f8f040008c0
        priv = <optimized out>
#10 remoteDispatchDomainAttachDeviceHelper (server=0x7f8f321de120, 
    client=<optimized out>, msg=0x7f8f321ff6d0, rerr=0x7f8f2114bc30, 
    args=0x7f8f04000900, ret=0x7f8f040009a0) at remote_dispatch.h:2826
        rv = 67111168
        __func__ = "remoteDispatchDomainAttachDeviceHelper"
#11 0x00007f8f30e65842 in virNetServerProgramDispatchCall (msg=0x7f8f321ff6d0, 
    client=0x7f8f321ffea0, server=0x7f8f321de120, prog=0x7f8f321fa620)
    at rpc/virnetserverprogram.c:437
        ret = 0x7f8f040009a0 ""
        rv = -1
        i = <optimized out>

        identity = 0x7f8f100009c0
        arg = 0x7f8f04000900 "\300\t"
        dispatcher = 0x7f8f31c82380 <remoteProcs+384>
        rerr = {code = 0, domain = 0, message = 0x0, level = 0, dom = 0x0, 
          str1 = 0x0, str2 = 0x0, str3 = 0x0, int1 = 0, int2 = 0, net = 0x0}
#12 virNetServerProgramDispatch (prog=0x7f8f321fa620, 

    server=server@entry=0x7f8f321de120, client=0x7f8f321ffea0, 
---Type <return> to continue, or q <return> to quit---
    msg=0x7f8f321ff6d0) at rpc/virnetserverprogram.c:307
        rerr = {code = 0, domain = 0, message = 0x0, level = 0, dom = 0x0, 
          str1 = 0x0, str2 = 0x0, str3 = 0x0, int1 = 0, int2 = 0, net = 0x0}
        __func__ = "virNetServerProgramDispatch"
        __FUNCTION__ = "virNetServerProgramDispatch"
#13 0x00007f8f30e60a6d in virNetServerProcessMsg (msg=<optimized out>, 
    prog=<optimized out>, client=<optimized out>, srv=0x7f8f321de120)
    at rpc/virnetserver.c:135
        ret = -1
#14 virNetServerHandleJob (jobOpaque=<optimized out>, opaque=0x7f8f321de120)
    at rpc/virnetserver.c:156
        srv = 0x7f8f321de120
        job = 0x7f8f321ffa50
        __func__ = "virNetServerHandleJob"
#15 0x00007f8f30d59b05 in virThreadPoolWorker (
    opaque=opaque@entry=0x7f8f321ddab0) at util/virthreadpool.c:145
        data = 0x0
        pool = 0x7f8f321de340
        cond = 0x7f8f321de3a8
        priority = false
        job = 0x7f8f321ff8d0
#16 0x00007f8f30d59028 in virThreadHelper (data=<optimized out>)
    at util/virthread.c:206
---Type <return> to continue, or q <return> to quit---
        args = 0x0
        local = {func = 0x7f8f30d599b0 <virThreadPoolWorker>, 
          funcName = 0x7f8f30f4353b "virNetServerHandleJob", worker = true, 
          opaque = 0x7f8f321ddab0}
#17 0x00007f8f2e3c0dc5 in start_thread (arg=0x7f8f2114c700)
    at pthread_create.c:308
        __res = <optimized out>
        pd = 0x7f8f2114c700
        now = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140252712060672, 
                -7149386318848016560, 0, 140252712061376, 140252712060672, 
                140252976355760, 7193943145003269968, 7193967681611808592}, 
              mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, 
            data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <optimized out>
        pagesize_m1 = <optimized out>
        sp = <optimized out>
        freesize = <optimized out>
#18 0x00007f8f2e0ee28d in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113
No locals.

Thread 15 (Thread 0x7f8f2094b700 (LWP 30473)):
---Type <return> to continue, or q <return> to quit---
#0  pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
No locals.
#1  0x00007f8f30d59296 in virCondWait (c=c@entry=0x7f8f321de3a8, 
    m=m@entry=0x7f8f321de380) at util/virthread.c:154
        ret = <optimized out>
#2  0x00007f8f30d59b9b in virThreadPoolWorker (
    opaque=opaque@entry=0x7f8f321dd9d0) at util/virthreadpool.c:105
        data = 0x0
        pool = 0x7f8f321de340
        cond = 0x7f8f321de3a8
        priority = false
        job = 0x0
#3  0x00007f8f30d59028 in virThreadHelper (data=<optimized out>)
    at util/virthread.c:206
        args = 0x0
        local = {func = 0x7f8f30d599b0 <virThreadPoolWorker>, 
          funcName = 0x7f8f30f4353b "virNetServerHandleJob", worker = true, 
          opaque = 0x7f8f321dd9d0}
#4  0x00007f8f2e3c0dc5 in start_thread (arg=0x7f8f2094b700)
    at pthread_create.c:308
        __res = <optimized out>
        pd = 0x7f8f2094b700
---Type <return> to continue, or q <return> to quit---
        now = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140252703667968, 
                -7149386318848016560, 0, 140252703668672, 140252703667968, 
                140252976355760, 7193944245051768656, 7193967681611808592}, 
              mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, 
            data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <optimized out>
        pagesize_m1 = <optimized out>
        sp = <optimized out>
        freesize = <optimized out>
#5  0x00007f8f2e0ee28d in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113
No locals.

Thread 14 (Thread 0x7f8f2014a700 (LWP 30474)):
#0  pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
No locals.
#1  0x00007f8f30d59296 in virCondWait (c=c@entry=0x7f8f321de3a8, 
    m=m@entry=0x7f8f321de380) at util/virthread.c:154
        ret = <optimized out>

#2  0x00007f8f30d59b9b in virThreadPoolWorker (
    opaque=opaque@entry=0x7f8f321d2910) at util/virthreadpool.c:105
---Type <return> to continue, or q <return> to quit---
        data = 0x0
        pool = 0x7f8f321de340
        cond = 0x7f8f321de3a8
        priority = false
        job = 0x0
#3  0x00007f8f30d59028 in virThreadHelper (data=<optimized out>)
    at util/virthread.c:206
        args = 0x0
        local = {func = 0x7f8f30d599b0 <virThreadPoolWorker>, 
          funcName = 0x7f8f30f4353b "virNetServerHandleJob", worker = true, 
          opaque = 0x7f8f321d2910}
#4  0x00007f8f2e3c0dc5 in start_thread (arg=0x7f8f2014a700)
    at pthread_create.c:308
        __res = <optimized out>
        pd = 0x7f8f2014a700
        now = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140252695275264, 
                -7149386318848016560, 0, 140252695275968, 140252695275264, 
                140252976355760, 7193945342952783696, 7193967681611808592}, 
              mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, 
            data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <optimized out>
        pagesize_m1 = <optimized out>
---Type <return> to continue, or q <return> to quit---
        sp = <optimized out>
        freesize = <optimized out>
#5  0x00007f8f2e0ee28d in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113
No locals.

Thread 13 (Thread 0x7f8f1f949700 (LWP 30475)):
#0  pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
No locals.
#1  0x00007f8f30d59296 in virCondWait (c=c@entry=0x7f8f321de3a8, 
    m=m@entry=0x7f8f321de380) at util/virthread.c:154
        ret = <optimized out>
#2  0x00007f8f30d59b9b in virThreadPoolWorker (
    opaque=opaque@entry=0x7f8f321d2860) at util/virthreadpool.c:105
        data = 0x0
        pool = 0x7f8f321de340
        cond = 0x7f8f321de3a8
        priority = false
        job = 0x0
#3  0x00007f8f30d59028 in virThreadHelper (data=<optimized out>)
    at util/virthread.c:206
        args = 0x0
---Type <return> to continue, or q <return> to quit---
        local = {func = 0x7f8f30d599b0 <virThreadPoolWorker>, 
          funcName = 0x7f8f30f4353b "virNetServerHandleJob", worker = true, 
          opaque = 0x7f8f321d2860}
#4  0x00007f8f2e3c0dc5 in start_thread (arg=0x7f8f1f949700)
    at pthread_create.c:308
        __res = <optimized out>
        pd = 0x7f8f1f949700
        now = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140252686882560, 
                -7149386318848016560, 0, 140252686883264, 140252686882560, 
                140252976355760, 7194069588303593296, 7193967681611808592}, 
              mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, 
            data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <optimized out>
        pagesize_m1 = <optimized out>
        sp = <optimized out>
        freesize = <optimized out>
#5  0x00007f8f2e0ee28d in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113
No locals.

Thread 12 (Thread 0x7f8f1f148700 (LWP 30476)):
#0  pthread_cond_wait@@GLIBC_2.3.2 ()
---Type <return> to continue, or q <return> to quit---
    at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
No locals.
#1  0x00007f8f30d59296 in virCondWait (c=c@entry=0x7f8f321de440, 
    m=m@entry=0x7f8f321de380) at util/virthread.c:154
        ret = <optimized out>
#2  0x00007f8f30d59bbb in virThreadPoolWorker (
    opaque=opaque@entry=0x7f8f321d27b0) at util/virthreadpool.c:105
        data = 0x0
        pool = 0x7f8f321de340
        cond = 0x7f8f321de440
        priority = true
        job = 0x0
#3  0x00007f8f30d59028 in virThreadHelper (data=<optimized out>)
    at util/virthread.c:206
        args = 0x0
        local = {func = 0x7f8f30d599b0 <virThreadPoolWorker>, 
          funcName = 0x7f8f30f4353b "virNetServerHandleJob", worker = true, 
          opaque = 0x7f8f321d27b0}
#4  0x00007f8f2e3c0dc5 in start_thread (arg=0x7f8f1f148700)
    at pthread_create.c:308
        __res = <optimized out>
        pd = 0x7f8f1f148700
        now = <optimized out>
---Type <return> to continue, or q <return> to quit---
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140252678489856, 
                -7149386318848016560, 0, 140252678490560, 140252678489856, 
                140252976355760, 7194070690499575632, 7193967681611808592}, 
              mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, 
            data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <optimized out>
        pagesize_m1 = <optimized out>
        sp = <optimized out>
        freesize = <optimized out>
#5  0x00007f8f2e0ee28d in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113
No locals.

Thread 11 (Thread 0x7f8f1e947700 (LWP 30477)):
#0  pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
No locals.
#1  0x00007f8f30d59296 in virCondWait (c=c@entry=0x7f8f321de440, 
    m=m@entry=0x7f8f321de380) at util/virthread.c:154
        ret = <optimized out>
#2  0x00007f8f30d59bbb in virThreadPoolWorker (
    opaque=opaque@entry=0x7f8f321d2860) at util/virthreadpool.c:105
        data = 0x0
---Type <return> to continue, or q <return> to quit---
        pool = 0x7f8f321de340
        cond = 0x7f8f321de440
        priority = true
        job = 0x0
#3  0x00007f8f30d59028 in virThreadHelper (data=<optimized out>)
    at util/virthread.c:206
        args = 0x0
        local = {func = 0x7f8f30d599b0 <virThreadPoolWorker>, 
          funcName = 0x7f8f30f4353b "virNetServerHandleJob", worker = true, 
          opaque = 0x7f8f321d2860}
#4  0x00007f8f2e3c0dc5 in start_thread (arg=0x7f8f1e947700)
    at pthread_create.c:308
        __res = <optimized out>
        pd = 0x7f8f1e947700
        now = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140252670097152, 
                -7149386318848016560, 0, 140252670097856, 140252670097152, 
                140252976355760, 7194071790548074320, 7193967681611808592}, 
              mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, 
            data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <optimized out>
        pagesize_m1 = <optimized out>
        sp = <optimized out>
---Type <return> to continue, or q <return> to quit---
        freesize = <optimized out>
#5  0x00007f8f2e0ee28d in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113
No locals.

Thread 10 (Thread 0x7f8f1e146700 (LWP 30478)):
#0  pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
No locals.
#1  0x00007f8f30d59296 in virCondWait (c=c@entry=0x7f8f321de440, 
    m=m@entry=0x7f8f321de380) at util/virthread.c:154
        ret = <optimized out>
#2  0x00007f8f30d59bbb in virThreadPoolWorker (
    opaque=opaque@entry=0x7f8f321dd9d0) at util/virthreadpool.c:105
        data = 0x0
        pool = 0x7f8f321de340
        cond = 0x7f8f321de440
        priority = true
        job = 0x0
#3  0x00007f8f30d59028 in virThreadHelper (data=<optimized out>)
    at util/virthread.c:206
        args = 0x0
        local = {func = 0x7f8f30d599b0 <virThreadPoolWorker>, 
---Type <return> to continue, or q <return> to quit---
          funcName = 0x7f8f30f4353b "virNetServerHandleJob", worker = true, 
          opaque = 0x7f8f321dd9d0}
#4  0x00007f8f2e3c0dc5 in start_thread (arg=0x7f8f1e146700)
    at pthread_create.c:308
        __res = <optimized out>
        pd = 0x7f8f1e146700
        now = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140252661704448, 
                -7149386318848016560, 0, 140252661705152, 140252661704448, 
                140252976355760, 7194072888449089360, 7193967681611808592}, 
              mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, 
            data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <optimized out>
        pagesize_m1 = <optimized out>
        sp = <optimized out>
        freesize = <optimized out>
#5  0x00007f8f2e0ee28d in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113
No locals.

Thread 9 (Thread 0x7f8f1d945700 (LWP 30479)):
#0  pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
---Type <return> to continue, or q <return> to quit---
No locals.
#1  0x00007f8f30d59296 in virCondWait (c=c@entry=0x7f8f321de440, 
    m=m@entry=0x7f8f321de380) at util/virthread.c:154
        ret = <optimized out>
#2  0x00007f8f30d59bbb in virThreadPoolWorker (
    opaque=opaque@entry=0x7f8f321d2910) at util/virthreadpool.c:105
        data = 0x0
        pool = 0x7f8f321de340
        cond = 0x7f8f321de440
        priority = true
        job = 0x0
#3  0x00007f8f30d59028 in virThreadHelper (data=<optimized out>)
    at util/virthread.c:206
        args = 0x0
        local = {func = 0x7f8f30d599b0 <virThreadPoolWorker>, 
          funcName = 0x7f8f30f4353b "virNetServerHandleJob", worker = true, 
          opaque = 0x7f8f321d2910}
#4  0x00007f8f2e3c0dc5 in start_thread (arg=0x7f8f1d945700)
    at pthread_create.c:308
        __res = <optimized out>
        pd = 0x7f8f1d945700
        now = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140252653311744, 
---Type <return> to continue, or q <return> to quit---
                -7149386318848016560, 0, 140252653312448, 140252653311744, 
                140252976355760, 7194073988497588048, 7193967681611808592}, 
              mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, 
            data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <optimized out>
        pagesize_m1 = <optimized out>
        sp = <optimized out>
        freesize = <optimized out>
#5  0x00007f8f2e0ee28d in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113
No locals.

Thread 8 (Thread 0x7f8f1d144700 (LWP 30480)):
#0  pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
No locals.
#1  0x00007f8f30d59296 in virCondWait (c=c@entry=0x7f8f321de440, 
    m=m@entry=0x7f8f321de380) at util/virthread.c:154
        ret = <optimized out>
#2  0x00007f8f30d59bbb in virThreadPoolWorker (
    opaque=opaque@entry=0x7f8f321d27b0) at util/virthreadpool.c:105
        data = 0x0
        pool = 0x7f8f321de340
---Type <return> to continue, or q <return> to quit---
        cond = 0x7f8f321de440
        priority = true
        job = 0x0
#3  0x00007f8f30d59028 in virThreadHelper (data=<optimized out>)
    at util/virthread.c:206
        args = 0x0
        local = {func = 0x7f8f30d599b0 <virThreadPoolWorker>, 
          funcName = 0x7f8f30f4353b "virNetServerHandleJob", worker = true, 
          opaque = 0x7f8f321d27b0}
#4  0x00007f8f2e3c0dc5 in start_thread (arg=0x7f8f1d144700)
    at pthread_create.c:308
        __res = <optimized out>
        pd = 0x7f8f1d144700
        now = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140252644919040, 
                -7149386318848016560, 0, 140252644919744, 140252644919040, 
                140252976355760, 7194075090693570384, 7193967681611808592}, 
              mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, 
            data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <optimized out>
        pagesize_m1 = <optimized out>
        sp = <optimized out>
        freesize = <optimized out>
---Type <return> to continue, or q <return> to quit---
#5  0x00007f8f2e0ee28d in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113
No locals.

Thread 7 (Thread 0x7f8eec9ca700 (LWP 30481)):
#0  syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
No locals.
#1  0x00007f8eed51295b in ust_listener_thread () from /lib64/liblttng-ust.so.0
No symbol table info available.
#2  0x00007f8f2e3c0dc5 in start_thread (arg=0x7f8eec9ca700)
    at pthread_create.c:308
        __res = <optimized out>
        pd = 0x7f8eec9ca700
        now = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140251831772928, 
                -7149386318848016560, 0, 140251831773632, 140251831772928, 
                140251845904160, 7193829962951343952, 7193967681611808592}, 
              mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, 
            data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <optimized out>
        pagesize_m1 = <optimized out>
        sp = <optimized out>
        freesize = <optimized out>
---Type <return> to continue, or q <return> to quit---
#3  0x00007f8f2e0ee28d in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113
No locals.

Thread 6 (Thread 0x7f8eeaf67700 (LWP 30482)):
#0  pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
No locals.
#1  0x00007f8f30d59296 in virCondWait (c=c@entry=0x7f8f321faa38, 
    m=m@entry=0x7f8f321faa10) at util/virthread.c:154
        ret = <optimized out>
#2  0x00007f8f30d59b9b in virThreadPoolWorker (
    opaque=opaque@entry=0x7f8f321fa6a0) at util/virthreadpool.c:105
        data = 0x0
        pool = 0x7f8f321fa9d0
        cond = 0x7f8f321faa38
        priority = false
        job = 0x0
#3  0x00007f8f30d59028 in virThreadHelper (data=<optimized out>)
    at util/virthread.c:206
        args = 0x0
        local = {func = 0x7f8f30d599b0 <virThreadPoolWorker>, 
          funcName = 0x7f8f30f4353b "virNetServerHandleJob", worker = true, 
---Type <return> to continue, or q <return> to quit---
          opaque = 0x7f8f321fa6a0}
#4  0x00007f8f2e3c0dc5 in start_thread (arg=0x7f8eeaf67700)
    at pthread_create.c:308
        __res = <optimized out>
        pd = 0x7f8eeaf67700
        now = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140251804104448, 
                -7149386318848016560, 0, 140251804105152, 140251804104448, 
                140252976355760, 7193817511304281936, 7193967681611808592}, 
              mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, 
            data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <optimized out>
        pagesize_m1 = <optimized out>
        sp = <optimized out>
        freesize = <optimized out>
#5  0x00007f8f2e0ee28d in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113
No locals.

Thread 5 (Thread 0x7f8eea766700 (LWP 30483)):
#0  pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
No locals.
---Type <return> to continue, or q <return> to quit---
#1  0x00007f8f30d59296 in virCondWait (c=c@entry=0x7f8f321faa38, 
    m=m@entry=0x7f8f321faa10) at util/virthread.c:154
        ret = <optimized out>
#2  0x00007f8f30d59b9b in virThreadPoolWorker (
    opaque=opaque@entry=0x7f8f321d0d90) at util/virthreadpool.c:105
        data = 0x0
        pool = 0x7f8f321fa9d0
        cond = 0x7f8f321faa38
        priority = false
        job = 0x0
#3  0x00007f8f30d59028 in virThreadHelper (data=<optimized out>)
    at util/virthread.c:206
        args = 0x0
        local = {func = 0x7f8f30d599b0 <virThreadPoolWorker>, 
          funcName = 0x7f8f30f4353b "virNetServerHandleJob", worker = true, 
          opaque = 0x7f8f321d0d90}
#4  0x00007f8f2e3c0dc5 in start_thread (arg=0x7f8eea766700)
    at pthread_create.c:308
        __res = <optimized out>
        pd = 0x7f8eea766700
        now = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140251795711744, 
                -7149386318848016560, 0, 140251795712448, 140251795711744, 
---Type <return> to continue, or q <return> to quit---
                140252976355760, 7193818609205296976, 7193967681611808592}, 
              mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, 
            data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <optimized out>
        pagesize_m1 = <optimized out>
        sp = <optimized out>
        freesize = <optimized out>
#5  0x00007f8f2e0ee28d in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113
No locals.

Thread 4 (Thread 0x7f8ee9f65700 (LWP 30484)):
#0  pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
No locals.
#1  0x00007f8f30d59296 in virCondWait (c=c@entry=0x7f8f321faa38, 
    m=m@entry=0x7f8f321faa10) at util/virthread.c:154
        ret = <optimized out>
#2  0x00007f8f30d59b9b in virThreadPoolWorker (
    opaque=opaque@entry=0x7f8f321fa7f0) at util/virthreadpool.c:105
        data = 0x0
        pool = 0x7f8f321fa9d0
        cond = 0x7f8f321faa38
---Type <return> to continue, or q <return> to quit---
        priority = false
        job = 0x0
#3  0x00007f8f30d59028 in virThreadHelper (data=<optimized out>)
    at util/virthread.c:206
        args = 0x0
        local = {func = 0x7f8f30d599b0 <virThreadPoolWorker>, 
          funcName = 0x7f8f30f4353b "virNetServerHandleJob", worker = true, 
          opaque = 0x7f8f321fa7f0}
#4  0x00007f8f2e3c0dc5 in start_thread (arg=0x7f8ee9f65700)
    at pthread_create.c:308
        __res = <optimized out>
        pd = 0x7f8ee9f65700
        now = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140251787319040, 
                -7149386318848016560, 0, 140251787319744, 140251787319040, 
                140252976355760, 7193819709253795664, 7193967681611808592}, 
              mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, 
            data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <optimized out>
        pagesize_m1 = <optimized out>
        sp = <optimized out>
        freesize = <optimized out>
#5  0x00007f8f2e0ee28d in clone ()
---Type <return> to continue, or q <return> to quit---
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113
No locals.

Thread 3 (Thread 0x7f8ee9764700 (LWP 30485)):
#0  pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
No locals.
#1  0x00007f8f30d59296 in virCondWait (c=c@entry=0x7f8f321faa38, 
    m=m@entry=0x7f8f321faa10) at util/virthread.c:154
        ret = <optimized out>
#2  0x00007f8f30d59b9b in virThreadPoolWorker (
    opaque=opaque@entry=0x7f8f321d0ce0) at util/virthreadpool.c:105
        data = 0x0
        pool = 0x7f8f321fa9d0
        cond = 0x7f8f321faa38
        priority = false
        job = 0x0
#3  0x00007f8f30d59028 in virThreadHelper (data=<optimized out>)
    at util/virthread.c:206
        args = 0x0
        local = {func = 0x7f8f30d599b0 <virThreadPoolWorker>, 
          funcName = 0x7f8f30f4353b "virNetServerHandleJob", worker = true, 
          opaque = 0x7f8f321d0ce0}
---Type <return> to continue, or q <return> to quit---
#4  0x00007f8f2e3c0dc5 in start_thread (arg=0x7f8ee9764700)
    at pthread_create.c:308
        __res = <optimized out>
        pd = 0x7f8ee9764700
        now = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140251778926336, 
                -7149386318848016560, 0, 140251778927040, 140251778926336, 
                140252976355760, 7193820811449778000, 7193967681611808592}, 
              mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, 
            data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <optimized out>
        pagesize_m1 = <optimized out>
        sp = <optimized out>
        freesize = <optimized out>
#5  0x00007f8f2e0ee28d in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113
No locals.

Thread 2 (Thread 0x7f8ee8f63700 (LWP 30486)):
#0  pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
No locals.
#1  0x00007f8f30d59296 in virCondWait (c=c@entry=0x7f8f321faa38, 
---Type <return> to continue, or q <return> to quit---
    m=m@entry=0x7f8f321faa10) at util/virthread.c:154
        ret = <optimized out>
#2  0x00007f8f30d59b9b in virThreadPoolWorker (
    opaque=opaque@entry=0x7f8f321d0c30) at util/virthreadpool.c:105
        data = 0x0
        pool = 0x7f8f321fa9d0
        cond = 0x7f8f321faa38
        priority = false
        job = 0x0
#3  0x00007f8f30d59028 in virThreadHelper (data=<optimized out>)
    at util/virthread.c:206
        args = 0x0
        local = {func = 0x7f8f30d599b0 <virThreadPoolWorker>, 
          funcName = 0x7f8f30f4353b "virNetServerHandleJob", worker = true, 
          opaque = 0x7f8f321d0c30}
#4  0x00007f8f2e3c0dc5 in start_thread (arg=0x7f8ee8f63700)
    at pthread_create.c:308
        __res = <optimized out>
        pd = 0x7f8ee8f63700
        now = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140251770533632, 
                -7149386318848016560, 0, 140251770534336, 140251770533632, 
                140252976355760, 7193821911498276688, 7193967681611808592}, 
---Type <return> to continue, or q <return> to quit---
              mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, 
            data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <optimized out>
        pagesize_m1 = <optimized out>
        sp = <optimized out>
        freesize = <optimized out>
#5  0x00007f8f2e0ee28d in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113
No locals.

Thread 1 (Thread 0x7f8f319a48c0 (LWP 30466)):
#0  0x00007f8f2e0e3c3d in poll () at ../sysdeps/unix/syscall-template.S:81
No locals.
#1  0x00007f8f30d15666 in poll (__timeout=4991, __nfds=11, 
    __fds=<optimized out>) at /usr/include/bits/poll2.h:46
No locals.
#2  virEventPollRunOnce () at util/vireventpoll.c:642
        fds = 0x7f8f321e0150
        ret = <optimized out>
        timeout = 4991
        nfds = 11
        __func__ = "virEventPollRunOnce"
        __FUNCTION__ = "virEventPollRunOnce"
---Type <return> to continue, or q <return> to quit---
#3  0x00007f8f30d14142 in virEventRunDefaultImpl () at util/virevent.c:314
        __func__ = "virEventRunDefaultImpl"
#4  0x00007f8f30e60345 in virNetDaemonRun (dmn=dmn@entry=0x7f8f321e0000)
    at rpc/virnetdaemon.c:701
        timerid = -1
        timerActive = false
        i = <optimized out>
        __FUNCTION__ = "virNetDaemonRun"
        __func__ = "virNetDaemonRun"
#5  0x00007f8f31a296d4 in main (argc=<optimized out>, argv=<optimized out>)
    at libvirtd.c:1577
        dmn = 0x7f8f321e0000
        srv = 0x7f8f321de120
        srvAdm = 0x7f8f321fa810
        remote_config_file = 0x7f8f321d97d0 "/etc/libvirt/libvirtd.conf"
        statuswrite = -1
        ret = 1
        pid_file_fd = 5
        pid_file = 0x7f8f321ddd10 "/var/run/libvirtd.pid"
        sock_file = 0x7f8f321ddf20 "/var/run/libvirt/libvirt-sock"
        sock_file_ro = 0x7f8f321e92b0 "/var/run/libvirt/libvirt-sock-ro"
        sock_file_adm = 0x7f8f321e9280 "/var/run/libvirt/libvirt-admin-sock"
        timeout = -1
---Type <return> to continue, or q <return> to quit---
        verbose = 0
        godaemon = 0
        ipsock = 0
        config = 0x7f8f321d95d0
        privileged = <optimized out>
        implicit_conf = <optimized out>
        run_dir = 0x7f8f321ddca0 "/var/run/libvirt"
        old_umask = <optimized out>
        opts = {{name = 0x7f8f31a61c7e "verbose", has_arg = 0, 
            flag = 0x7ffc216e9d20, val = 118}, {
            name = 0x7f8f31a61c86 "daemon", has_arg = 0, 
            flag = 0x7ffc216e9d24, val = 100}, {
            name = 0x7f8f31a61c8d "listen", has_arg = 0, 
            flag = 0x7ffc216e9d28, val = 108}, {
            name = 0x7f8f31a61d94 "config", has_arg = 1, flag = 0x0, 
            val = 102}, {name = 0x7f8f31a61cf5 "timeout", has_arg = 1, 
            flag = 0x0, val = 116}, {name = 0x7f8f31a61c94 "pid-file", 
            has_arg = 1, flag = 0x0, val = 112}, {
            name = 0x7f8f31a61c9d "version", has_arg = 0, flag = 0x0, 
            val = 86}, {name = 0x7f8f31a61ca5 "help", has_arg = 0, flag = 0x0, 
            val = 104}, {name = 0x0, has_arg = 0, flag = 0x0, val = 0}}
        __func__ = "main"
(gdb) 
(gdb) t
[Current thread is 16 (Thread 0x7f8f2114c700 (LWP 30472))]
(gdb)
Comment 6 Laine Stump 2017-03-26 19:57:11 EDT
This is fixed by the same patch as Bug 1004676 - we shouldn't be allowing the entries in a hostdev network to be specified by netdev name, only by PCI addresses.

Here is the patch (not yet reviewed/pushed):


 https://www.redhat.com/archives/libvir-list/2017-March/msg01235.html
Comment 7 Laine Stump 2017-03-26 19:59:00 EDT

*** This bug has been marked as a duplicate of bug 1004676 ***

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