Note: This bug is displayed in read-only format because
the product is no longer active in Red Hat Bugzilla.
RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Created attachment 1149277[details]
libvirtd and qemu log
Description of problem:
On a host that doesn't support CMT, define&start a guest with cmt event enabled:
# virsh list
Id Name State
----------------------------------------------------
10 windows running
# virsh dumpxml windows
...
<perf>
<event name='cmt' enabled='yes'/>
</perf>
...
Then restart libvirtd, guest will be killed.
# systemctl restart libvirtd
# virsh list
Id Name State
----------------------------------------------------
Version-Release number of selected component (if applicable):
libvirt-1.3.3-2.el7.x86_64
How reproducible:
100%
Steps to Reproduce:
1. On a host that doesn't support Intel CMT, define&start a guest with cmt enabled:
# cat /tmp/windows.xml
...
<perf>
<event name='cmt' enabled='yes'/>
</perf>
# virsh define /tmp/windows.xml
# virsh start windows
# virsh list
Id Name State
----------------------------------------------------
10 windows running
# virsh dumpxml windows
...
<perf>
<event name='cmt' enabled='yes'/>
</perf>
...
# virsh perf windows
cmt : disabled
2.
# systemctl restart libvirtd
# virsh list
Id Name State
----------------------------------------------------
3. Another scenario is that migrating a guest with cmt event enabled from a host that supports CMT to a host that doesn't support CMT, after migration, restart libvirtd on target host, the guest will be killed.
Actual results:
Guest start successfully but then got killed when restart libvirtd
Expected results:
Guest fails to start, and reports error:
error : virFileReadAll:1375 : Failed to open file '/sys/devices/intel_cqm/type': No such file or directory
Additional info:
Fixed upstream:
commit edadd46c05b1eb93479a88017783bae648709bfa
Author: Peter Krempa <pkrempa>
Date: Wed Apr 27 14:58:32 2016 +0200
qemu: process: Fix failure semantics for perf events
For strange reasons if a perf event type was not supported or failed to
be enabled at VM start libvirt would ignore the failure.
On the other hand on restart if the event could not be re-enabled
libvirt would fail to reconnect to the VM and kill it.
Both don't make really sense. Fix it by failing to start the VM if the
event is not supported and change the event to disabled if it can't be
reconnected (unlikely).
(plus a few cleanups to make this patch happen)
Reproduce the bug with libvirt-1.3.3-2.el7.x86_64.
steps as comment 0.
Test pass with version libvirt-1.3.5-1.el7.x86_64.
Steps:
1.On a host that doesn't support Intel CMT, define a guest with cmt enabled:
#virsh edit rhel7.3
...
<perf>
<event name='cmt' enabled='yes'/>
</perf>
...
2.Start the guest:
#virsh start rhel7.3
error: Failed to start domain rhel7.3
error: Failed to open file '/sys/devices/intel_cqm/type': No such file or directory
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/RHSA-2016-2577.html
Created attachment 1149277 [details] libvirtd and qemu log Description of problem: On a host that doesn't support CMT, define&start a guest with cmt event enabled: # virsh list Id Name State ---------------------------------------------------- 10 windows running # virsh dumpxml windows ... <perf> <event name='cmt' enabled='yes'/> </perf> ... Then restart libvirtd, guest will be killed. # systemctl restart libvirtd # virsh list Id Name State ---------------------------------------------------- Version-Release number of selected component (if applicable): libvirt-1.3.3-2.el7.x86_64 How reproducible: 100% Steps to Reproduce: 1. On a host that doesn't support Intel CMT, define&start a guest with cmt enabled: # cat /tmp/windows.xml ... <perf> <event name='cmt' enabled='yes'/> </perf> # virsh define /tmp/windows.xml # virsh start windows # virsh list Id Name State ---------------------------------------------------- 10 windows running # virsh dumpxml windows ... <perf> <event name='cmt' enabled='yes'/> </perf> ... # virsh perf windows cmt : disabled 2. # systemctl restart libvirtd # virsh list Id Name State ---------------------------------------------------- 3. Another scenario is that migrating a guest with cmt event enabled from a host that supports CMT to a host that doesn't support CMT, after migration, restart libvirtd on target host, the guest will be killed. Actual results: Guest start successfully but then got killed when restart libvirtd Expected results: Guest fails to start, and reports error: error : virFileReadAll:1375 : Failed to open file '/sys/devices/intel_cqm/type': No such file or directory Additional info: