[patch 0/3] partially fix Windows reboot-via-triple-fault

Marcelo Tosatti
2008-07-16T22:18:34Z

The following patchset fixes task switch problems seen on installation
of SMP Windows (2000, 2003 and supposedly XP).

Windows 2003 reboots fine, but crashes during initialization (separate
problem though, also happens with UP installation or with new qemu-kvm
instance). XP not tested yet.

Windows 2000 is now able to reboot, but crashes early after initialization:

(triple fault generated, reboot)

SIPI to vcpu 1 vector 0x10
SIPI to vcpu 2 vector 0x10
SIPI to vcpu 3 vector 0x10
handle_exception: unexpected, vectoring info 0x80000202 intr info 0x80000b0d
handle_exception: unexpected, vectoring info 0x80000202 intr info 0x80000b0d
pending exception: not handled yet
pending exception: not handled yet

The task switch is initiated via task-gate-on-IDT from an NMI interrupt,
so apparently some state is not properly cleanup up. Ideas?

Anyway, this changes are supposed to be a step in the right direction.

--