• J
    KVM: VMX: Reinject real mode exception · 77ab6db0
    Jan Kiszka 提交于
    As we execute real mode guests in VM86 mode, exception have to be
    reinjected appropriately when the guest triggered them. For this purpose
    the patch adopts the real-mode injection pattern used in vmx_inject_irq
    to vmx_queue_exception, additionally taking care that the IP is set
    correctly for #BP exceptions. Furthermore it extends
    handle_rmode_exception to reinject all those exceptions that can be
    raised in real mode.
    
    This fixes the execution of himem.exe from FreeDOS and also makes its
    debug.com work properly.
    
    Note that guest debugging in real mode is broken now. This has to be
    fixed by the scheduled debugging infrastructure rework (will be done
    once base patches for QEMU have been accepted).
    Signed-off-by: NJan Kiszka <jan.kiszka@web.de>
    Signed-off-by: NAvi Kivity <avi@qumranet.com>
    77ab6db0
vmx.c 85.9 KB