← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 2099663] Re: Failure spawning VMs with hw:maxphysaddr_mode passthrough

 

Reviewed:  https://review.opendev.org/c/openstack/nova/+/942371
Committed: https://opendev.org/openstack/nova/commit/5f6ff008c3d8861831a9da6a58bdc207edadd8c5
Submitter: "Zuul (22348)"
Branch:    master

commit 5f6ff008c3d8861831a9da6a58bdc207edadd8c5
Author: Johannes Kulik <johannes.kulik@xxxxxxx>
Date:   Thu Feb 20 16:10:11 2025 +0100

    libvirt: fix maxphysaddr passthrough dom parsing
    
    If `hw:maxphysaddr_mode` is set to `passthrough`, the generated XML
    doesn't contain a `bits` attribute. Our
    `LibvirtConfigCPUMaxPhysAddr.parse_dom()` assumed `bits` was always set
    and the tests only tested parsing the XML for the `emulate` mode.
    
    Closes-Bug: #2099663
    Change-Id: Ic16561dfb38612ac46c2148f2847006f6890940e


** Changed in: nova
       Status: In Progress => Fix Released

-- 
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/2099663

Title:
  Failure spawning VMs with hw:maxphysaddr_mode passthrough

Status in OpenStack Compute (nova):
  Fix Released

Bug description:
  Description
  ===========
  When creating a flavor with `hw:maxphysaddr_mode='passthrough'`, spawning a VM with that flavor fails in our env.

  Steps to reproduce
  ==================
  * set `hw:maxphysaddr_mode='passthrough' on a flavor's extra_specs
  * spawn a VM with that flavor

  
  Expected result
  ===============
  VM spawns.

  Actual result
  =============
  We found an exception in the logs.

  Environment
  ===========
  We're running Nova 2023.2 (bobcat) with the libvirt + KVM hypervisor.

  Logs & Configs
  ==============
  ```
    File "/var/lib/openstack/lib/python3.10/site-packages/nova/virt/libvirt/config.py", line 792, in parse_dom
     self.bits = int(xmldoc.get("bits"))
  TypeError: int() argument must be a string, a bytes-like object or a real number, not 'NoneType'
  ```

  Side note: Setting `hw:maxphysaddr_bits` doesn't work with mode `passthrough`, so this is not a workaround:
  > CPU maximum physical address bits number specification cannot be used with mode='passthrough'

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



References