[libvirt] [PATCHv3 0/6] Fix memory corruption/crash in the connection close callback

Peter Krempa pkrempa at redhat.com
Sun Mar 31 16:20:30 UTC 2013


This series fixes the crash resulting from a race condition in the connection
close callback. To observe the crash apply the first patch only. To verify that
the patchset fixes the crash please apply all but 2/6 and verify using virsh.
2/6 fixes the crash in a redundant way in case the close callback is used. In
the case it isn't 2/6 itself can't fix the issue.

For a better explanation of this problem please see the description in 6/6.

Peter Krempa (4):
  DO NOT APPLY UPSTREAM: Close callback race corruption crash
    reproducer.
  virsh: Move cmdConnect from virsh-host.c to virsh.c
  virsh: Register and unregister the close callback also in cmdConnect
  rpc: Fix connection close callback race condition and memory
    corruption/crash

Viktor Mihajlovski (2):
  libvirt: Increase connection reference count for callbacks
  virsh: Unregister the connection close notifier upon termination

 src/datatypes.c            |  55 ++++++++++++++++++++----
 src/datatypes.h            |  22 +++++++---
 src/libvirt.c              |  30 ++++++++-----
 src/remote/remote_driver.c |  62 ++++++++++++++++-----------
 src/rpc/virnetclient.c     |   9 +++-
 tools/virsh-host.c         |  67 -----------------------------
 tools/virsh.c              | 102 ++++++++++++++++++++++++++++++++++++++++++---
 7 files changed, 225 insertions(+), 122 deletions(-)

-- 
1.8.1.5




More information about the libvir-list mailing list