VirtualBox

Changeset 92117 in vbox for trunk/src/VBox/VMM/VMMR3


Ignore:
Timestamp:
Oct 28, 2021 12:23:50 AM (3 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
147936
Message:

VMM/PGMPhys: Fixed assertion during ROM reset in simple memory mode. bugref:10122

File:
1 edited

Legend:

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

    r92006 r92117  
    46214621            for (uint32_t iPage = 0; iPage < cPages && cbSrcLeft > 0; iPage++, pbSrcPage += PAGE_SIZE)
    46224622            {
    4623                 const RTGCPHYS GCPhys = pRom->GCPhys + (iPage << PAGE_SHIFT);
    4624                 void const *pvDstPage;
    4625                 int rc = pgmPhysPageMapReadOnly(pVM, &pRom->aPages[iPage].Virgin, GCPhys, &pvDstPage);
     4623                const RTGCPHYS GCPhys    = pRom->GCPhys + (iPage << PAGE_SHIFT);
     4624                PPGMPAGE const pPage     = pgmPhysGetPage(pVM, GCPhys);
     4625                void const    *pvDstPage = NULL;
     4626                int rc = pgmPhysPageMapReadOnly(pVM, pPage, GCPhys, &pvDstPage);
    46264627                if (RT_FAILURE(rc))
    46274628                    break;
     
    46314632                    if (pVM->pgm.s.fRestoreRomPagesOnReset)
    46324633                    {
    4633                         void *pvDstPageW;
    4634                         rc = pgmPhysPageMap(pVM, &pRom->aPages[iPage].Virgin, GCPhys, &pvDstPageW);
     4634                        void *pvDstPageW = NULL;
     4635                        rc = pgmPhysPageMap(pVM, pPage, GCPhys, &pvDstPageW);
    46354636                        AssertLogRelRCReturn(rc, rc);
    46364637                        memcpy(pvDstPageW, pbSrcPage, RT_MIN(cbSrcLeft, PAGE_SIZE));
Note: See TracChangeset for help on using the changeset viewer.

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