xenapi: issues with concurrent builds

Bug #1251716 reported by John Garbutt
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
Fix Released
Medium
John Garbutt

Bug Description

Currently, when you build two VMs at once, or resize two VMs at once, you can hit a race condition in XenServer's VBD.plug in XenServer 6.1 and later, and there are issues with tapdisk hanging during the VBD.unplug

It is apparently related to this change:
https://github.com/xapi-project/xen-api/commit/750d3bdd6d0431d312fc3363b03edb90e9124b4c

There is no public bug report, but the agreed workaround is to ensure you only have a single VBD.plug happening at once per VM.

The issue we have is running nova-compute in a VM means we can only have on VBD.plug at once inside the nova-compute VM.

Tags: xenserver
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to nova (master)

Fix proposed to branch: master
Review: https://review.openstack.org/56677

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to nova (master)

Reviewed: https://review.openstack.org/56677
Committed: http://github.com/openstack/nova/commit/478e14b6e906e71ae7a308b5e50c97601967b7f1
Submitter: Jenkins
Branch: master

commit 478e14b6e906e71ae7a308b5e50c97601967b7f1
Author: John Garbutt <email address hidden>
Date: Fri Nov 15 18:04:33 2013 +0000

    xenapi: workaround vbd.plug race

    XenServer 6.1 and above has issues where multiple calls to VBD.plug can
    cause tapdisk to hang during the unplug.

    Currently this causes issues when attaching the virtual disk to the
    nova-compute VM. This happens during spawn and resize. Should any of
    those operations happen at the same time, we run the risk of hitting the
    above bug.

    This change works around this issue by ensuring there is only ever one
    VBD plug at once, per VM.

    Fixes bug 1251716
    Change-Id: Ie7a64c481a9e3874df9d5924fbb050ac7ab117db

Changed in nova:
status: In Progress → Fix Committed
Changed in nova:
milestone: none → icehouse-1
Thierry Carrez (ttx)
Changed in nova:
status: Fix Committed → Fix Released
Thierry Carrez (ttx)
Changed in nova:
milestone: icehouse-1 → 2014.1
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.