Bionic QEMU with Bionic Kernel hangs in AMD FX-8350 with cpu-host as passthrough
Bug #1834522 reported by
Rafael David Tinoco
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
linux (Ubuntu) |
Fix Released
|
Medium
|
Unassigned | ||
Bionic |
Fix Released
|
Medium
|
Rafael David Tinoco |
Bug Description
[Impact]
* Nested AMD KVM guest does not work in AMD CPUs when using host-passthrough as cpu-mode.
* QEMU does not start, hanging before the VM initialization.
[Test Case]
* Bionic KVM GUEST tries to use nested KVM in AMD CPU
* to use the following XML file: https:/
* to have AMD FX(tm)-8350 Eight-Core Processor CPU or similar
* to use Xenial qemu on top of a HWE kernel -> works
[Regression Potential]
* KVM SVM could be affected but patch is from upstream, fixes the specific issue and has been tested by me in my currently developing workstation (heavy usage).
[Other Info]
* Patches have been sent to kernel team mailing list.
CVE References
Changed in linux (Ubuntu): | |
status: | New → Confirmed |
importance: | Undecided → Medium |
assignee: | nobody → Rafael David Tinoco (rafaeldtinoco) |
Changed in linux (Ubuntu Bionic): | |
status: | New → Confirmed |
importance: | Undecided → Medium |
assignee: | nobody → Rafael David Tinoco (rafaeldtinoco) |
Changed in linux (Ubuntu): | |
importance: | Medium → Undecided |
assignee: | Rafael David Tinoco (rafaeldtinoco) → nobody |
status: | Confirmed → Fix Released |
importance: | Undecided → Medium |
tags: | added: cscc |
Changed in linux (Ubuntu Bionic): | |
status: | Confirmed → In Progress |
Changed in linux (Ubuntu Bionic): | |
status: | In Progress → Fix Committed |
tags: |
added: verification-done verification-done-bionic removed: verification-needed-bionic |
To post a comment you must log in.
# BISECT LOG
git bisect start f4ada5f364a84ed 60b196dbcda] Linux 4.16 4ada5f364a84ed6 0b196dbcda 66810e75b182018 e9edb68e8ff] Linux 4.15 6810e75b182018e 9edb68e8ff a70d9811ca2872d 47367b48767] printk: Wake klogd when passing console_lock owner 70d9811ca2872d4 7367b48767 68e8671b04afd54 412625df60a] Merge tag 'for-linus' of git://git. kernel. org/pub/ scm/linux/ kernel/ git/rdma/ rdma 8e8671b04afd544 12625df60a d205c78a9fd5370 b1b088a2b87] Merge tag 'drm-misc- fixes-2018- 02-21' of git://anongit. freedesktop. org/drm/ drm-misc into drm-fixes 205c78a9fd5370b 1b088a2b87 6c1e2eb9129a30d 6055040ff73] Merge tag 'linux- can-fixes- for-4.16- 20180312' of ssh://gitolite. kernel. org/pub/ scm/linux/ kernel/ git/mkl/ linux-can c1e2eb9129a30d6 055040ff73 8ba646380ac3838 d30a2558ead] Merge tag 'linux- kselftest- 4.16-rc4' of git://git. kernel. org/pub/ scm/linux/ kernel/ git/shuah/ linux-kselftest ba646380ac3838d 30a2558ead b0b056e02429973 8f7cc9a28b7] Merge tag 'arm64-fixes' of git://git. kernel. org/pub/ scm/linux/ kernel/ git/arm64/ linux 0b056e024299738 f7cc9a28b7 4f4ba15b85ea4f9 7bd544b5362] Merge branch 'x86-urgent- for-linus' of git://git. kernel. org/pub/ scm/linux/ kernel/ git/tip/ tip f4ba15b85ea4f97 bd544b5362 0e2dacc0dfec207 7e334dcedbf] Merge tag 'for-linus' of git://git. kernel. org/pub/ scm/virt/ kvm/kvm e2dacc0dfec2077 e334dcedbf 0a11846d7c4733a 5db04730884] tools/kvm_stat: use a more pythonic way to iterate over dictionaries a11846d7c4733a5 db04730884 a3ece3a4c1e4e51 403090a907a] KVM: x86: fix backward migration with async_PF 3ece3a4c1e4e514 03090a907a c7441ff6c970833 c463114040a] KVM: SVM: install RSM intercept 7441ff6c970833c 463114040a 86f006b0728085e 0b4e8f5749b] crypto: ccp: Fix sparse, use plain integer as NULL pointer 6f006b0728085e0 b4e8f5749b 7a2812115ed84d4 be36eb16817] KVM: SVM: no need to call access_ok() in LAUNCH_MEASURE command a2812115ed84d4b e36eb16817 c7441ff6c970833 c463114040a] KVM: SVM: install RSM intercept
# bad: [0adb32858b0bdd
git bisect bad 0adb32858b0bddf
# good: [d8a5b80568a9cb
git bisect good d8a5b80568a9cb6
# good: [c14376de3a1bef
git bisect good c14376de3a1befa
# good: [2246edfaf88dc3
git bisect good 2246edfaf88dc36
# good: [dfe8db22372873
git bisect good dfe8db22372873d
# bad: [4665c6b04651e9
git bisect bad 4665c6b04651e96
# bad: [3499de32fa6b60
git bisect bad 3499de32fa6b608
# good: [65738c6b461a8b
git bisect good 65738c6b461a8bb
# good: [c23a75759191e8
git bisect good c23a75759191e84
# bad: [d4858aaf6bd8a9
git bisect bad d4858aaf6bd8a90
# good: [0eb578009a1d53
git bisect good 0eb578009a1d530
# good: [fe2a3027e74e40
git bisect good fe2a3027e74e40a
# bad: [7607b7174405ae
git bisect bad 7607b7174405aec
# good: [e5699f56bc91a2
git bisect good e5699f56bc91a28
# good: [3e233385ef4a21
git bisect good 3e233385ef4a217
# first bad commit: [7607b7174405ae
# NOTE
I was doing "invert" bisection.. so the bad commit is actually what seems to have fixed the issue:
commit 7607b7174405aec 7441ff6c970833c 463114040a
Author: Brijesh Singh <email address hidden>
Date: Mon Feb 19 10:14:44 2018 -0600
KVM: SVM: install RSM intercept
RSM instruction is used by the SMM handler to return from SMM mode.
Currently, rsm causes a #UD - which results in instruction fetch, decode,
and emulate. By installing the RSM inte...