VirtualBox

Changeset 32392 in vbox for trunk/src/VBox/VMM


Ignore:
Timestamp:
Sep 10, 2010 12:06:31 PM (14 years ago)
Author:
vboxsync
Message:

pgm pool update for 32-bit dirty page handling

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMAll/PGMAllPool.cpp

    r32390 r32392  
    14261426    PVM      pVM        = pPool->CTX_SUFF(pVM);
    14271427
     1428    if ((pPage->GCPhys & PAGE_OFFSET_MASK) == 0x800)
     1429    {
     1430        /* Go to the 2nd half of the 32-bit PT. */
     1431        pGstPT = (PCX86PT)&pGstPT->a[512];
     1432    }
     1433
    14281434#ifdef VBOX_STRICT
    14291435    for (unsigned i = 0; i < RT_MIN(RT_ELEMENTS(pShwPT->a), pPage->iFirstPresent); i++)
     
    15611567    unsigned cChanged = 0;
    15621568
     1569    if ((pPage->GCPhys & PAGE_OFFSET_MASK) == 0x800)
     1570    {
     1571        /* Go to the 2nd half of the 32-bit PT. */
     1572        pGstPT    = (PCX86PT)&pGstPT->a[512];
     1573        pOldGstPT = (PCX86PT)&pOldGstPT->a[512];
     1574    }
    15631575#ifdef VBOX_STRICT
    15641576    for (unsigned i = 0; i < RT_MIN(RT_ELEMENTS(pShwPT->a), pPage->iFirstPresent); i++)
     
    17441756     */
    17451757    void *pvGst;
    1746     int   rc  = PGM_GCPHYS_2_PTR(pVM, pPage->GCPhys, &pvGst); AssertReleaseRC(rc);
     1758    int   rc  = PGM_GCPHYS_2_PTR(pVM, pPage->GCPhys & PAGE_BASE_GC_MASK, &pvGst); AssertReleaseRC(rc);
    17471759    memcpy(&pPool->aDirtyPages[idxFree].aPage[0], pvGst, PAGE_SIZE);
    17481760#ifdef VBOX_STRICT
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