Bug 1244664 - guest cannot start when set numatune and disable cpuset in qemu.conf
Summary: guest cannot start when set numatune and disable cpuset in qemu.conf
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: libvirt
Version: 7.2
Hardware: x86_64
OS: Linux
medium
medium
Target Milestone: rc
: ---
Assignee: Martin Kletzander
QA Contact: Virtualization Bugs
URL:
Whiteboard:
: 1244649 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2015-07-20 08:49 UTC by Luyao Huang
Modified: 2015-11-19 06:48 UTC (History)
4 users (show)

Fixed In Version: libvirt-1.2.17-4.el7
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2015-11-19 06:48:11 UTC
Target Upstream Version:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2015:2202 0 normal SHIPPED_LIVE libvirt bug fix and enhancement update 2015-11-19 08:17:58 UTC

Description Luyao Huang 2015-07-20 08:49:45 UTC
Description of problem:
guest cannot start when set numatune and disable cpuset in qemu.conf

Version-Release number of selected component (if applicable):
libvirt-1.2.17-2.el7.x86_64

How reproducible:
100%

Steps to Reproduce:
1. disable cpuset in qemu.conf:

# vim /etc/libvirt/qemu.conf
cgroup_controllers = [ "devices", "blkio", "cpu", "cpuacct", "memory"]


2. restart libvirtd:
# service libvirtd restart
Redirecting to /bin/systemctl restart  libvirtd.service


3. prepare a guest with numa settings:
# virsh numatune rhel7.0
numa_mode      : strict
numa_nodeset   : 0

# virsh start rhel7.0
error: Failed to start domain rhel7.0
error: internal error: Controller 'cpuset' is not mounted


Actual results:
guest cannot start when set numatune and disable cpuset in qemu.conf


Expected results:
guest can start success since the libnuma have some function for bind to a node , and we need check if cpuset is disabled then try to use it.

Additional info:

Also found this issue with setvcpus and iothreadadd:

# virsh setvcpus test4 3
error: internal error: Controller 'cpuset' is not mounted

# virsh iothreadadd test4 11
error: Requested operation is not valid: failed to set cpuset.cpus in cgroup for id 11

Comment 1 Luyao Huang 2015-07-20 09:20:25 UTC
I have send a patch to upstream:
http://www.redhat.com/archives/libvir-list/2015-July/msg00717.html

Comment 2 Martin Kletzander 2015-08-03 11:24:20 UTC
Fixed upstream with v1.2.18-3-g1439eb32afc9:

commit 1439eb32afc9f97378d1d121c0b5c80d2f84896c
Author: Luyao Huang <lhuang@redhat.com>
Date:   Mon Jul 20 17:18:37 2015 +0800

    qemu: fix some api cannot work when disable cpuset in conf

Comment 5 John Ferlan 2015-08-12 12:21:14 UTC
*** Bug 1244649 has been marked as a duplicate of this bug. ***

Comment 6 hongming 2015-08-31 09:56:48 UTC
Verify it as follows. The result is expected. Move its status to VERIFIED.

# rpm -q libvirt
libvirt-1.2.17-6.el7.x86_64

# cat /etc/libvirt/qemu.conf|grep cgroup_controllers
cgroup_controllers = [ "cpu", "devices", "memory", "blkio", "cpuacct" ]


# service libvirtd restart
Redirecting to /bin/systemctl restart  libvirtd.service


# virsh start test4
Domain test4 started

# virsh numatune test4
numa_mode      : strict
numa_nodeset   : 1

# virsh iothreadadd test4 11

# virsh iothreadinfo test4
 IOThread ID     CPU Affinity   
---------------------------------------------------
 11              0-31

# virsh setvcpus test4 2

# virsh vcpucount test4
maximum      config         4
maximum      live           4
current      config         1
current      live           2

Comment 8 errata-xmlrpc 2015-11-19 06:48:11 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHBA-2015-2202.html


Note You need to log in before you can comment on or make changes to this bug.