From: Johannes Bauer <dfnsonfsduifb@gmx.de>
To: Avi Kivity <avi@redhat.com>
Cc: kvm@vger.kernel.org, Gleb Natapov <gleb@redhat.com>
Subject: Re: KVM entry failed, hardware error
Date: Sun, 03 Jun 2012 18:25:33 +0200 [thread overview]
Message-ID: <4FCB8FFD.4020705@gmx.de> (raw)
In-Reply-To: <4FCB69FE.80303@redhat.com>
On 03.06.2012 15:43, Avi Kivity wrote:
> On 06/03/2012 04:01 PM, Johannes Bauer wrote:
>> On 03.06.2012 14:33, Avi Kivity wrote:
>>
>>>> when trying to install Windows7 in a qemu-kvm 1.0.1 installation on
>>>> Gentoo on my host running
>>>
>>> Is that a 32-bit or 64-bit Windows 7?
>>
>> 64 bit. But I've also (in despair) tried installing 32 Bit Windows 7,
>> with the exact same effect.
>>
>>>> EAX=00000010 EBX=00000080 ECX=00000000 EDX=00000080
>>>> ESI=0025da4a EDI=0007da4a EBP=00001f20 ESP=00000200
>>>> EIP=0000009b EFL=00000002 [-------] CPL=3 II=0 A20=1 SMM=0 HLT=0
>>>> ES =0020 00000200 0000ffff 00009300
>>>> CS =b000 002b0000 0000ffff 0000f300
>>>
>>> Pre-unrestricted mode hosts require cs.selector (first number) * 16 ==
>>> cs.base (second number). This clearly isn't the case here.
>
> Gleb points out that cs.base == gdt.base, which doesn't make a lot of
> sense. So some corruption has happened earlier. Please follow
> http://www.linux-kvm.org/page/Tracing and post the last few thousand
> lines somewhere. Trace a uniprocessor guest if the problem reproduces
> that way.
Tried that -- and failed miserably.
Something in the trace format appears to have changed. When using
trace-cmd report, I first get a parser warning:
trace-cmd: No such file or directory
bad op token {
failed to read event print fmt for kvm_emulate_insn
version = 6
CPU 0 is empty
cpus=4
The ENOENT errno doesn't correspond to that error, strace showed that
occuring much earlier in something unrelated. The warning is generated by:
#1 0x0000000000412c66 in process_op (event=0x6537c0, arg=0x6564f0,
tok=0x7fffffffd508) at /home/joe/qemu/trace/trace-cmd/parse-events.c:1686
#2 0x0000000000414eef in process_arg_token (event=0x6537c0,
arg=0x6564f0, tok=0x7fffffffd598, type=EVENT_OP) at
/home/joe/qemu/trace/trace-cmd/parse-events.c:2604
#3 0x0000000000412727 in process_arg (event=0x6537c0, arg=0x6564f0,
tok=0x7fffffffd598) at /home/joe/qemu/trace/trace-cmd/parse-events.c:1514
#4 0x00000000004146b4 in process_paren (event=0x6537c0, arg=0x6564f0,
tok=0x7fffffffd5f8) at /home/joe/qemu/trace/trace-cmd/parse-events.c:2352
#5 0x0000000000414eb0 in process_arg_token (event=0x6537c0,
arg=0x6564f0, tok=0x7fffffffd678, type=EVENT_DELIM) at
/home/joe/qemu/trace/trace-cmd/parse-events.c:2596
#6 0x0000000000412727 in process_arg (event=0x6537c0, arg=0x6564f0,
tok=0x7fffffffd678) at /home/joe/qemu/trace/trace-cmd/parse-events.c:1514
#7 0x0000000000414f87 in event_read_print_args (event=0x6537c0,
list=0x656490) at /home/joe/qemu/trace/trace-cmd/parse-events.c:2637
#8 0x000000000041524f in event_read_print (event=0x6537c0) at
/home/joe/qemu/trace/trace-cmd/parse-events.c:2723
#9 0x0000000000419040 in pevent_parse_event (pevent=0x63a0d0,
buf=0x653390 "name: kvm_emulate_insn\nID:
29\nformat:\n\tfield:unsigned short
common_type;\toffset:0;\tsize:2;\tsigned:0;\n\tfield:unsigned char
common_flags;\toffset:2;\tsize:1;\tsigned:0;\n\tfield:unsigned char
common_preempt_"..., size=1053, sys=0x640790 "kvm") at
/home/joe/qemu/trace/trace-cmd/parse-events.c:4626
#10 0x000000000042190a in read_event_file (handle=0x63a030,
system=0x640790 "kvm", size=1053, print=0) at
/home/joe/qemu/trace/trace-cmd/trace-input.c:386
#11 0x0000000000421a90 in read_event_files (handle=0x63a030, print=0) at
/home/joe/qemu/trace/trace-cmd/trace-input.c:450
#12 0x0000000000421cb3 in tracecmd_read_headers (handle=0x63a030) at
/home/joe/qemu/trace/trace-cmd/trace-input.c:539
#13 0x000000000040c6a5 in trace_report (argc=2, argv=0x7fffffffd9d8) at
/home/joe/qemu/trace/trace-cmd/trace-read.c:1025
#14 0x00000000004057e7 in main (argc=2, argv=0x7fffffffd9d8) at
/home/joe/qemu/trace/trace-cmd/trace-cmd.c:147
The decoding that follows is complete garbage, which is why I think it's
of no use to you (i.e. the insn= part just displays some random
undefined memory from the looks).
Therefore, I've uploaded the compressed trace.dat file, so you can maybe
have a look why the "report" tool barfs and interpret it correctly. I
can't figure it out. The trace is here:
http://spornkuller.de/trace.dat.bz2
The trace was generated with a buffer of 40000 (double of what was given
in the example), when it was lower I had overruns. This way I had none.
Also, to simulate a single cpu, I've run qemu with "-smp 1", hopefully
that's correct.
>> I even tried to completing the installation on my laptop (which works),
>> then copy the image back on my desktop PC: Same error.
>
> That should help the tracing effort.
Should I also generate a trace there and look for the corresponding
opcodes that fail on my main machine?
Best regards,
Joe
next prev parent reply other threads:[~2012-06-03 16:25 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-06-03 12:18 KVM entry failed, hardware error Johannes Bauer
2012-06-03 12:33 ` Avi Kivity
2012-06-03 13:01 ` Johannes Bauer
2012-06-03 13:43 ` Avi Kivity
2012-06-03 16:25 ` Johannes Bauer [this message]
2012-06-04 8:53 ` Gleb Natapov
2012-06-04 8:56 ` Avi Kivity
2012-06-04 18:28 ` Johannes Bauer
2012-06-04 18:32 ` Johannes Bauer
2012-06-05 13:59 ` David Ahern
2012-06-06 18:19 ` Johannes Bauer
2012-06-06 15:53 ` Avi Kivity
2012-06-06 18:07 ` Johannes Bauer
2012-06-07 7:12 ` Avi Kivity
2012-06-07 10:03 ` Johannes Bauer
2012-06-07 10:54 ` Avi Kivity
2012-06-07 14:52 ` Avi Kivity
2012-06-07 15:39 ` Johannes Bauer
2012-06-07 17:25 ` Avi Kivity
2012-06-07 19:14 ` Johannes Bauer
2012-06-10 15:19 ` Avi Kivity
2012-06-12 10:23 ` Johannes Bauer
2012-06-12 10:45 ` Avi Kivity
2012-06-07 19:46 ` Johannes Bauer
2012-06-07 19:54 ` Johannes Bauer
2012-06-03 13:04 ` Johannes Bauer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4FCB8FFD.4020705@gmx.de \
--to=dfnsonfsduifb@gmx.de \
--cc=avi@redhat.com \
--cc=gleb@redhat.com \
--cc=kvm@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.