← Back to team overview

group.of.nepali.translators team mailing list archive

[Bug 1753604] Re: libvirt-bin nwfilter deadlock

 

This bug was fixed in the package libvirt - 1.3.1-1ubuntu10.21

---------------
libvirt (1.3.1-1ubuntu10.21) xenial; urgency=medium

  * d/p/ubuntu/lp1688508-fix-variable-scope-in-in-check_guests_shutdown.patch:
    backport further upstream fixes that were identified on verification.
    Together with the former change this fixes (LP: #1688508)
  * d/p/ubuntu/lp1753604-nwfilter-fix-lock-order-deadlock.patch:
    fix intermittent deadlock in NWFilter handling (LP: #1753604)

libvirt (1.3.1-1ubuntu10.20) xenial; urgency=medium

  * d/p/ubuntu/lp1688508-tools-avoid-text-spilling-into-variables.patch:
    avoid hanging on shutdown (LP: #1688508)

 -- Christian Ehrhardt <christian.ehrhardt@xxxxxxxxxxxxx>  Wed, 04 Apr
2018 10:46:12 +0200

** Changed in: libvirt (Ubuntu Xenial)
       Status: Fix Committed => Fix Released

-- 
You received this bug notification because you are a member of नेपाली
भाषा समायोजकहरुको समूह, which is subscribed to Xenial.
Matching subscriptions: Ubuntu 16.04 Bugs
https://bugs.launchpad.net/bugs/1753604

Title:
  libvirt-bin nwfilter deadlock

Status in libvirt package in Ubuntu:
  Fix Released
Status in libvirt source package in Xenial:
  Fix Released

Bug description:
  [Impact]

   * Fix a potential deadlock

   * The trigger is essentially a race, so it is rare and repro
  unreliable

  [Test Case]

   * This is the hard part for this issue, essentially changing NWFilters 
     through libvirt. The reporter hits it on removing a guest, but it is 
     hard to make a recipe by that.

   * We have to fall back to general regression checks with an extra eye on 
     NWFilter handling

  
  [Regression Potential] 

   * The only bad part is the hard repro, everything else seems to make this 
     low risk
     - the patch is small
     - the patch got no follow on fix in 2 years (so it is very stable)
     - it unlocks earlier (so deadlocks are less likely)
     - there is no data issue (being unlocked early) as explained in the 
       patch

  [Other Info]
   
   * n/a

  ---

  When deleting a VM, libvirt-bin intermittently hits a deadlock in nwfilter instantiation code.
  This is fixed in libvirt upstream, but the below commit is not cherrypicked in ubuntu yet:
  https://github.com/libvirt/libvirt/commit/2f5e24ba00d93c25b87561cb1f5259de175d70f9

  Thread 5 (Thread 0x7f2ce1c4b700 (LWP 13866)):
  #0  __lll_lock_wait () at ../sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:135
  #1  0x00007f2cee30ce42 in __GI___pthread_mutex_lock (mutex=0x7f2c980008d0) at ../nptl/pthread_mutex_lock.c:115
  #2  0x00007f2cc7d7a62f in virNWFilterLockIface () from /usr/lib/libvirt/connection-driver/libvirt_driver_nwfilter.so
  #3  0x00007f2cc7d6ebf5 in ?? () from /usr/lib/libvirt/connection-driver/libvirt_driver_nwfilter.so
  #4  0x00007f2cc7d6f84c in virNWFilterTeardownFilter () from /usr/lib/libvirt/connection-driver/libvirt_driver_nwfilter.so
  ---Type <return> to continue, or q <return> to quit---
  #5  0x00007f2ceea32f0c in virDomainConfVMNWFilterTeardown () from /usr/lib/x86_64-linux-gnu/libvirt.so.0
  #6  0x00007f2cc73d5a86 in qemuProcessStop () from /usr/lib/libvirt/connection-driver/libvirt_driver_qemu.so
  #7  0x00007f2cc7420577 in ?? () from /usr/lib/libvirt/connection-driver/libvirt_driver_qemu.so
  #8  0x00007f2ceea857cf in virDomainDestroy () from /usr/lib/x86_64-linux-gnu/libvirt.so.0
  #9  0x000055c4ba3fe9db in ?? ()
  #10 0x00007f2ceeaf8f69 in virNetServerProgramDispatch () from /usr/lib/x86_64-linux-gnu/libvirt.so.0
  #11 0x00007f2ceeaf4478 in ?? () from /usr/lib/x86_64-linux-gnu/libvirt.so.0
  #12 0x00007f2cee9eb566 in ?? () from /usr/lib/x86_64-linux-gnu/libvirt.so.0
  #13 0x00007f2cee9eaae8 in ?? () from /usr/lib/x86_64-linux-gnu/libvirt.so.0
  #14 0x00007f2cee30a6ba in start_thread (arg=0x7f2ce1c4b700) at pthread_create.c:333
  #15 0x00007f2cee04041d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

  Thread 17 (Thread 0x7f2cc2801700 (LWP 8866)):
  #0  __lll_lock_wait () at ../sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:135
  #1  0x00007f2cee30ce42 in __GI___pthread_mutex_lock (mutex=0x7f2cc7f8d280) at ../nptl/pthread_mutex_lock.c:115
  #2  0x00007f2cc7d6f6d3 in virNWFilterInstantiateFilterLate () from /usr/lib/libvirt/connection-driver/libvirt_driver_nwfilter.so
  #3  0x00007f2cc7d7a9b2 in ?? () from /usr/lib/libvirt/connection-driver/libvirt_driver_nwfilter.so
  #4  0x00007f2cee9eab12 in ?? () from /usr/lib/x86_64-linux-gnu/libvirt.so.0
  #5  0x00007f2cee30a6ba in start_thread (arg=0x7f2cc2801700) at pthread_create.c:333
  #6  0x00007f2cee04041d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/libvirt/+bug/1753604/+subscriptions