VirtualBox

Ignore:
Timestamp:
Apr 27, 2016 1:11:46 PM (9 years ago)
Author:
vboxsync
Message:

VMM: Fixed TPR thresholding and related PDM interfaces.
Cleaned up the PDM interface and merged apicHasPendingIrq with apicGetTpr.
Fixed raw-mode with the new APIC code due to busted GC mapping relocation.

This finally fixes the NT4 VM boot-up issue with the new APIC code.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMR0/HMSVMR0.cpp

    r60574 r60716  
    26702670            uint8_t u8Interrupt;
    26712671            int rc = PDMGetInterrupt(pVCpu, &u8Interrupt);
    2672             if (RT_SUCCESS(rc))
     2672            if (rc == VINF_SUCCESS)
    26732673            {
    26742674                Log4(("Injecting external interrupt u8Interrupt=%#x\n", u8Interrupt));
     
    26802680                hmR0SvmSetPendingEvent(pVCpu, &Event, 0 /* GCPtrFaultAddress */);
    26812681            }
     2682            else if (rc == VERR_APIC_INTR_MASKED_BY_TPR)
     2683            {
     2684                /*
     2685                 * AMD-V has no TPR thresholding feature. We just avoid posting the interrupt.
     2686                 * We just avoid delivering the TPR-masked interrupt here. TPR will be updated
     2687                 * always via hmR0SvmLoadGuestState() -> hmR0SvmLoadGuestApicState().
     2688                 */
     2689                Assert(!VMCPU_FF_IS_PENDING(pVCpu, (VMCPU_FF_INTERRUPT_APIC)));
     2690            }
    26822691            else
    26832692            {
    2684                 /* This can happen with the new APIC code. */
    2685 #ifndef VBOX_WITH_NEW_APIC
    26862693                Assert(!VMCPU_FF_IS_PENDING(pVCpu, (VMCPU_FF_INTERRUPT_APIC | VMCPU_FF_INTERRUPT_PIC)));
    2687 #endif
    26882694                STAM_COUNTER_INC(&pVCpu->hm.s.StatSwitchGuestIrq);
    26892695            }
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette