qemu appears to be built without CONFIG_NUMA defined

Bug #1417937 reported by Chris Friesen
22
This bug affects 3 people
Affects Status Importance Assigned to Milestone
qemu (Ubuntu)
Fix Released
High
Unassigned
Utopic
Fix Released
High
Unassigned

Bug Description

===============================================================
SRU Justification
1. Impact: openstack cannot use numactl to pin kvm to cpus
2. Test case: ldd /usr/bin/qemu-system-x86* | grep numa
3. Regression potential: this causes qemu to be build against libnuma. It should only enable users who wish to use numa to do so, though of course new code will be enabled so unepxected regressions are possible.
===============================================================

When running

qemu-system-x86_64 -object memory-backend-file,prealloc=yes,mem-path=/dev/hugepages/libvirt/qemu,size=4096M,id=ram-node0,host-nodes=0,policy=bind

I got the following error: "NUMA node binding are not supported by this QEMU"

Looking at the qemu code, it appears that this means that the package was built without CONFIG_QEMU being defined. The "host-nodes=0,policy=bind" functionality is in use in OpenStack, and so it would be problematic if it is not supported in Ubuntu.

ProblemType: Bug
DistroRelease: Ubuntu 14.10
Package: qemu-system-x86 2.1+dfsg-4ubuntu6.4
ProcVersionSignature: Ubuntu 3.16.0-30.40-generic 3.16.7-ckt3
Uname: Linux 3.16.0-30-generic x86_64
ApportVersion: 2.14.7-0ubuntu8.1
Architecture: amd64
Date: Wed Feb 4 09:04:26 2015
KvmCmdLine: COMMAND STAT EUID RUID PID PPID %CPU COMMAND
Lsusb:
 Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
 Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
 Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
 Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
MachineType: QEMU Standard PC (i440FX + PIIX, 1996)
ProcEnviron:
 TERM=xterm
 PATH=(custom, no user)
 XDG_RUNTIME_DIR=<set>
 LANG=en_US.UTF-8
 SHELL=/bin/bash
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-3.16.0-30-generic root=UUID=dc5b516f-b818-4286-963e-0a0ad3651fb9 ro splash quiet
SourcePackage: qemu
UpgradeStatus: No upgrade log present (probably fresh install)
dmi.bios.date: 04/01/2014
dmi.bios.vendor: SeaBIOS
dmi.bios.version: 1.7.5-20140531_083030-gandalf
dmi.chassis.type: 1
dmi.chassis.vendor: QEMU
dmi.chassis.version: pc-i440fx-2.1
dmi.modalias: dmi:bvnSeaBIOS:bvr1.7.5-20140531_083030-gandalf:bd04/01/2014:svnQEMU:pnStandardPC(i440FX+PIIX,1996):pvrpc-i440fx-2.1:cvnQEMU:ct1:cvrpc-i440fx-2.1:
dmi.product.name: Standard PC (i440FX + PIIX, 1996)
dmi.product.version: pc-i440fx-2.1
dmi.sys.vendor: QEMU

Revision history for this message
Chris Friesen (cbf123) wrote :
Revision history for this message
Serge Hallyn (serge-hallyn) wrote : Re: [Bug 1417937] [NEW] qemu appears to be built without CONFIG_NUMA defined

It looks like it is mainly disabled because it is in Debian, see
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=758189

The reasons for disabling it in Debian don't strictly apply in
ubuntu, so it may be ok for us to enable it.

 status: triaged
 importance: high

Changed in qemu (Ubuntu):
importance: Undecided → High
status: New → Triaged
Revision history for this message
Serge Hallyn (serge-hallyn) wrote :

Looks like libnuma is not supported on arm. That complicates the enablement.

Revision history for this message
Chris Friesen (cbf123) wrote :

Is it possible to conditionally enable it based on architecture? Or does Ubuntu try to keep the packages configured the same across all architectures?

Revision history for this message
Serge Hallyn (serge-hallyn) wrote : Re: [Bug 1417937] Re: qemu appears to be built without CONFIG_NUMA defined

Yup, we should be able to do Build-depends: libnuam-dev [ x86 arm64 ... ]

I will test something along those lines tomorrow.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package qemu - 1:2.2+dfsg-5expubuntu5

---------------
qemu (1:2.2+dfsg-5expubuntu5) vivid; urgency=medium

  * debian/control-in: enable numa on architectures where numa is built
    (LP: #1417937)
 -- Serge Hallyn <email address hidden> Thu, 12 Feb 2015 23:18:58 -0600

Changed in qemu (Ubuntu):
status: Triaged → Fix Released
Revision history for this message
li,chen (chen-li) wrote :

would this be back-port to utopic ?

Revision history for this message
Serge Hallyn (serge-hallyn) wrote :

Quoting li,chen (<email address hidden>):
> would this be back-port to utopic ?

It's a new features, so doesn't strictly fall under SRU guidelines.
(See https://wiki.ubuntu.com/StableReleaseUpdates)

Revision history for this message
Chris Friesen (cbf123) wrote :

One could argue that the NUMA functionality wasn't intentionally turned off (it was inherited from debian) and thus re-enabling it would be fixing a bug.

Just as some background...the kilo release of OpenStack (currently under way) introduced support for NUMA guests (per-NUMA node hugepage support, guests with multiple NUMA nodes, pinning guest NUMA node to host NUMA node, etc.). If Ubuntu (which is currently one of the more popular OpenStack host distros) doesn't support NUMA in qemu by default, it's going to complicate things.

Revision history for this message
Serge Hallyn (serge-hallyn) wrote :

Quoting Chris Friesen (<email address hidden>):
> One could argue that the NUMA functionality wasn't intentionally turned
> off (it was inherited from debian) and thus re-enabling it would be
> fixing a bug.

That would definitely be the case if it had been on in precise or trusty,
but that doesn't seem to be the case.

> Just as some background...the kilo release of OpenStack (currently under
> way) introduced support for NUMA guests (per-NUMA node hugepage support,
> guests with multiple NUMA nodes, pinning guest NUMA node to host NUMA
> node, etc.). If Ubuntu (which is currently one of the more popular
> OpenStack host distros) doesn't support NUMA in qemu by default, it's
> going to complicate things.

If you only want this in utopic, I think I feel comfortable trying for
that. For trusty I'd be more hesitant, but we can still try - with
a lot of testing.

Revision history for this message
Chris Friesen (cbf123) wrote :

I don't want to give you more work than necessary.

If we can get it for utopic that'd be great...at least then we'd have one formally released version of Ubuntu that supported it.

Changed in qemu (Ubuntu Utopic):
importance: Undecided → High
description: updated
Revision history for this message
Chris J Arges (arges) wrote : Please test proposed package

Hello Chris, or anyone else affected,

Accepted qemu into utopic-proposed. The package will build now and be available at http://launchpad.net/ubuntu/+source/qemu/2.1+dfsg-4ubuntu6.5 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in qemu (Ubuntu Utopic):
status: New → Fix Committed
tags: added: verification-needed
Revision history for this message
Serge Hallyn (serge-hallyn) wrote :

Verified on utopic.

tags: added: verification-done
removed: verification-needed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package qemu - 2.1+dfsg-4ubuntu6.5

---------------
qemu (2.1+dfsg-4ubuntu6.5) utopic-proposed; urgency=medium

  * debian/control-in: enable numa on architectures where numa is built
    (LP: #1417937)
 -- Serge Hallyn <email address hidden> Tue, 17 Feb 2015 14:13:00 -0600

Changed in qemu (Ubuntu Utopic):
status: Fix Committed → Fix Released
Revision history for this message
Chris J Arges (arges) wrote : Update Released

The verification of the Stable Release Update for qemu has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Related questions

Remote bug watches

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