
Jim Fehlig wrote:
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.
Following Ian's suggestion, I've extended the series to drop the per-domain libxl_ctx's altogether https://www.redhat.com/archives/libvir-list/2015-February/msg00611.html
Environment: Ubuntu 14.04 with Xen package install (xen 4.4)
I tested the series with xen-unstable and Xen 4.4.1 + commits 2ffeb5d7, 4b9143e4, 5a968257, 60ce518a, 66bff9fd, 77a1bf37, f49f9b41, 6b5a5bba, 93699882d, f1335f0d, and 8bc64413. If you are in a position to test the series in a similar configuration, I'd like to hear your results. Regards, Jim