← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1836204] [NEW] The allocation of VGPU has race problem

 

Public bug reported:

The vgpu is allocated by this method
https://github.com/openstack/nova/blob/8260979b71b29ce2666d37b3adc7c256482aa16d/nova/virt/libvirt/driver.py#L3235

That method list the assigned mdev by listing the libvirt domain.

But if there are two concurrent request come to this method. They will
see the set of assigned mdev. So they may get same free mdev also.


So there are a race window between:
https://github.com/openstack/nova/blob/8260979b71b29ce2666d37b3adc7c256482aa16d/nova/virt/libvirt/driver.py#L3235

and

We create the domain in the libvirt
https://github.com/openstack/nova/blob/8260979b71b29ce2666d37b3adc7c256482aa16d/nova/virt/libvirt/driver.py#L3241

** Affects: nova
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1836204

Title:
  The allocation of VGPU has race problem

Status in OpenStack Compute (nova):
  New

Bug description:
  The vgpu is allocated by this method
  https://github.com/openstack/nova/blob/8260979b71b29ce2666d37b3adc7c256482aa16d/nova/virt/libvirt/driver.py#L3235

  That method list the assigned mdev by listing the libvirt domain.

  But if there are two concurrent request come to this method. They will
  see the set of assigned mdev. So they may get same free mdev also.

  
  So there are a race window between:
  https://github.com/openstack/nova/blob/8260979b71b29ce2666d37b3adc7c256482aa16d/nova/virt/libvirt/driver.py#L3235

  and

  We create the domain in the libvirt
  https://github.com/openstack/nova/blob/8260979b71b29ce2666d37b3adc7c256482aa16d/nova/virt/libvirt/driver.py#L3241

To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1836204/+subscriptions