VirtualBox

Ignore:
Timestamp:
Sep 30, 2021 12:06:31 AM (4 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
147165
Message:

IPRT/memobj: Passing pszTag around...

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Runtime/r0drv/darwin/memobj-r0drv-darwin.cpp

    r91480 r91481  
    9898    RTR0MEMOBJTYPE          enmType;
    9999    size_t                  uAlignment;
     100    const char             *pszTag;
    100101} RTR0MEMOBJDARWINALLOCARGS;
    101102
     
    555556 * @param   enmType         The object type.
    556557 * @param   uAlignment      The allocation alignment (in bytes).
     558 * @param   pszTag          Allocation tag used for statistics and such.
    557559 * @param   fOnKernelThread Set if we're already on the kernel thread.
    558560 */
     
    560562                                       bool fExecutable, bool fContiguous,
    561563                                       mach_vm_address_t PhysMask, uint64_t MaxPhysAddr,
    562                                        RTR0MEMOBJTYPE enmType, size_t uAlignment, bool fOnKernelThread)
     564                                       RTR0MEMOBJTYPE enmType, size_t uAlignment, const char *pszTag, bool fOnKernelThread)
    563565{
    564566    int rc;
     
    591593        Args.enmType        = enmType;
    592594        Args.uAlignment     = uAlignment;
     595        Args.pszTag         = pszTag;
    593596        return rtR0MemObjDarwinDoInKernelTaskThread(rtR0MemObjNativeAllockWorkerOnKernelThread, &Args.Core);
    594597    }
     
    738741                 * Create the IPRT memory object.
    739742                 */
    740                 PRTR0MEMOBJDARWIN pMemDarwin = (PRTR0MEMOBJDARWIN)rtR0MemObjNew(sizeof(*pMemDarwin), enmType, pv, cb, NULL);
     743                PRTR0MEMOBJDARWIN pMemDarwin = (PRTR0MEMOBJDARWIN)rtR0MemObjNew(sizeof(*pMemDarwin), enmType, pv, cb, pszTag);
    741744                if (pMemDarwin)
    742745                {
     
    821824    RTR0MEMOBJDARWINALLOCARGS volatile *pArgs = (RTR0MEMOBJDARWINALLOCARGS volatile *)pvUser0;
    822825    int rc = rtR0MemObjNativeAllocWorker(pArgs->ppMem, pArgs->cb, pArgs->fExecutable, pArgs->fContiguous, pArgs->PhysMask,
    823                                          pArgs->MaxPhysAddr, pArgs->enmType, pArgs->uAlignment, true /*fOnKernelThread*/);
     826                                         pArgs->MaxPhysAddr, pArgs->enmType, pArgs->uAlignment, pArgs->pszTag,
     827                                         true /*fOnKernelThread*/);
    824828    rtR0MemObjDarwinSignalThreadWaitinOnTask(&pArgs->Core, rc);
    825829}
     
    831835
    832836    int rc = rtR0MemObjNativeAllocWorker(ppMem, cb, fExecutable, false /* fContiguous */, 0 /* PhysMask */, UINT64_MAX,
    833                                          RTR0MEMOBJTYPE_PAGE, PAGE_SIZE, false /*fOnKernelThread*/);
     837                                         RTR0MEMOBJTYPE_PAGE, PAGE_SIZE, NULL, false /*fOnKernelThread*/);
    834838
    835839    IPRT_DARWIN_RESTORE_EFL_AC();
     
    857861     */
    858862    int rc = rtR0MemObjNativeAllocWorker(ppMem, cb, fExecutable, false /* fContiguous */, ~(uint32_t)PAGE_OFFSET_MASK,
    859                                          _4G - PAGE_SIZE, RTR0MEMOBJTYPE_LOW, PAGE_SIZE, false /*fOnKernelThread*/);
     863                                         _4G - PAGE_SIZE, RTR0MEMOBJTYPE_LOW, PAGE_SIZE, NULL, false /*fOnKernelThread*/);
    860864    if (rc == VERR_ADDRESS_TOO_BIG)
    861865        rc = rtR0MemObjNativeAllocWorker(ppMem, cb, fExecutable, false /* fContiguous */, 0 /* PhysMask */,
    862                                          _4G - PAGE_SIZE, RTR0MEMOBJTYPE_LOW, PAGE_SIZE, false /*fOnKernelThread*/);
     866                                         _4G - PAGE_SIZE, RTR0MEMOBJTYPE_LOW, PAGE_SIZE, NULL, false /*fOnKernelThread*/);
    863867
    864868    IPRT_DARWIN_RESTORE_EFL_AC();
     
    873877    int rc = rtR0MemObjNativeAllocWorker(ppMem, cb, fExecutable, true /* fContiguous */,
    874878                                         ~(uint32_t)PAGE_OFFSET_MASK, _4G - PAGE_SIZE,
    875                                          RTR0MEMOBJTYPE_CONT, PAGE_SIZE, false /*fOnKernelThread*/);
     879                                         RTR0MEMOBJTYPE_CONT, PAGE_SIZE, NULL, false /*fOnKernelThread*/);
    876880
    877881    /*
     
    882886        rc = rtR0MemObjNativeAllocWorker(ppMem, cb + PAGE_SIZE, fExecutable, true /* fContiguous */,
    883887                                         ~(uint32_t)PAGE_OFFSET_MASK, _4G - PAGE_SIZE,
    884                                          RTR0MEMOBJTYPE_CONT, PAGE_SIZE, false /*fOnKernelThread*/);
     888                                         RTR0MEMOBJTYPE_CONT, PAGE_SIZE, NULL, false /*fOnKernelThread*/);
    885889    IPRT_DARWIN_RESTORE_EFL_AC();
    886890    return rc;
     
    888892
    889893
    890 DECLHIDDEN(int) rtR0MemObjNativeAllocPhys(PPRTR0MEMOBJINTERNAL ppMem, size_t cb, RTHCPHYS PhysHighest, size_t uAlignment)
     894DECLHIDDEN(int) rtR0MemObjNativeAllocPhys(PPRTR0MEMOBJINTERNAL ppMem, size_t cb, RTHCPHYS PhysHighest, size_t uAlignment,
     895                                          const char *pszTag)
    891896{
    892897    if (uAlignment != PAGE_SIZE)
     
    906911        rc = rtR0MemObjNativeAllocWorker(ppMem, cb, false /* fExecutable */, true /* fContiguous */,
    907912                                         uAlignment <= PAGE_SIZE ? 0 : ~(mach_vm_address_t)(uAlignment - 1) /* PhysMask*/,
    908                                          UINT64_MAX, RTR0MEMOBJTYPE_PHYS, uAlignment, false /*fOnKernelThread*/);
     913                                         UINT64_MAX, RTR0MEMOBJTYPE_PHYS, uAlignment, NULL, false /*fOnKernelThread*/);
    909914    else
    910915    {
     
    917922
    918923        rc = rtR0MemObjNativeAllocWorker(ppMem, cb, false /* fExecutable */, true /* fContiguous */,
    919                                          PhysMask, PhysHighest, RTR0MEMOBJTYPE_PHYS, uAlignment, false /*fOnKernelThread*/);
     924                                         PhysMask, PhysHighest,
     925                                         RTR0MEMOBJTYPE_PHYS, uAlignment, NULL, false /*fOnKernelThread*/);
    920926    }
    921927
     
    925931
    926932
    927 DECLHIDDEN(int) rtR0MemObjNativeAllocPhysNC(PPRTR0MEMOBJINTERNAL ppMem, size_t cb, RTHCPHYS PhysHighest)
     933DECLHIDDEN(int) rtR0MemObjNativeAllocPhysNC(PPRTR0MEMOBJINTERNAL ppMem, size_t cb, RTHCPHYS PhysHighest, const char *pszTag)
    928934{
    929935    /** @todo rtR0MemObjNativeAllocPhys / darwin.
     
    932938     * Estimate is 2-3 days.
    933939     */
    934     RT_NOREF(ppMem, cb, PhysHighest);
     940    RT_NOREF(ppMem, cb, PhysHighest, pszTag);
    935941    return VERR_NOT_SUPPORTED;
    936942}
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