[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#785018: "KVM internal error" and emulation failure



Package: qemu-system-x86
Version: 1:2.1+dfsg-11
Severity: important

I don't know if this bug lies in qemu or in the kernel.  I can reproduce it
with the latest kernel from git (4.1-rc3), as well as with 3.16 (Debian package
3.16.7-ckt9-3).  I can also reproduce this bug with the latest qemu from git
(commit 266745cacb848d7cd0ae8889ae262e8718ace4d4).

I can reliably reproduce the following error on a Broadwell system
(/proc/cpuinfo attached) with KVM acceleration enabled, when booting a
self-built OVMF BIOS image with -bios.  The same image works fine on other
systems, or on this system with KVM acceleration disabled.

KVM internal error. Suberror: 1
emulation failure
RAX=00000000fffe75cc RBX=00000000fffe60e4 RCX=0000000000000402 RDX=0000000000000402
RSI=00000000fffe62c4 RDI=0000000000005042 RBP=000000000007ffd0 RSP=000000000007fd08
R8 =0000000000000001 R9 =0000000000000000 R10=0000000000000000 R11=0000000000000000
R12=0000000000000000 R13=0000000000000000 R14=0000000000000000 R15=0000000000000000
RIP=00000000fffe75cc RFL=00010046 [---Z-P-] CPL=0 II=0 A20=1 SMM=0 HLT=0
ES =0008 0000000000000000 ffffffff 00c09300 DPL=0 DS   [-WA]
CS =0018 0000000000000000 ffffffff 00a09b00 DPL=0 CS64 [-RA]
SS =0008 0000000000000000 ffffffff 00c09300 DPL=0 DS   [-WA]
DS =0008 0000000000000000 ffffffff 00c09300 DPL=0 DS   [-WA]
FS =0008 0000000000000000 ffffffff 00c09300 DPL=0 DS   [-WA]
GS =0008 0000000000000000 ffffffff 00c09300 DPL=0 DS   [-WA]
LDT=0000 0000000000000000 0000ffff 00008200 DPL=0 LDT
TR =0000 0000000000000000 0000ffff 00008b00 DPL=0 TSS64-busy
GDT=     00000000ffffff80 0000001f
IDT=     0000000000000000 0000ffff
CR0=c0000033 CR2=0000000000000000 CR3=00000000ffffe000 CR4=00000660
DR0=0000000000000000 DR1=0000000000000000 DR2=0000000000000000 DR3=0000000000000000 
DR6=00000000ffff0ff0 DR7=0000000000000400
EFER=0000000000000500
Code=00 00 00 48 b8 50 7c fe ff 00 00 00 00 ff d0 c9 c3 90 90 90 <9b> db e3 68 7f 03 00 00 48 8d 04 24 d9 28 58 0f 20 e0 48 0d 00 02 00 00 0f 22 e0 68 80 1f

(qemu then stops emulation.)

Decoding that instruction stream (either from those bytes, or via the
'x' command in the qemu console) shows (starting with the failing
instruction):

   0:   9b db e3                finit
   3:   68 7f 03 00 00          pushq  $0x37f
   8:   48 8d 04 24             lea    (%rsp),%rax
   c:   d9 28                   fldcw  (%rax)
   e:   58                      pop    %rax
   f:   0f 20 e0                mov    %cr4,%rax
  12:   48 0d 00 02 00 00       or     $0x200,%rax
  18:   0f 22 e0                mov    %rax,%cr4

If I disable kvm acceleration, this failure does not occur.  The failure still
occurs with other values for the -cpu option.

Happy to collect additional information about the crash, or try with
other options, to help debug this.  I can also run a qemu binary under
gdb and collect information that way, if that helps.

- Josh Triplett

-- System Information:
Debian Release: stretch/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 4.1.0-rc3 (SMP w/4 CPU cores)
Locale: LANG=C.UTF-8, LC_CTYPE=C.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages qemu-system-x86 depends on:
ii  ipxe-qemu           1.0.0+git-20150424.a25a16d-1
ii  libaio1             0.3.110-1
ii  libasound2          1.0.28-1
ii  libbluetooth3       5.23-2+b1
ii  libbrlapi0.6        5.2~20141018-5
ii  libc6               2.19-18
ii  libcurl3-gnutls     7.42.1-2
ii  libfdt1             1.4.0+dfsg-1
ii  libgcc1             1:5.1.1-5
ii  libglib2.0-0        2.44.0-2
ii  libgnutls-deb0-28   3.3.15-2
ii  libiscsi2           1.12.0-2
ii  libjpeg62-turbo     1:1.3.1-12
ii  libncurses5         5.9+20140913-1+b1
ii  libpixman-1-0       0.32.6-3
ii  libpng12-0          1.2.50-2+b2
ii  libpulse0           6.0-2
ii  librados2           0.80.9-2
ii  librbd1             0.80.9-2
ii  libsasl2-2          2.1.26.dfsg1-13
ii  libsdl1.2debian     1.2.15-11
ii  libseccomp2         2.1.1-1
ii  libspice-server1    0.12.5-1+b1
ii  libssh2-1           1.5.0-2+b1
ii  libtinfo5           5.9+20140913-1+b1
ii  libusb-1.0-0        2:1.0.19-1
ii  libusbredirparser1  0.7-1
ii  libuuid1            2.26.2-2
ii  libvdeplug2         2.3.2+r586-2
ii  libx11-6            2:1.6.3-1
ii  libxen-4.4          4.4.1-9
ii  libxenstore3.0      4.4.1-9
ii  qemu-system-common  1:2.1+dfsg-11
ii  seabios             1.8.1-2
ii  zlib1g              1:1.2.8.dfsg-2+b1

Versions of packages qemu-system-x86 recommends:
ii  qemu-utils  1:2.1+dfsg-11

Versions of packages qemu-system-x86 suggests:
ii  kmod     20-1
pn  ovmf     <none>
pn  samba    <none>
pn  sgabios  <none>
pn  vde2     <none>

-- no debconf information


Reply to: