[PATCH 0/6] Fix potential deadlock and crash in libxl driver

Ján Tomko jtomko at redhat.com
Tue Nov 30 12:38:01 UTC 2021


On a Monday in 2021, Jim Fehlig wrote:
>I've been investigating what turns out to be some long-standing issues in
>the libxl driver. One of them causes libvirtd to deadlock, the other can
>lead to a segmentation fault. Both can be triggered by repeatedly rebooting
>a collection of VMs. My reproducer continually reboots 8 VMs on a host
>where libvirtd runs in a VM (dom0) confined to 4 vcpus.
>
>Patches 1-4 contain improvements and preparation for the fixes in patches
>5 and 6. Patch 5 fixes the potential deadlock, and patch 6 fixes the
>potential crash. Both contain more detail on the respective issues. My
>reprocuder has run for 5 days without issue. Before the patches, it would
>trigger within 2 days.
>
>Jim Fehlig (6):
>  libxl: Disable death events after receiving a shutdown event
>  libxl: Rename libxlShutdownThreadInfo struct
>  libxl: Modify name of shutdown thread
>  libxl: Handle domain death events in a thread
>  libxl: Search for virDomainObj in event handler threads
>  libxl: Protect access to libxlLogger files hash table
>
> src/libxl/libxl_domain.c | 115 ++++++++++++++++++++++-----------------
> src/libxl/libxl_domain.h |   3 -
> src/libxl/libxl_logger.c |  12 ++++
> 3 files changed, 77 insertions(+), 53 deletions(-)
>

Reviewed-by: Ján Tomko <jtomko at redhat.com>

Jano
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20211130/83336c10/attachment-0001.sig>


More information about the libvir-list mailing list