Changeset 9222 in vbox for trunk/src/VBox
- Timestamp:
- May 29, 2008 1:31:12 PM (17 years ago)
- Location:
- trunk/src/VBox/VMM
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/SELM.cpp
r8155 r9222 422 422 #endif 423 423 #ifdef SELM_TRACK_SHADOW_TSS_CHANGES 424 if (pVM->selm.s.GCPtrTss != ~0 U)424 if (pVM->selm.s.GCPtrTss != ~0) 425 425 { 426 426 rc = PGMHandlerVirtualDeregister(pVM, pVM->selm.s.GCPtrTss); … … 438 438 */ 439 439 #ifdef SELM_TRACK_SHADOW_LDT_CHANGES 440 if (pVM->selm.s.GCPtrLdt != ~0 U)440 if (pVM->selm.s.GCPtrLdt != ~0) 441 441 { 442 442 rc = PGMHandlerVirtualDeregister(pVM, pVM->selm.s.GCPtrLdt); … … 502 502 int rc; 503 503 #ifdef SELM_TRACK_GUEST_GDT_CHANGES 504 if (pVM->selm.s.GuestGdtr.pGdt != ~0 U&& pVM->selm.s.fGDTRangeRegistered)504 if (pVM->selm.s.GuestGdtr.pGdt != ~0 && pVM->selm.s.fGDTRangeRegistered) 505 505 { 506 506 rc = PGMHandlerVirtualDeregister(pVM, pVM->selm.s.GuestGdtr.pGdt); 507 507 AssertRC(rc); 508 pVM->selm.s.GuestGdtr.pGdt = ~0 U;508 pVM->selm.s.GuestGdtr.pGdt = ~0; 509 509 pVM->selm.s.GuestGdtr.cbGdt = 0; 510 510 } … … 512 512 #endif 513 513 #ifdef SELM_TRACK_GUEST_LDT_CHANGES 514 if (pVM->selm.s.GCPtrGuestLdt != ~0 U)514 if (pVM->selm.s.GCPtrGuestLdt != ~0) 515 515 { 516 516 rc = PGMHandlerVirtualDeregister(pVM, pVM->selm.s.GCPtrGuestLdt); 517 517 AssertRC(rc); 518 pVM->selm.s.GCPtrGuestLdt = ~0 U;518 pVM->selm.s.GCPtrGuestLdt = ~0; 519 519 } 520 520 #endif 521 521 #ifdef SELM_TRACK_GUEST_TSS_CHANGES 522 if (pVM->selm.s.GCPtrGuestTss != ~0 U)522 if (pVM->selm.s.GCPtrGuestTss != ~0) 523 523 { 524 524 rc = PGMHandlerVirtualDeregister(pVM, pVM->selm.s.GCPtrGuestTss); 525 525 AssertRC(rc); 526 pVM->selm.s.GCPtrGuestTss = ~0 U;526 pVM->selm.s.GCPtrGuestTss = ~0; 527 527 pVM->selm.s.GCSelTss = ~0; 528 528 } … … 558 558 int rc; 559 559 #ifdef SELM_TRACK_GUEST_GDT_CHANGES 560 if (pVM->selm.s.GuestGdtr.pGdt != ~0 U&& pVM->selm.s.fGDTRangeRegistered)560 if (pVM->selm.s.GuestGdtr.pGdt != ~0 && pVM->selm.s.fGDTRangeRegistered) 561 561 { 562 562 rc = PGMHandlerVirtualDeregister(pVM, pVM->selm.s.GuestGdtr.pGdt); 563 563 AssertRC(rc); 564 pVM->selm.s.GuestGdtr.pGdt = ~0 U;564 pVM->selm.s.GuestGdtr.pGdt = ~0; 565 565 pVM->selm.s.GuestGdtr.cbGdt = 0; 566 566 } … … 568 568 #endif 569 569 #ifdef SELM_TRACK_GUEST_LDT_CHANGES 570 if (pVM->selm.s.GCPtrGuestLdt != ~0 U)570 if (pVM->selm.s.GCPtrGuestLdt != ~0) 571 571 { 572 572 rc = PGMHandlerVirtualDeregister(pVM, pVM->selm.s.GCPtrGuestLdt); 573 573 AssertRC(rc); 574 pVM->selm.s.GCPtrGuestLdt = ~0 U;574 pVM->selm.s.GCPtrGuestLdt = ~0; 575 575 } 576 576 #endif 577 577 #ifdef SELM_TRACK_GUEST_TSS_CHANGES 578 if (pVM->selm.s.GCPtrGuestTss != ~0 U)578 if (pVM->selm.s.GCPtrGuestTss != ~0) 579 579 { 580 580 rc = PGMHandlerVirtualDeregister(pVM, pVM->selm.s.GCPtrGuestTss); 581 581 AssertRC(rc); 582 pVM->selm.s.GCPtrGuestTss = ~0 U;582 pVM->selm.s.GCPtrGuestTss = ~0; 583 583 pVM->selm.s.GCSelTss = ~0; 584 584 } … … 597 597 #endif 598 598 #ifdef SELM_TRACK_SHADOW_TSS_CHANGES 599 if (pVM->selm.s.GCPtrTss != ~0 U)599 if (pVM->selm.s.GCPtrTss != ~0) 600 600 { 601 601 rc = PGMHandlerVirtualDeregister(pVM, pVM->selm.s.GCPtrTss); 602 602 AssertRC(rc); 603 pVM->selm.s.GCPtrTss = ~0 U;603 pVM->selm.s.GCPtrTss = ~0; 604 604 } 605 605 #endif 606 606 #ifdef SELM_TRACK_SHADOW_LDT_CHANGES 607 if (pVM->selm.s.GCPtrLdt != ~0 U)607 if (pVM->selm.s.GCPtrLdt != ~0) 608 608 { 609 609 rc = PGMHandlerVirtualDeregister(pVM, pVM->selm.s.GCPtrLdt); 610 610 AssertRC(rc); 611 pVM->selm.s.GCPtrLdt = ~0 U;611 pVM->selm.s.GCPtrLdt = ~0; 612 612 } 613 613 #endif … … 1011 1011 * [Re]Register write virtual handler for guest's GDT. 1012 1012 */ 1013 if (pVM->selm.s.GuestGdtr.pGdt != ~0 U&& pVM->selm.s.fGDTRangeRegistered)1013 if (pVM->selm.s.GuestGdtr.pGdt != ~0 && pVM->selm.s.fGDTRangeRegistered) 1014 1014 { 1015 1015 rc = PGMHandlerVirtualDeregister(pVM, pVM->selm.s.GuestGdtr.pGdt); … … 1068 1068 CPUMSetHyperLDTR(pVM, 0); 1069 1069 #ifdef SELM_TRACK_GUEST_LDT_CHANGES 1070 if (pVM->selm.s.GCPtrGuestLdt != ~0 U)1070 if (pVM->selm.s.GCPtrGuestLdt != ~0) 1071 1071 { 1072 1072 rc = PGMHandlerVirtualDeregister(pVM, pVM->selm.s.GCPtrGuestLdt); 1073 1073 AssertRC(rc); 1074 pVM->selm.s.GCPtrGuestLdt = ~0 U;1074 pVM->selm.s.GCPtrGuestLdt = ~0; 1075 1075 } 1076 1076 #endif … … 1104 1104 CPUMSetHyperLDTR(pVM, 0); 1105 1105 #ifdef SELM_TRACK_GUEST_LDT_CHANGES 1106 if (pVM->selm.s.GCPtrGuestLdt != ~0 U)1106 if (pVM->selm.s.GCPtrGuestLdt != ~0) 1107 1107 { 1108 1108 rc = PGMHandlerVirtualDeregister(pVM, pVM->selm.s.GCPtrGuestLdt); 1109 1109 AssertRC(rc); 1110 pVM->selm.s.GCPtrGuestLdt = ~0 U;1110 pVM->selm.s.GCPtrGuestLdt = ~0; 1111 1111 } 1112 1112 #endif … … 1142 1142 * In the event of LDT overlapping something, don't install it just assume it's being updated. 1143 1143 */ 1144 if (pVM->selm.s.GCPtrGuestLdt != ~0 U)1144 if (pVM->selm.s.GCPtrGuestLdt != ~0) 1145 1145 { 1146 1146 rc = PGMHandlerVirtualDeregister(pVM, pVM->selm.s.GCPtrGuestLdt); … … 1473 1473 * [Re]Register write virtual handler for guest's TSS. 1474 1474 */ 1475 if (pVM->selm.s.GCPtrGuestTss != ~0 U)1475 if (pVM->selm.s.GCPtrGuestTss != ~0) 1476 1476 { 1477 1477 rc = PGMHandlerVirtualDeregister(pVM, pVM->selm.s.GCPtrGuestTss); -
trunk/src/VBox/VMM/SELMInternal.h
r9216 r9222 122 122 123 123 /** GC Pointer to the TSS shadow area (Tss) placed in Hypervisor memory arena. */ 124 R TGCPTRGCPtrTss;124 RCPTRTYPE(void *) GCPtrTss; 125 125 /** GC Pointer to the current Guest's TSS. */ 126 126 RTGCPTR GCPtrGuestTss; -
trunk/src/VBox/VMM/TRPM.cpp
r9148 r9222 618 618 { 619 619 #ifdef TRPM_TRACK_SHADOW_IDT_CHANGES 620 if (pVM->trpm.s.GCPtrIdt != ~0 U)620 if (pVM->trpm.s.GCPtrIdt != ~0) 621 621 { 622 622 rc = PGMHandlerVirtualDeregister(pVM, pVM->trpm.s.GCPtrIdt); … … 685 685 */ 686 686 #ifdef TRPM_TRACK_GUEST_IDT_CHANGES 687 if (pVM->trpm.s.GuestIdtr.pIdt != ~0 U)687 if (pVM->trpm.s.GuestIdtr.pIdt != ~0) 688 688 { 689 689 if (!pVM->trpm.s.fSafeToDropGuestIDTMonitoring) … … 692 692 AssertRC(rc); 693 693 } 694 pVM->trpm.s.GuestIdtr.pIdt = ~0 U;694 pVM->trpm.s.GuestIdtr.pIdt = ~0; 695 695 } 696 696 pVM->trpm.s.GuestIdtr.cbIdt = 0; … … 924 924 * [Re]Register write virtual handler for guest's IDT. 925 925 */ 926 if (pVM->trpm.s.GuestIdtr.pIdt != ~0 U)926 if (pVM->trpm.s.GuestIdtr.pIdt != ~0) 927 927 { 928 928 rc = PGMHandlerVirtualDeregister(pVM, pVM->trpm.s.GuestIdtr.pIdt); … … 989 989 */ 990 990 #ifdef TRPM_TRACK_GUEST_IDT_CHANGES 991 if (pVM->trpm.s.GuestIdtr.pIdt != ~0 U)991 if (pVM->trpm.s.GuestIdtr.pIdt != ~0) 992 992 { 993 993 if (!pVM->trpm.s.fSafeToDropGuestIDTMonitoring) … … 996 996 AssertRC(rc); 997 997 } 998 pVM->trpm.s.GuestIdtr.pIdt = ~0 U;998 pVM->trpm.s.GuestIdtr.pIdt = ~0; 999 999 } 1000 1000 pVM->trpm.s.GuestIdtr.cbIdt = 0; … … 1002 1002 1003 1003 #ifdef TRPM_TRACK_SHADOW_IDT_CHANGES 1004 if (pVM->trpm.s.GCPtrIdt != ~0 U)1004 if (pVM->trpm.s.GCPtrIdt != ~0) 1005 1005 { 1006 1006 int rc = PGMHandlerVirtualDeregister(pVM, pVM->trpm.s.GCPtrIdt); 1007 1007 AssertRC(rc); 1008 pVM->trpm.s.GCPtrIdt = ~0 U;1008 pVM->trpm.s.GCPtrIdt = ~0; 1009 1009 } 1010 1010 #endif
Note:
See TracChangeset
for help on using the changeset viewer.