VirtualBox

Changeset 27042 in vbox


Ignore:
Timestamp:
Mar 4, 2010 3:14:29 PM (15 years ago)
Author:
vboxsync
Message:

Do not replace pages part of a 2 MB continuous range with zero pages, but zero them instead.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/PGMPhys.cpp

    r27026 r27042  
    12991299                {
    13001300                    case PGMPAGETYPE_RAM:
    1301                         /* @todo deal with large pages. */
    1302                         Assert(PGM_PAGE_GET_PDE_TYPE(pPage) != PGM_PAGE_PDE_TYPE_PDE);
    1303 
     1301                        /* Do not replace pages part of a 2 MB continuous range with zero pages, but zero them instead. */
     1302                        if (PGM_PAGE_GET_PDE_TYPE(pPage) == PGM_PAGE_PDE_TYPE_PDE)
     1303                        {
     1304                            void *pvPage;
     1305                            rc = pgmPhysPageMap(pVM, pPage, pRam->GCPhys + ((RTGCPHYS)iPage << PAGE_SHIFT), &pvPage);
     1306                            AssertLogRelRCReturn(rc, rc);
     1307                            ASMMemZeroPage(pvPage);
     1308                        }
     1309                        else
    13041310                        if (!PGM_PAGE_IS_ZERO(pPage))
    13051311                        {
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