VirtualBox

Changeset 10280 in vbox for trunk/src/VBox/VMM/VMMAll


Ignore:
Timestamp:
Jul 5, 2008 3:06:42 PM (16 years ago)
Author:
vboxsync
Message:

No need for tracking user pages when guest paging is disabled.

Location:
trunk/src/VBox/VMM/VMMAll
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMAll/PGMAllBth.h

    r10270 r10280  
    6565#ifdef IN_RING0 /* no mappings in VT-x and AMD-V mode */
    6666# define PGM_WITHOUT_MAPPINGS
     67#endif
     68
     69/* There's no need for tracking physical pages when there's no guest paging involved. */
     70#if !PGM_WITH_PAGING(PGM_GST_TYPE)
     71#undef PGMPOOL_WITH_USER_TRACKING
    6772#endif
    6873
  • trunk/src/VBox/VMM/VMMAll/PGMAllPool.cpp

    r10279 r10280  
    31583158        }
    31593159
    3160         case PGMPOOLKIND_32BIT_PT_FOR_PHYS: /* treat it like a 4 MB page */
    31613160        case PGMPOOLKIND_32BIT_PT_FOR_32BIT_4MB:
    31623161        {
     
    31673166        }
    31683167
    3169         case PGMPOOLKIND_PAE_PT_FOR_PHYS:   /* treat it like a 4 MB page */
    31703168        case PGMPOOLKIND_PAE_PT_FOR_PAE_2MB:
    31713169        case PGMPOOLKIND_PAE_PT_FOR_32BIT_4MB:
     
    31843182        case PGMPOOLKIND_PAE_PT_FOR_PAE_2MB:
    31853183        case PGMPOOLKIND_PAE_PT_FOR_32BIT_4MB:
    3186         case PGMPOOLKIND_32BIT_PT_FOR_PHYS:
    3187         case PGMPOOLKIND_PAE_PT_FOR_PHYS:
    31883184            break;
    31893185#endif /* !PGMPOOL_WITH_GCPHYS_TRACKING */
     
    31923188        case PGMPOOLKIND_PAE_PD_FOR_PAE_PD:
    31933189        case PGMPOOLKIND_64BIT_PD_FOR_64BIT_PD:
    3194         case PGMPOOLKIND_64BIT_PD_FOR_PHYS:
    31953190            pgmPoolTrackDerefPDPae(pPool, pPage, (PX86PDPAE)pvShw);
    31963191            break;
    31973192
    3198         case PGMPOOLKIND_64BIT_PDPT_FOR_PHYS:
    31993193        case PGMPOOLKIND_64BIT_PDPT_FOR_64BIT_PDPT:
    32003194            pgmPoolTrackDerefPDPT64Bit(pPool, pPage, (PX86PDPT)pvShw);
     
    32033197        case PGMPOOLKIND_64BIT_PML4_FOR_64BIT_PML4:
    32043198            pgmPoolTrackDerefPML464Bit(pPool, pPage, (PX86PML4)pvShw);
     3199            break;
     3200
     3201        case PGMPOOLKIND_64BIT_PD_FOR_PHYS:
     3202        case PGMPOOLKIND_64BIT_PDPT_FOR_PHYS:
     3203        case PGMPOOLKIND_PAE_PT_FOR_PHYS:
     3204        case PGMPOOLKIND_32BIT_PT_FOR_PHYS:
     3205            /* No tracking here. */
    32053206            break;
    32063207
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