← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1497293] Re: Nova misuses qemu-img for kernel and initrd

 

** Changed in: nova
       Status: Fix Committed => 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/1497293

Title:
  Nova misuses qemu-img for kernel and initrd

Status in OpenStack Compute (nova):
  Fix Released

Bug description:
  QEMU loads -kernel and -inird arguments as binary blobs, without
  processing them through its block layer - that is only done for disk
  images (i.e., -drive file=...). I.e., from QEMU's perspective, all
  kernels and all initrds are raw format. QEMU's modular block drivers
  allow to add format support, e.g., for gzip'ed images.

  When a different format is reported in place of "raw", Nova will
  unnecessarily try to convert the initramfs to raw format, which will
  still report the same format as before, leading to an exception being
  raised.

  Therefore please do not run `qemu-img info` on files that are not disk
  images.

  The source of the problem seems to be that the same
  libvirt_utils.fetch_image function is used for
  disk_images['kernel_id'] and disk_images['ramdisk_id'] as for
  disk_images['image_id']:

  https://git.openstack.org/cgit/openstack/nova/tree/nova/virt/images.py?h=stable/kilo#n131

  https://git.openstack.org/cgit/openstack/nova/tree/nova/virt/libvirt/utils.py?h=stable/kilo#n504

  https://git.openstack.org/cgit/openstack/nova/tree/nova/virt/libvirt/driver.py?h=stable/kilo#n2741

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


References