VirtualBox

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


Ignore:
Timestamp:
Nov 25, 2008 9:04:12 PM (16 years ago)
Author:
vboxsync
Message:

MMHyper: Fixed VM::mm.s.pHyperHeapR0.

File:
1 edited

Legend:

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

    r14597 r14601  
    4343static DECLCALLBACK(bool) mmR3HyperRelocateCallback(PVM pVM, RTGCPTR GCPtrOld, RTGCPTR GCPtrNew, PGMRELOCATECALL enmMode, void *pvUser);
    4444static int mmR3HyperMap(PVM pVM, const size_t cb, const char *pszDesc, PRTGCPTR pGCPtr, PMMLOOKUPHYPER *ppLookup);
    45 static int mmR3HyperHeapCreate(PVM pVM, const size_t cb, PMMHYPERHEAP *ppHeap);
     45static int mmR3HyperHeapCreate(PVM pVM, const size_t cb, PMMHYPERHEAP *ppHeap, PRTR0PTR pR0PtrHeap);
    4646static int mmR3HyperHeapMap(PVM pVM, PMMHYPERHEAP pHeap, PRTGCPTR ppHeapGC);
    4747static DECLCALLBACK(void) mmR3HyperInfoHma(PVM pVM, PCDBGFINFOHLP pHlp, const char *pszArgs);
     
    9292     * hypervisor static area because lookup records are allocated from it.)
    9393     */
    94     rc = mmR3HyperHeapCreate(pVM, cbHyperHeap, &pVM->mm.s.pHyperHeapR3);
     94    rc = mmR3HyperHeapCreate(pVM, cbHyperHeap, &pVM->mm.s.pHyperHeapR3, &pVM->mm.s.pHyperHeapR0);
    9595    if (RT_SUCCESS(rc))
    9696    {
    97         pVM->mm.s.pHyperHeapR0 = (uintptr_t)pVM->mm.s.pHyperHeapR3; /** @todo #1865: map into ring-0 / whatever. */
    98 
    9997        /*
    10098         * Make a small head fence to fend of accidental sequential access.
     
    699697 *
    700698 * @returns VBox status code.
    701  * @param   pVM     The VM handle.
    702  * @param   cb      The size of the new heap.
    703  * @param   ppHeap  Where to store the heap pointer on successful return.
    704  */
    705 static int mmR3HyperHeapCreate(PVM pVM, const size_t cb, PMMHYPERHEAP *ppHeap)
     699 * @param   pVM         The VM handle.
     700 * @param   cb          The size of the new heap.
     701 * @param   ppHeap      Where to store the heap pointer on successful return.
     702 * @param   pR0PtrHeap  Where to store the ring-0 address of the heap on
     703 *                      success.
     704 */
     705static int mmR3HyperHeapCreate(PVM pVM, const size_t cb, PMMHYPERHEAP *ppHeap, PRTR0PTR pR0PtrHeap)
    706706{
    707707    /*
     
    758758
    759759        *ppHeap = pHeap;
     760        *pR0PtrHeap = pvR0;
    760761        return VINF_SUCCESS;
    761762    }
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