Bug 58931 - SMP x64 Windows 2003 guest can't boot up
Summary: SMP x64 Windows 2003 guest can't boot up
Status: CLOSED CODE_FIX
Alias: None
Product: Virtualization
Classification: Unclassified
Component: kvm (show other bugs)
Hardware: All Linux
: P1 normal
Assignee: virtualization_kvm
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-05-29 03:06 UTC by Jay Ren
Modified: 2013-07-01 08:46 UTC (History)
0 users

See Also:
Kernel Version: 3.10.0-rc1
Subsystem:
Regression: Yes
Bisected commit-id:


Attachments

Description Jay Ren 2013-05-29 03:06:23 UTC
Environment:
------------
Host OS (ia32/ia32e/IA64):ia32e
Guest OS (ia32/ia32e/IA64):ia32e
Guest OS Type (Linux/Windows):Windows
kvm.git next Commit:e47a5f5fb715b90b40747e9e235de557c6abd56c
qemu-kvm Commit:b5803aa3583e82e5133f7621121bc15ee694f4a1
Host Kernel Version:3.10.0-rc1
Hardware: SandyBridge / IvyBridge

Bug detailed description:
--------------------------
SMP 64bit Windows 2003 can't boot up as a KVM guest.

note: 
1.win2k8/win7/win8/win2012/rhel6u4 guest can boot up fine
2.UP 64bit win2k3 guest (1 vCPU)can boot up fine.
3.32bit(PAE) win2k3 guest with 2 vCPUs can boot up fine.

This should be a kvm kernel bug.
kvm next + qemu-kvm   = result
f722406f + b5803aa3   = good
e47a5f5f + b5803aa3   = bad

Reproduce steps:
----------------
1.start up a host with KVM enabled
2. qemu-system-x86_64 -enable-kvm -m 1024 -smp 2 -net none win2k3-x64.img

Current result:
----------------
SMP 64bit win2k3 guest boot up fail

Expected result:
----------------
SMP 64bit win2k3 guest boot up fine
Comment 1 Jay Ren 2013-06-06 15:40:58 UTC
After bisection, we found the first bad commit is:

f1ed0450a5fac7067590317cbf027f566b6ccbca
commit f1ed0450a5fac7067590317cbf027f566b6ccbca
Author: Jan Kiszka <jan.kiszka@siemens.com>
Date:   Sun Apr 28 14:00:41 2013 +0200

    KVM: x86: Remove support for reporting coalesced APIC IRQs


Gleb and Jan are trying to fix it.
Comment 2 Jay Ren 2013-07-01 08:45:51 UTC
The following commit fixed this bug:

commit 24f7bb52e952912b6a936ebcdc4e744b03e9e5cf
Author: Gleb Natapov <gleb@redhat.com>
Date:   Mon Jun 24 15:19:15 2013 +0300

    KVM: Fix RTC interrupt coalescing tracking

    This reverts most of the f1ed0450a5fac7067590317cbf027f566b6ccbca. After
    the commit kvm_apic_set_irq() no longer returns accurate information
    about interrupt injection status if injection is done into disabled
    APIC. RTC interrupt coalescing tracking relies on the information to be
    accurate and cannot recover if it is not.

    Signed-off-by: Gleb Natapov <gleb@redhat.com>

Note You need to log in before you can comment on or make changes to this bug.