Changeset 91482 in vbox for trunk/src/VBox
- Timestamp:
- Sep 30, 2021 12:12:26 AM (3 years ago)
- Location:
- trunk/src/VBox/Runtime
- Files:
-
- 10 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Runtime/include/internal/memobj.h
r91481 r91482 357 357 * and RTMEM_PROT_WRITE. 358 358 * @param R0Process The process to lock pages in. 359 */ 360 DECLHIDDEN(int) rtR0MemObjNativeLockUser(PPRTR0MEMOBJINTERNAL ppMem, RTR3PTR R3Ptr, size_t cb, uint32_t fAccess, RTR0PROCESS R0Process); 359 * @param pszTag Allocation tag used for statistics and such. 360 */ 361 DECLHIDDEN(int) rtR0MemObjNativeLockUser(PPRTR0MEMOBJINTERNAL ppMem, RTR3PTR R3Ptr, size_t cb, uint32_t fAccess, 362 RTR0PROCESS R0Process, const char *pszTag); 361 363 362 364 /** … … 369 371 * @param fAccess The desired access, a combination of RTMEM_PROT_READ 370 372 * and RTMEM_PROT_WRITE. 371 */ 372 DECLHIDDEN(int) rtR0MemObjNativeLockKernel(PPRTR0MEMOBJINTERNAL ppMem, void *pv, size_t cb, uint32_t fAccess); 373 * @param pszTag Allocation tag used for statistics and such. 374 */ 375 DECLHIDDEN(int) rtR0MemObjNativeLockKernel(PPRTR0MEMOBJINTERNAL ppMem, void *pv, size_t cb, uint32_t fAccess, const char *pszTag); 373 376 374 377 /** -
trunk/src/VBox/Runtime/r0drv/darwin/memobj-r0drv-darwin.cpp
r91481 r91482 911 911 rc = rtR0MemObjNativeAllocWorker(ppMem, cb, false /* fExecutable */, true /* fContiguous */, 912 912 uAlignment <= PAGE_SIZE ? 0 : ~(mach_vm_address_t)(uAlignment - 1) /* PhysMask*/, 913 UINT64_MAX, RTR0MEMOBJTYPE_PHYS, uAlignment, NULL, false /*fOnKernelThread*/);913 UINT64_MAX, RTR0MEMOBJTYPE_PHYS, uAlignment, pszTag, false /*fOnKernelThread*/); 914 914 else 915 915 { … … 923 923 rc = rtR0MemObjNativeAllocWorker(ppMem, cb, false /* fExecutable */, true /* fContiguous */, 924 924 PhysMask, PhysHighest, 925 RTR0MEMOBJTYPE_PHYS, uAlignment, NULL, false /*fOnKernelThread*/);925 RTR0MEMOBJTYPE_PHYS, uAlignment, pszTag, false /*fOnKernelThread*/); 926 926 } 927 927 … … 1008 1008 * and RTMEM_PROT_WRITE. 1009 1009 * @param Task The task \a pv and \a cb refers to. 1010 */ 1011 static int rtR0MemObjNativeLock(PPRTR0MEMOBJINTERNAL ppMem, void *pv, size_t cb, uint32_t fAccess, task_t Task) 1010 * @param pszTag Allocation tag used for statistics and such. 1011 */ 1012 static int rtR0MemObjNativeLock(PPRTR0MEMOBJINTERNAL ppMem, void *pv, size_t cb, uint32_t fAccess, task_t Task, 1013 const char *pszTag) 1012 1014 { 1013 1015 IPRT_DARWIN_SAVE_EFL_AC(); … … 1031 1033 * Create the IPRT memory object. 1032 1034 */ 1033 PRTR0MEMOBJDARWIN pMemDarwin = (PRTR0MEMOBJDARWIN)rtR0MemObjNew(sizeof(*pMemDarwin), RTR0MEMOBJTYPE_LOCK, pv, cb, NULL);1035 PRTR0MEMOBJDARWIN pMemDarwin = (PRTR0MEMOBJDARWIN)rtR0MemObjNew(sizeof(*pMemDarwin), RTR0MEMOBJTYPE_LOCK, pv, cb, pszTag); 1034 1036 if (pMemDarwin) 1035 1037 { … … 1061 1063 * Create the IPRT memory object. 1062 1064 */ 1063 PRTR0MEMOBJDARWIN pMemDarwin = (PRTR0MEMOBJDARWIN)rtR0MemObjNew(sizeof(*pMemDarwin), RTR0MEMOBJTYPE_LOCK, pv, cb, NULL); 1065 PRTR0MEMOBJDARWIN pMemDarwin = (PRTR0MEMOBJDARWIN)rtR0MemObjNew(sizeof(*pMemDarwin), RTR0MEMOBJTYPE_LOCK, 1066 pv, cb, pszTag); 1064 1067 if (pMemDarwin) 1065 1068 { … … 1085 1088 1086 1089 1087 DECLHIDDEN(int) rtR0MemObjNativeLockUser(PPRTR0MEMOBJINTERNAL ppMem, RTR3PTR R3Ptr, size_t cb, uint32_t fAccess, RTR0PROCESS R0Process) 1088 { 1089 return rtR0MemObjNativeLock(ppMem, (void *)R3Ptr, cb, fAccess, (task_t)R0Process); 1090 } 1091 1092 1093 DECLHIDDEN(int) rtR0MemObjNativeLockKernel(PPRTR0MEMOBJINTERNAL ppMem, void *pv, size_t cb, uint32_t fAccess) 1094 { 1095 return rtR0MemObjNativeLock(ppMem, pv, cb, fAccess, kernel_task); 1090 DECLHIDDEN(int) rtR0MemObjNativeLockUser(PPRTR0MEMOBJINTERNAL ppMem, RTR3PTR R3Ptr, size_t cb, uint32_t fAccess, 1091 RTR0PROCESS R0Process, const char *pszTag) 1092 { 1093 return rtR0MemObjNativeLock(ppMem, (void *)R3Ptr, cb, fAccess, (task_t)R0Process, pszTag); 1094 } 1095 1096 1097 DECLHIDDEN(int) rtR0MemObjNativeLockKernel(PPRTR0MEMOBJINTERNAL ppMem, void *pv, size_t cb, uint32_t fAccess, const char *pszTag) 1098 { 1099 return rtR0MemObjNativeLock(ppMem, pv, cb, fAccess, kernel_task, pszTag); 1096 1100 } 1097 1101 -
trunk/src/VBox/Runtime/r0drv/freebsd/memobj-r0drv-freebsd.c
r91481 r91482 506 506 static int rtR0MemObjNativeLockInMap(PPRTR0MEMOBJINTERNAL ppMem, vm_map_t pVmMap, 507 507 vm_offset_t AddrStart, size_t cb, uint32_t fAccess, 508 RTR0PROCESS R0Process, int fFlags )508 RTR0PROCESS R0Process, int fFlags, const char *pszTag) 509 509 { 510 510 int rc; … … 513 513 /* create the object. */ 514 514 PRTR0MEMOBJFREEBSD pMemFreeBSD = (PRTR0MEMOBJFREEBSD)rtR0MemObjNew(sizeof(*pMemFreeBSD), RTR0MEMOBJTYPE_LOCK, 515 (void *)AddrStart, cb, NULL);515 (void *)AddrStart, cb, pszTag); 516 516 if (!pMemFreeBSD) 517 517 return VERR_NO_MEMORY; … … 536 536 537 537 538 DECLHIDDEN(int) rtR0MemObjNativeLockUser(PPRTR0MEMOBJINTERNAL ppMem, RTR3PTR R3Ptr, size_t cb, uint32_t fAccess, RTR0PROCESS R0Process) 538 DECLHIDDEN(int) rtR0MemObjNativeLockUser(PPRTR0MEMOBJINTERNAL ppMem, RTR3PTR R3Ptr, size_t cb, uint32_t fAccess, 539 RTR0PROCESS R0Process, const char *pszTag) 539 540 { 540 541 return rtR0MemObjNativeLockInMap(ppMem, … … 544 545 fAccess, 545 546 R0Process, 546 VM_MAP_WIRE_USER | VM_MAP_WIRE_NOHOLES); 547 } 548 549 550 DECLHIDDEN(int) rtR0MemObjNativeLockKernel(PPRTR0MEMOBJINTERNAL ppMem, void *pv, size_t cb, uint32_t fAccess) 547 VM_MAP_WIRE_USER | VM_MAP_WIRE_NOHOLES, 548 pszTag); 549 } 550 551 552 DECLHIDDEN(int) rtR0MemObjNativeLockKernel(PPRTR0MEMOBJINTERNAL ppMem, void *pv, size_t cb, uint32_t fAccess, const char *pszTag) 551 553 { 552 554 return rtR0MemObjNativeLockInMap(ppMem, … … 556 558 fAccess, 557 559 NIL_RTR0PROCESS, 558 VM_MAP_WIRE_SYSTEM | VM_MAP_WIRE_NOHOLES); 560 VM_MAP_WIRE_SYSTEM | VM_MAP_WIRE_NOHOLES, 561 pszTag); 559 562 } 560 563 -
trunk/src/VBox/Runtime/r0drv/haiku/memobj-r0drv-haiku.c
r91481 r91482 308 308 * 309 309 * @returns IPRT status code. 310 * @param ppMem Where to store the allocated memory object. 311 * @param pvStart The starting address. 312 * @param cb The size of the block. 313 * @param fAccess The mapping protection to apply. 314 * @param R0Process The process to map the memory to (use NIL_RTR0PROCESS 315 * for the kernel) 316 * @param fFlags Memory flags (B_READ_DEVICE indicates the memory is 317 * intended to be written from a "device"). 310 * @param ppMem Where to store the allocated memory object. 311 * @param pvStart The starting address. 312 * @param cb The size of the block. 313 * @param fAccess The mapping protection to apply. 314 * @param R0Process The process to map the memory to (use NIL_RTR0PROCESS 315 * for the kernel) 316 * @param fFlags Memory flags (B_READ_DEVICE indicates the memory is 317 * intended to be written from a "device"). 318 * @param pszTag Allocation tag used for statistics and such. 318 319 */ 319 320 static int rtR0MemObjNativeLockInMap(PPRTR0MEMOBJINTERNAL ppMem, void *pvStart, size_t cb, uint32_t fAccess, 320 RTR0PROCESS R0Process, int fFlags )321 RTR0PROCESS R0Process, int fFlags, const char *pszTag) 321 322 { 322 323 NOREF(fAccess); 323 int rc;324 324 team_id TeamId = B_SYSTEM_TEAM; 325 325 … … 328 328 329 329 /* Create the object. */ 330 PRTR0MEMOBJHAIKU pMemHaiku = (PRTR0MEMOBJHAIKU)rtR0MemObjNew(sizeof(*pMemHaiku), RTR0MEMOBJTYPE_LOCK, pvStart, cb, NULL);330 PRTR0MEMOBJHAIKU pMemHaiku = (PRTR0MEMOBJHAIKU)rtR0MemObjNew(sizeof(*pMemHaiku), RTR0MEMOBJTYPE_LOCK, pvStart, cb, pszTag); 331 331 if (RT_UNLIKELY(!pMemHaiku)) 332 332 return VERR_NO_MEMORY; … … 334 334 if (R0Process != NIL_RTR0PROCESS) 335 335 TeamId = (team_id)R0Process; 336 rc = lock_memory_etc(TeamId, pvStart, cb, fFlags);336 int rc = lock_memory_etc(TeamId, pvStart, cb, fFlags); 337 337 if (rc == B_OK) 338 338 { … … 347 347 348 348 349 int rtR0MemObjNativeLockUser(PPRTR0MEMOBJINTERNAL ppMem, RTR3PTR R3Ptr, size_t cb, uint32_t fAccess, RTR0PROCESS R0Process) 350 { 351 return rtR0MemObjNativeLockInMap(ppMem, (void *)R3Ptr, cb, fAccess, R0Process, B_READ_DEVICE); 352 } 353 354 355 int rtR0MemObjNativeLockKernel(PPRTR0MEMOBJINTERNAL ppMem, void *pv, size_t cb, uint32_t fAccess) 356 { 357 return rtR0MemObjNativeLockInMap(ppMem, pv, cb, fAccess, NIL_RTR0PROCESS, B_READ_DEVICE); 349 int rtR0MemObjNativeLockUser(PPRTR0MEMOBJINTERNAL ppMem, RTR3PTR R3Ptr, size_t cb, uint32_t fAccess, RTR0PROCESS R0Process, 350 const char *pszTag) 351 { 352 return rtR0MemObjNativeLockInMap(ppMem, (void *)R3Ptr, cb, fAccess, R0Process, B_READ_DEVICE, pszTag); 353 } 354 355 356 int rtR0MemObjNativeLockKernel(PPRTR0MEMOBJINTERNAL ppMem, void *pv, size_t cb, uint32_t fAccess, const char *pszTag) 357 { 358 return rtR0MemObjNativeLockInMap(ppMem, pv, cb, fAccess, NIL_RTR0PROCESS, B_READ_DEVICE, pszTag); 358 359 } 359 360 -
trunk/src/VBox/Runtime/r0drv/linux/memobj-r0drv-linux.c
r91481 r91482 1195 1195 #endif 1196 1196 1197 DECLHIDDEN(int) rtR0MemObjNativeLockUser(PPRTR0MEMOBJINTERNAL ppMem, RTR3PTR R3Ptr, size_t cb, uint32_t fAccess, RTR0PROCESS R0Process) 1197 DECLHIDDEN(int) rtR0MemObjNativeLockUser(PPRTR0MEMOBJINTERNAL ppMem, RTR3PTR R3Ptr, size_t cb, uint32_t fAccess, 1198 RTR0PROCESS R0Process, const char *pszTag) 1198 1199 { 1199 1200 IPRT_LINUX_SAVE_EFL_AC(); … … 1217 1218 */ 1218 1219 pMemLnx = (PRTR0MEMOBJLNX)rtR0MemObjNew(RT_UOFFSETOF_DYN(RTR0MEMOBJLNX, apPages[cPages]), RTR0MEMOBJTYPE_LOCK, 1219 (void *)R3Ptr, cb, NULL);1220 (void *)R3Ptr, cb, pszTag); 1220 1221 if (!pMemLnx) 1221 1222 { … … 1353 1354 1354 1355 1355 DECLHIDDEN(int) rtR0MemObjNativeLockKernel(PPRTR0MEMOBJINTERNAL ppMem, void *pv, size_t cb, uint32_t fAccess )1356 DECLHIDDEN(int) rtR0MemObjNativeLockKernel(PPRTR0MEMOBJINTERNAL ppMem, void *pv, size_t cb, uint32_t fAccess, const char *pszTag) 1356 1357 { 1357 1358 IPRT_LINUX_SAVE_EFL_AC(); … … 1386 1387 * Allocate the memory object. 1387 1388 */ 1388 pMemLnx = (PRTR0MEMOBJLNX)rtR0MemObjNew(RT_UOFFSETOF_DYN(RTR0MEMOBJLNX, apPages[cPages]), RTR0MEMOBJTYPE_LOCK, pv, cb, NULL); 1389 pMemLnx = (PRTR0MEMOBJLNX)rtR0MemObjNew(RT_UOFFSETOF_DYN(RTR0MEMOBJLNX, apPages[cPages]), RTR0MEMOBJTYPE_LOCK, 1390 pv, cb, pszTag); 1389 1391 if (!pMemLnx) 1390 1392 { -
trunk/src/VBox/Runtime/r0drv/memobj-r0drv.cpp
r91481 r91482 536 536 RT_ASSERT_PREEMPTIBLE(); 537 537 538 RT_NOREF_PV(pszTag);539 540 538 /* do the locking. */ 541 return rtR0MemObjNativeLockUser(pMemObj, R3PtrAligned, cbAligned, fAccess, R0Process );539 return rtR0MemObjNativeLockUser(pMemObj, R3PtrAligned, cbAligned, fAccess, R0Process, pszTag); 542 540 } 543 541 RT_EXPORT_SYMBOL(RTR0MemObjLockUserTag); … … 558 556 RT_ASSERT_PREEMPTIBLE(); 559 557 560 RT_NOREF_PV(pszTag);561 562 558 /* do the allocation. */ 563 return rtR0MemObjNativeLockKernel(pMemObj, pvAligned, cbAligned, fAccess );559 return rtR0MemObjNativeLockKernel(pMemObj, pvAligned, cbAligned, fAccess, pszTag); 564 560 } 565 561 RT_EXPORT_SYMBOL(RTR0MemObjLockKernelTag); -
trunk/src/VBox/Runtime/r0drv/netbsd/memobj-r0drv-netbsd.c
r91481 r91482 368 368 369 369 370 DECLHIDDEN(int) rtR0MemObjNativeLockUser(PPRTR0MEMOBJINTERNAL ppMem, RTR3PTR R3Ptr, size_t cb, uint32_t fAccess, RTR0PROCESS R0Process) 371 { 372 PRTR0MEMOBJNETBSD pMemNetBSD = (PRTR0MEMOBJNETBSD)rtR0MemObjNew(sizeof(*pMemNetBSD), RTR0MEMOBJTYPE_LOCK, (void *)R3Ptr, cb, NULL); 370 DECLHIDDEN(int) rtR0MemObjNativeLockUser(PPRTR0MEMOBJINTERNAL ppMem, RTR3PTR R3Ptr, size_t cb, uint32_t fAccess, 371 RTR0PROCESS R0Process, const char *pszTag) 372 { 373 PRTR0MEMOBJNETBSD pMemNetBSD = (PRTR0MEMOBJNETBSD)rtR0MemObjNew(sizeof(*pMemNetBSD), RTR0MEMOBJTYPE_LOCK, 374 (void *)R3Ptr, cb, pszTag); 373 375 if (!pMemNetBSD) 374 376 return VERR_NO_MEMORY; … … 391 393 392 394 393 DECLHIDDEN(int) rtR0MemObjNativeLockKernel(PPRTR0MEMOBJINTERNAL ppMem, void *pv, size_t cb, uint32_t fAccess )395 DECLHIDDEN(int) rtR0MemObjNativeLockKernel(PPRTR0MEMOBJINTERNAL ppMem, void *pv, size_t cb, uint32_t fAccess, const char *pszTag) 394 396 { 395 397 /* Kernel memory (always?) wired; all memory allocated by vbox code is? */ 396 PRTR0MEMOBJNETBSD pMemNetBSD = (PRTR0MEMOBJNETBSD)rtR0MemObjNew(sizeof(*pMemNetBSD), RTR0MEMOBJTYPE_LOCK, pv, cb, NULL);398 PRTR0MEMOBJNETBSD pMemNetBSD = (PRTR0MEMOBJNETBSD)rtR0MemObjNew(sizeof(*pMemNetBSD), RTR0MEMOBJTYPE_LOCK, pv, cb, pszTag); 397 399 if (!pMemNetBSD) 398 400 return VERR_NO_MEMORY; -
trunk/src/VBox/Runtime/r0drv/nt/memobj-r0drv-nt.cpp
r91481 r91482 759 759 * and RTMEM_PROT_WRITE. 760 760 * @param R0Process The process \a pv and \a cb refers to. 761 * @param pszTag Allocation tag used for statistics and such. 761 762 */ 762 static int rtR0MemObjNtLock(PPRTR0MEMOBJINTERNAL ppMem, void *pv, size_t cb, uint32_t fAccess, RTR0PROCESS R0Process) 763 static int rtR0MemObjNtLock(PPRTR0MEMOBJINTERNAL ppMem, void *pv, size_t cb, uint32_t fAccess, RTR0PROCESS R0Process, 764 const char *pszTag) 763 765 { 764 766 /* … … 771 773 return VERR_OUT_OF_RANGE; 772 774 PRTR0MEMOBJNT pMemNt = (PRTR0MEMOBJNT)rtR0MemObjNew(RT_UOFFSETOF_DYN(RTR0MEMOBJNT, apMdls[cMdls]), 773 RTR0MEMOBJTYPE_LOCK, pv, cb, NULL);775 RTR0MEMOBJTYPE_LOCK, pv, cb, pszTag); 774 776 if (!pMemNt) 775 777 return VERR_NO_MEMORY; … … 871 873 872 874 DECLHIDDEN(int) rtR0MemObjNativeLockUser(PPRTR0MEMOBJINTERNAL ppMem, RTR3PTR R3Ptr, size_t cb, uint32_t fAccess, 873 RTR0PROCESS R0Process )875 RTR0PROCESS R0Process, const char *pszTag) 874 876 { 875 877 AssertMsgReturn(R0Process == RTR0ProcHandleSelf(), ("%p != %p\n", R0Process, RTR0ProcHandleSelf()), VERR_NOT_SUPPORTED); 876 878 /* (Can use MmProbeAndLockProcessPages if we need to mess with other processes later.) */ 877 return rtR0MemObjNtLock(ppMem, (void *)R3Ptr, cb, fAccess, R0Process );878 } 879 880 881 DECLHIDDEN(int) rtR0MemObjNativeLockKernel(PPRTR0MEMOBJINTERNAL ppMem, void *pv, size_t cb, uint32_t fAccess )882 { 883 return rtR0MemObjNtLock(ppMem, pv, cb, fAccess, NIL_RTR0PROCESS );879 return rtR0MemObjNtLock(ppMem, (void *)R3Ptr, cb, fAccess, R0Process, pszTag); 880 } 881 882 883 DECLHIDDEN(int) rtR0MemObjNativeLockKernel(PPRTR0MEMOBJINTERNAL ppMem, void *pv, size_t cb, uint32_t fAccess, const char *pszTag) 884 { 885 return rtR0MemObjNtLock(ppMem, pv, cb, fAccess, NIL_RTR0PROCESS, pszTag); 884 886 } 885 887 -
trunk/src/VBox/Runtime/r0drv/os2/memobj-r0drv-os2.cpp
r91481 r91482 287 287 288 288 DECLHIDDEN(int) rtR0MemObjNativeLockUser(PPRTR0MEMOBJINTERNAL ppMem, RTR3PTR R3Ptr, size_t cb, uint32_t fAccess, 289 RTR0PROCESS R0Process )289 RTR0PROCESS R0Process, const char *pszTag) 290 290 { 291 291 AssertMsgReturn(R0Process == RTR0ProcHandleSelf(), ("%p != %p\n", R0Process, RTR0ProcHandleSelf()), VERR_NOT_SUPPORTED); … … 294 294 const ULONG cPages = cb >> PAGE_SHIFT; 295 295 PRTR0MEMOBJOS2 pMemOs2 = (PRTR0MEMOBJOS2)rtR0MemObjNew(RT_UOFFSETOF_DYN(RTR0MEMOBJOS2, aPages[cPages]), 296 RTR0MEMOBJTYPE_LOCK, (void *)R3Ptr, cb, NULL);296 RTR0MEMOBJTYPE_LOCK, (void *)R3Ptr, cb, pszTag); 297 297 if (!pMemOs2) 298 298 return VERR_NO_MEMORY; … … 316 316 317 317 318 DECLHIDDEN(int) rtR0MemObjNativeLockKernel(PPRTR0MEMOBJINTERNAL ppMem, void *pv, size_t cb, uint32_t fAccess )318 DECLHIDDEN(int) rtR0MemObjNativeLockKernel(PPRTR0MEMOBJINTERNAL ppMem, void *pv, size_t cb, uint32_t fAccess, const char *pszTag) 319 319 { 320 320 /* create the object. */ 321 321 const ULONG cPages = cb >> PAGE_SHIFT; 322 322 PRTR0MEMOBJOS2 pMemOs2 = (PRTR0MEMOBJOS2)rtR0MemObjNew(RT_UOFFSETOF_DYN(RTR0MEMOBJOS2, aPages[cPages]), 323 RTR0MEMOBJTYPE_LOCK, pv, cb, NULL);323 RTR0MEMOBJTYPE_LOCK, pv, cb, pszTag); 324 324 if (!pMemOs2) 325 325 return VERR_NO_MEMORY; -
trunk/src/VBox/Runtime/r0drv/solaris/memobj-r0drv-solaris.c
r91481 r91482 857 857 858 858 DECLHIDDEN(int) rtR0MemObjNativeLockUser(PPRTR0MEMOBJINTERNAL ppMem, RTR3PTR R3Ptr, size_t cb, uint32_t fAccess, 859 RTR0PROCESS R0Process )859 RTR0PROCESS R0Process, const char *pszTag) 860 860 { 861 861 AssertReturn(R0Process == RTR0ProcHandleSelf(), VERR_INVALID_PARAMETER); … … 863 863 864 864 /* Create the locking object */ 865 PRTR0MEMOBJSOL pMemSolaris = (PRTR0MEMOBJSOL)rtR0MemObjNew(sizeof(*pMemSolaris), RTR0MEMOBJTYPE_LOCK, (void *)R3Ptr, cb, NULL); 865 PRTR0MEMOBJSOL pMemSolaris = (PRTR0MEMOBJSOL)rtR0MemObjNew(sizeof(*pMemSolaris), RTR0MEMOBJTYPE_LOCK, 866 (void *)R3Ptr, cb, pszTag); 866 867 if (!pMemSolaris) 867 868 return VERR_NO_MEMORY; … … 890 891 891 892 892 DECLHIDDEN(int) rtR0MemObjNativeLockKernel(PPRTR0MEMOBJINTERNAL ppMem, void *pv, size_t cb, uint32_t fAccess )893 DECLHIDDEN(int) rtR0MemObjNativeLockKernel(PPRTR0MEMOBJINTERNAL ppMem, void *pv, size_t cb, uint32_t fAccess, const char *pszTag) 893 894 { 894 895 NOREF(fAccess); 895 896 896 PRTR0MEMOBJSOL pMemSolaris = (PRTR0MEMOBJSOL)rtR0MemObjNew(sizeof(*pMemSolaris), RTR0MEMOBJTYPE_LOCK, pv, cb, NULL);897 PRTR0MEMOBJSOL pMemSolaris = (PRTR0MEMOBJSOL)rtR0MemObjNew(sizeof(*pMemSolaris), RTR0MEMOBJTYPE_LOCK, pv, cb, pszTag); 897 898 if (!pMemSolaris) 898 899 return VERR_NO_MEMORY;
Note:
See TracChangeset
for help on using the changeset viewer.