[libvirt] [Xen-devel] [PATCH 0/2] libxl: fix handling of fd and timer registrations
Jim Fehlig
jfehlig at suse.com
Mon Feb 9 16:21:14 UTC 2015
Anthony PERARD wrote:
> On Mon, Feb 02, 2015 at 05:00:34PM -0700, Jim Fehlig wrote:
>
>> This small series fixes some assertions we occasionally see in the
>> libxl driver when running libvirt-TCK. The assertions were due to
>> races between destroying per-domain libxl_ctx and receiving fd and
>> timer callbacks associated with them. The races are masked by
>> setting DEBUG loglevel in libvirtd.conf, so often missed by
>> automated test setups that want DEBUG loglevel.
>>
>> Patch 1 actually fixes the assertions. Patch2 fixes a stupid mistake.
>> See the commit messages for details.
>>
>> Jim Fehlig (2):
>> libxl: fix fd and timer event handling
>> libxl: Move setup of child processing code to driver initialization
>>
>> src/libxl/libxl_domain.c | 244 +----------------------------------------------
>> src/libxl/libxl_driver.c | 212 +++++++++++++++++++++++++++++++++++++++-
>> 2 files changed, 212 insertions(+), 244 deletions(-)
>>
>
> Hi Jim,
>
> I gave a try to those two patches with OpenStack. Assuming I haven't make any
> mistake, it make things worse.
>
Thanks Anthony. I've cooked up a simpler reproducer and will
investigate. I do think these patches are an improvement, but they've
obviously uncovered a locking issue in the driver.
Regards,
Jim
> Environment:
> Ubuntu 14.04
> with Xen package install (xen 4.4)
> libvirt: master (47dd6c4)
> Installed OpenStack via DevStack
>
> Test: ./run_tempest.sh tempest.api.compute
>
> Result:
> without the patches, the tests run fine, they all succeed.
> with the patches, the tests fail AND libvirt became unresponsible.
> Running `virsh -c xen: list` does not return. (or any virsh command)
>
> I have attach a backtrace, if that can help.
>
>
More information about the libvir-list
mailing list