Re: KVM entry failed, hardware error

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

 



On 07.06.2012 19:25, Avi Kivity wrote:

>> Note that "c" does NOT cause the VM to resume, only "info registers"
>> does. dmesg shows nothing out of the ordinary.
> 
> I'm guessing this is 5152902652.  Try bumping 'unsigned count = 130' (by
> adding zeros at the end, don't bother with anything less).  If you
> increase it too much qemu may hang; but kill -9 should unfreeze it.

Okay, here's more clues. They're not exactly meaningful for me, but
probably of interest to you.

Besides the "low count value after loop exit" value, I've introduced two
counters which both are incremented inside the loop. Also I've modified
the loop to be one return only (i.e. ret = foobar; goto out instead of
return).

Then when I have a script which continuously echos "info registers" and
pipe that output together with qemu, I get this startup:

2012-06-07 21:39:34 handle_invalid_guest_state: emulation left, new loop
low count 1295, total of 5 emulated insns
2012-06-07 21:39:34 handle_invalid_guest_state: emulation left, new loop
low count 1292, total of 13 emulated insns
2012-06-07 21:39:34 handle_invalid_guest_state: emulation left, 1293
iterations left, 100005 emulated insn, loop low count 1292
2012-06-07 21:39:34 handle_invalid_guest_state: emulation left, new loop
low count 1291, total of 131214 emulated insns
2012-06-07 21:39:34 handle_invalid_guest_state: emulation left, new loop
low count 1245, total of 131269 emulated insns
2012-06-07 21:39:35 handle_invalid_guest_state: emulation left, 1299
iterations left, 200005 emulated insn, loop low count 1245
2012-06-07 21:39:35 handle_invalid_guest_state: emulation left, 1245
iterations left, 300012 emulated insn, loop low count 1245
2012-06-07 21:39:35 handle_invalid_guest_state: emulation left, 1291
iterations left, 400013 emulated insn, loop low count 1245
2012-06-07 21:39:35 handle_invalid_guest_state: emulation left, 1245
iterations left, 500050 emulated insn, loop low count 1245
2012-06-07 21:39:35 handle_invalid_guest_state: emulation left, 1245
iterations left, 600059 emulated insn, loop low count 1245
2012-06-07 21:39:35 handle_invalid_guest_state: emulation left, 1299
iterations left, 700059 emulated insn, loop low count 1245
2012-06-07 21:39:35 handle_invalid_guest_state: emulation left, 1299
iterations left, 800059 emulated insn, loop low count 1245
2012-06-07 21:39:36 handle_invalid_guest_state: emulation left, 1299
iterations left, 900059 emulated insn, loop low count 1245
2012-06-07 21:39:36 handle_invalid_guest_state: emulation left, 1299
iterations left, 1000059 emulated insn, loop low count 1245
2012-06-07 21:39:36 handle_invalid_guest_state: emulation left, new loop
low count 1228, total of 1030349 emulated insns
2012-06-07 21:39:36 handle_invalid_guest_state: emulation left, 1291
iterations left, 1100063 emulated insn, loop low count 1228
2012-06-07 21:39:36 handle_invalid_guest_state: emulation left, 1299
iterations left, 1200063 emulated insn, loop low count 1228
2012-06-07 21:39:36 handle_invalid_guest_state: emulation left, 1299
iterations left, 1300063 emulated insn, loop low count 1228
2012-06-07 21:39:36 handle_invalid_guest_state: emulation left, 1245
iterations left, 1400113 emulated insn, loop low count 1228
2012-06-07 21:39:37 handle_invalid_guest_state: emulation left, 1245
iterations left, 1500145 emulated insn, loop low count 1228

After which it has booted up and does not emulate anymore. Note the
maximum time spent in the loop is 72 iterations.

But when I just start up and do not issue ANY "info registers", I get
the following output:

2012-06-07 21:41:44 handle_invalid_guest_state: emulation left, new loop
low count 1295, total of 5 emulated insns
2012-06-07 21:41:44 handle_invalid_guest_state: emulation left, new loop
low count 1292, total of 13 emulated insns
2012-06-07 21:41:44 handle_invalid_guest_state: emulation left, 1293
iterations left, 100004 emulated insn, loop low count 1292
2012-06-07 21:41:44 handle_invalid_guest_state: emulation left, new loop
low count 1291, total of 131955 emulated insns
2012-06-07 21:41:44 handle_invalid_guest_state: emulation left, new loop
low count 1245, total of 132010 emulated insns
2012-06-07 21:41:44 handle_invalid_guest_state: emulation left, 1299
iterations left, 200004 emulated insn, loop low count 1245
2012-06-07 21:41:45 handle_invalid_guest_state: emulation left, 1299
iterations left, 300004 emulated insn, loop low count 1245
2012-06-07 21:41:45 handle_invalid_guest_state: emulation left, 1299
iterations left, 400004 emulated insn, loop low count 1245
2012-06-07 21:41:45 handle_invalid_guest_state: emulation left, 1299
iterations left, 500004 emulated insn, loop low count 1245
2012-06-07 21:41:45 handle_invalid_guest_state: emulation left, 1299
iterations left, 600004 emulated insn, loop low count 1245
2012-06-07 21:41:45 handle_invalid_guest_state: emulation left, 1299
iterations left, 700004 emulated insn, loop low count 1245
2012-06-07 21:41:45 handle_invalid_guest_state: emulation left, 1299
iterations left, 800004 emulated insn, loop low count 1245
2012-06-07 21:41:45 handle_invalid_guest_state: emulation left, 1299
iterations left, 900004 emulated insn, loop low count 1245
2012-06-07 21:41:45 handle_invalid_guest_state: emulation left, 1299
iterations left, 1000004 emulated insn, loop low count 1245
[...]
2012-06-07 21:42:12 handle_invalid_guest_state: emulation left, 1299
iterations left, 22800004 emulated insn, loop low count 1245
2012-06-07 21:42:12 handle_invalid_guest_state: emulation left, 1299
iterations left, 22900004 emulated insn, loop low count 1245
2012-06-07 21:42:12 handle_invalid_guest_state: emulation left, 1299
iterations left, 23000004 emulated insn, loop low count 1245

In an infinite loop. Which looks to be as if it is continuously exiting
after just one iteration (count at leave is 1299). Maybe I'll fiddle
some more and am able to provide some insight (probably you already know
what's going on, but it won't hurt I guess).

Best regards,
Joe
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux