VirtualBox

Changeset 32038 in vbox for trunk/src


Ignore:
Timestamp:
Aug 27, 2010 10:56:44 AM (14 years ago)
Author:
vboxsync
Message:

PGMAllPool.cpp: Use ASMAtomicWriteU32/U64 instead of ASMAtomicWriteSize.

File:
1 edited

Legend:

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

    r32036 r32038  
    215215                                               GstPte.u & X86_PTE_PG_MASK,
    216216                                               iShw);
    217                     ASMAtomicWriteSize(&uShw.pPT->a[iShw], 0);
     217                    ASMAtomicWriteU32(&uShw.pPT->a[iShw].u, 0);
    218218                }
    219219                break;
     
    279279                                        pPage->idx,
    280280                                        iShw + i);
    281                             ASMAtomicWriteSize(&uShw.pPDPae->a[iShw+i], 0);
     281                            ASMAtomicWriteU64(&uShw.pPDPae->a[iShw+i].u, 0);
    282282                        }
    283283
     
    306306                                                pPage->idx,
    307307                                                iShw2);
    308                                     ASMAtomicWriteSize(&uShw.pPDPae->a[iShw2].u, 0);
     308                                    ASMAtomicWriteU64(&uShw.pPDPae->a[iShw2].u, 0);
    309309                                }
    310310                            }
     
    389389                                    pPage->idx,
    390390                                    iShw);
    391                         ASMAtomicWriteSize(&uShw.pPD->a[iShw].u, 0);
     391                        ASMAtomicWriteU32(&uShw.pPD->a[iShw].u, 0);
    392392                    }
    393393                }
     
    421421                                            pPage->idx,
    422422                                            iShw2);
    423                                 ASMAtomicWriteSize(&uShw.pPD->a[iShw2].u, 0);
     423                                ASMAtomicWriteU32(&uShw.pPD->a[iShw2].u, 0);
    424424                            }
    425425                        }
     
    435435# endif
    436436                    pgmPoolFree(pVM, uShw.pPD->a[iShw].u & X86_PDE_PG_MASK, pPage->idx, iShw);
    437                     ASMAtomicWriteSize(&uShw.pPD->a[iShw].u, 0);
     437                    ASMAtomicWriteU32(&uShw.pPD->a[iShw].u, 0);
    438438                }
    439439#endif
     
    472472                                    pPage->idx,
    473473                                    iShw);
    474                         ASMAtomicWriteSize(&uShw.pPDPae->a[iShw].u, 0);
     474                        ASMAtomicWriteU64(&uShw.pPDPae->a[iShw].u, 0);
    475475                    }
    476476                }
     
    503503                                    pPage->idx,
    504504                                    iShw2);
    505                         ASMAtomicWriteSize(&uShw.pPDPae->a[iShw2].u, 0);
     505                        ASMAtomicWriteU64(&uShw.pPDPae->a[iShw2].u, 0);
    506506                    }
    507507                }
     
    544544                                    pPage->idx,
    545545                                    iShw);
    546                         ASMAtomicWriteSize(&uShw.pPDPT->a[iShw].u, 0);
     546                        ASMAtomicWriteU64(&uShw.pPDPT->a[iShw].u, 0);
    547547                    }
    548548
     
    575575                                            pPage->idx,
    576576                                            iShw2);
    577                                 ASMAtomicWriteSize(&uShw.pPDPT->a[iShw2].u, 0);
     577                                ASMAtomicWriteU64(&uShw.pPDPT->a[iShw2].u, 0);
    578578                            }
    579579                        }
     
    597597                                pPage->idx,
    598598                                iShw);
    599                     ASMAtomicWriteSize(&uShw.pPDPae->a[iShw].u, 0);
     599                    ASMAtomicWriteU64(&uShw.pPDPae->a[iShw].u, 0);
    600600                }
    601601                /* paranoia / a bit assumptive. */
     
    614614                                    pPage->idx,
    615615                                    iShw2);
    616                         ASMAtomicWriteSize(&uShw.pPDPae->a[iShw2].u, 0);
     616                        ASMAtomicWriteU64(&uShw.pPDPae->a[iShw2].u, 0);
    617617                    }
    618618                }
     
    633633                    LogFlow(("pgmPoolMonitorChainChanging: pdpt iShw=%#x: %RX64 -> freeing it!\n", iShw, uShw.pPDPT->a[iShw].u));
    634634                    pgmPoolFree(pVM, uShw.pPDPT->a[iShw].u & X86_PDPE_PG_MASK, pPage->idx, iShw);
    635                     ASMAtomicWriteSize(&uShw.pPDPT->a[iShw].u, 0);
     635                    ASMAtomicWriteU64(&uShw.pPDPT->a[iShw].u, 0);
    636636                }
    637637                /* paranoia / a bit assumptive. */
     
    644644                        LogFlow(("pgmPoolMonitorChainChanging: pdpt iShw2=%#x: %RX64 -> freeing it!\n", iShw2, uShw.pPDPT->a[iShw2].u));
    645645                        pgmPoolFree(pVM, uShw.pPDPT->a[iShw2].u & X86_PDPE_PG_MASK, pPage->idx, iShw2);
    646                         ASMAtomicWriteSize(&uShw.pPDPT->a[iShw2].u, 0);
     646                        ASMAtomicWriteU64(&uShw.pPDPT->a[iShw2].u, 0);
    647647                    }
    648648                }
     
    663663                    LogFlow(("pgmPoolMonitorChainChanging: pml4 iShw=%#x: %RX64 -> freeing it!\n", iShw, uShw.pPML4->a[iShw].u));
    664664                    pgmPoolFree(pVM, uShw.pPML4->a[iShw].u & X86_PML4E_PG_MASK, pPage->idx, iShw);
    665                     ASMAtomicWriteSize(&uShw.pPML4->a[iShw].u, 0);
     665                    ASMAtomicWriteU64(&uShw.pPML4->a[iShw].u, 0);
    666666                }
    667667                /* paranoia / a bit assumptive. */
     
    674674                        LogFlow(("pgmPoolMonitorChainChanging: pml4 iShw2=%#x: %RX64 -> freeing it!\n", iShw2, uShw.pPML4->a[iShw2].u));
    675675                        pgmPoolFree(pVM, uShw.pPML4->a[iShw2].u & X86_PML4E_PG_MASK, pPage->idx, iShw2);
    676                         ASMAtomicWriteSize(&uShw.pPML4->a[iShw2].u, 0);
     676                        ASMAtomicWriteU64(&uShw.pPML4->a[iShw2].u, 0);
    677677                    }
    678678                }
     
    30053005                    Pte.n.u1Write = 0;    /* need to disallow writes when dirty bit tracking is still active. */
    30063006
    3007                 ASMAtomicWriteSize(&pPT->a[iPte].u, Pte.u);
     3007                ASMAtomicWriteU32(&pPT->a[iPte].u, Pte.u);
    30083008                PGM_DYNMAP_UNUSED_HINT_VM(pVM, pPT);
    30093009                return fRet;
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