Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.

Bug 1655826

Summary: kvm_put_msrs: Assertion `ret == cpu->kvm_msr_buf->nmsrs' on Opteron_G3 (MSR 0x10a / arch-capabilities)
Product: Red Hat Enterprise Linux Advanced Virtualization Reporter: Han Han <hhan>
Component: qemu-kvmAssignee: Bandan Das <bdas>
Status: CLOSED ERRATA QA Contact: jingzhao <jinzhao>
Severity: high Docs Contact:
Priority: urgent    
Version: 8.0CC: amit, bdas, berrange, cfergeau, chayang, crobinso, ddepaula, dgilbert, dwmw2, dyuan, extras-qa, fjin, hhan, hhuang, itamar, jen, jgao, jinzhao, juzhang, knoel, lhuang, meili, mikhail.v.gavrilov, pbonzini, rbalakri, ribarry, rjones, virt-bugs, virt-maint, virt-maint, wehuang, xuwei, yalzhang
Target Milestone: rcKeywords: Regression
Target Release: 8.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: qemu-3.1.0 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: 1651021 Environment:
Last Closed: 2019-05-29 16:04:28 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1651021    
Bug Blocks: 910269    
Attachments:
Description Flags
cpuinfo and backtrace none

Description Han Han 2018-12-04 03:13:00 UTC
Created attachment 1511169 [details]
cpuinfo and backtrace

On qemu-kvm-3.1.0-0.module+el8+2266+616cf026.next.candidate.x86_64, start with following cmdline:
# LC_ALL=C PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin QEMU_AUDIO_DRV=spice /usr/libexec/qemu-kvm -name guest=pc,debug-threads=on -cpu Opteron_G3,vme=on,x2apic=on,tsc-deadline=on,hypervisor=on,arat=on,mmxext=on,fxsr_opt=on,pdpe1gb=on,3dnowext=on,3dnow=on,cmp_legacy=on,cr8legacy=on,3dnowprefetch=on,osvw=on,monitor=off -m 1024
qemu-kvm: error: failed to set MSR 0x10a to 0x0
qemu-kvm: /builddir/build/BUILD/qemu-3.1.0/target/i386/kvm.c:2211: kvm_put_msrs: Assertion `ret == cpu->kvm_msr_buf->nmsrs' failed.
[1]    13527 abort (core dumped)  LC_ALL=C PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin QEMU_AUDIO_DR

It get SIGUSR1 here.
For the backtrace and host cpuinfo, see the attachment.

+++ This bug was initially created as a clone of Bug #1651021 +++

Description of problem:

Error starting domain: internal error: qemu unexpectedly closed the monitor: 2018-11-18T21:51:02.983748Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.01H:EDX.ss [bit 27]
2018-11-18T21:51:03.113175Z qemu-system-x86_64: error: failed to set MSR 0x10a to 0x0
qemu-system-x86_64: /builddir/build/BUILD/qemu-3.1.0-rc1/target/i386/kvm.c:2211: kvm_put_msrs: Assertion `ret == cpu->kvm_msr_buf->nmsrs' failed.

Traceback (most recent call last):
  File "/usr/share/virt-manager/virtManager/asyncjob.py", line 75, in cb_wrapper
    callback(asyncjob, *args, **kwargs)
  File "/usr/share/virt-manager/virtManager/asyncjob.py", line 111, in tmpcb
    callback(*args, **kwargs)
  File "/usr/share/virt-manager/virtManager/libvirtobject.py", line 66, in newfn
    ret = fn(self, *args, **kwargs)
  File "/usr/share/virt-manager/virtManager/domain.py", line 1400, in startup
    self._backend.create()
  File "/usr/lib64/python3.7/site-packages/libvirt.py", line 1080, in create
    if ret == -1: raise libvirtError ('virDomainCreate() failed', dom=self)
libvirt.libvirtError: internal error: qemu unexpectedly closed the monitor: 2018-11-18T21:51:02.983748Z qemu-system-x86_64: warning: host doesn't support requested feature: CPUID.01H:EDX.ss [bit 27]
2018-11-18T21:51:03.113175Z qemu-system-x86_64: error: failed to set MSR 0x10a to 0x0
qemu-system-x86_64: /builddir/build/BUILD/qemu-3.1.0-rc1/target/i386/kvm.c:2211: kvm_put_msrs: Assertion `ret == cpu->kvm_msr_buf->nmsrs' failed.


# qemu-kvm 
Unable to init server: Could not connect: Connection refused
qemu-system-x86_64: error: failed to set MSR 0x10a to 0x0
qemu-system-x86_64: /builddir/build/BUILD/qemu-3.1.0-rc1/target/i386/kvm.c:2211: kvm_put_msrs: Assertion `ret == cpu->kvm_msr_buf->nmsrs' failed.
Aborted (core dumped)


Version-Release number of selected component (if applicable):

# qemu-kvm --version
QEMU emulator version 3.0.91 (qemu-3.1.0-0.1.rc1.fc30)
Copyright (c) 2003-2018 Fabrice Bellard and the QEMU Project developers

# rpm -q qemu-kvm
qemu-kvm-3.1.0-0.1.rc1.fc30.x86_64

--- Additional comment from Mikhail on 2018-11-18 17:01 EST ---



--- Additional comment from Mikhail on 2018-11-18 22:27:38 EST ---

Latest workable version:

# rpm -q qemu-kvm 
qemu-kvm-3.0.0-1.fc30.x86_64
# qemu-kvm --version
QEMU emulator version 3.0.0 (qemu-3.0.0-1.fc30)
Copyright (c) 2003-2017 Fabrice Bellard and the QEMU Project developers

--- Additional comment from Cole Robinson on 2018-11-19 10:02:09 EST ---

Thanks for the report. Can you provide:

sudo virsh dumpxml $vmname
/var/log/libvirt/qemu/$vmname.log

--- Additional comment from Mikhail on 2018-11-19 13:23 EST ---



--- Additional comment from Mikhail on 2018-11-19 13:26 EST ---



--- Additional comment from Cole Robinson on 2018-11-19 15:42:20 EST ---

Similar report on the list: https://lists.gnu.org/archive/html/qemu-devel/2018-11/msg03509.html

I'll mention this bug there

Comment 1 Han Han 2018-12-04 03:14:24 UTC
BTW, it works on qemu-kvm-3.0.0-2.module+el8+2246+78080371

Comment 2 Han Han 2018-12-04 03:19:56 UTC
A more simple reproduce cmdline:
# /usr/libexec/qemu-kvm
qemu-kvm: error: failed to set MSR 0x10a to 0x0
qemu-kvm: /builddir/build/BUILD/qemu-3.1.0/target/i386/kvm.c:2211: kvm_put_msrs: Assertion `ret == cpu->kvm_msr_buf->nmsrs' failed.
[1]    14428 abort (core dumped)  /usr/libexec/qemu-kvm

Comment 3 Bandan Das 2018-12-04 19:45:03 UTC
Can you try commit aec5e9c3a94cf8b7920f59bef69a6f426092c4a0 from upstream ?
Alternatively, here's a brew build
https://brewweb.engineering.redhat.com/brew/taskinfo?taskID=19371843

Comment 4 Han Han 2018-12-05 01:47:53 UTC
(In reply to Bandan Das from comment #3)
> Can you try commit aec5e9c3a94cf8b7920f59bef69a6f426092c4a0 from upstream ?
> Alternatively, here's a brew build
> https://brewweb.engineering.redhat.com/brew/taskinfo?taskID=19371843

This scratch build works. Bug is not reproduced on it.

Comment 5 Danilo Cesar Lemes de Paula 2018-12-07 22:18:26 UTC
QA_ACK+, please?

Comment 6 Xueqiang Wei 2018-12-12 05:35:20 UTC
*** Bug 1657738 has been marked as a duplicate of this bug. ***

Comment 10 jingzhao 2019-02-01 03:15:34 UTC
Reproduce it, please check https://bugzilla.redhat.com/show_bug.cgi?id=1656829#c16

Verified it with qemu-kvm-3.1.0-10.module+el8+2732+3228f155.x86_64


Guest can be boot successfully with following command line:

# /usr/libexec/qemu-kvm -M pc-q35-rhel7.6.0 -vga qxl -monitor stdio -smp 4 -m 8G -vnc :0  -cpu Opteron_G3 -device pcie-root-port,id=root1,slot=0 -drive file=/mnt/rhel76-64-virtio-scsi.qcow2,if=none,id=drive-virtio-disk0,format=qcow2,cache=none,discard=unmap,werror=stop,rerror=stop,aio=threads -device virtio-blk-pci,drive=drive-virtio-disk0,bus=root1,id=virtio-disk0,bootindex=1 -vnc :1


According to above test result, changed to verified

Comment 12 errata-xmlrpc 2019-05-29 16:04:28 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://access.redhat.com/errata/RHBA-2019:1293