Changeset 36555 in vbox for trunk/src/VBox/Runtime/include/internal/memobj.h
- Timestamp:
- Apr 5, 2011 12:34:09 PM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Runtime/include/internal/memobj.h
r33540 r36555 1 /* $ Revision$ */1 /* $Id$ */ 2 2 /** @file 3 3 * IPRT - Ring-0 Memory Objects. … … 5 5 6 6 /* 7 * Copyright (C) 2006-20 07Oracle Corporation7 * Copyright (C) 2006-2011 Oracle Corporation 8 8 * 9 9 * This file is part of VirtualBox Open Source Edition (OSE), as … … 288 288 * @param pMem The ring-0 memory object handle to the memory which should be freed. 289 289 */ 290 intrtR0MemObjNativeFree(PRTR0MEMOBJINTERNAL pMem);290 DECLHIDDEN(int) rtR0MemObjNativeFree(PRTR0MEMOBJINTERNAL pMem); 291 291 292 292 /** … … 300 300 * @param fExecutable Flag indicating whether it should be permitted to executed code in the memory object. 301 301 */ 302 intrtR0MemObjNativeAllocPage(PPRTR0MEMOBJINTERNAL ppMem, size_t cb, bool fExecutable);302 DECLHIDDEN(int) rtR0MemObjNativeAllocPage(PPRTR0MEMOBJINTERNAL ppMem, size_t cb, bool fExecutable); 303 303 304 304 /** … … 312 312 * @param fExecutable Flag indicating whether it should be permitted to executed code in the memory object. 313 313 */ 314 intrtR0MemObjNativeAllocLow(PPRTR0MEMOBJINTERNAL ppMem, size_t cb, bool fExecutable);314 DECLHIDDEN(int) rtR0MemObjNativeAllocLow(PPRTR0MEMOBJINTERNAL ppMem, size_t cb, bool fExecutable); 315 315 316 316 /** … … 324 324 * @param fExecutable Flag indicating whether it should be permitted to executed code in the memory object. 325 325 */ 326 intrtR0MemObjNativeAllocCont(PPRTR0MEMOBJINTERNAL ppMem, size_t cb, bool fExecutable);326 DECLHIDDEN(int) rtR0MemObjNativeAllocCont(PPRTR0MEMOBJINTERNAL ppMem, size_t cb, bool fExecutable); 327 327 328 328 /** … … 337 337 * @param R0Process The process to lock pages in. 338 338 */ 339 intrtR0MemObjNativeLockUser(PPRTR0MEMOBJINTERNAL ppMem, RTR3PTR R3Ptr, size_t cb, uint32_t fAccess, RTR0PROCESS R0Process);339 DECLHIDDEN(int) rtR0MemObjNativeLockUser(PPRTR0MEMOBJINTERNAL ppMem, RTR3PTR R3Ptr, size_t cb, uint32_t fAccess, RTR0PROCESS R0Process); 340 340 341 341 /** … … 349 349 * and RTMEM_PROT_WRITE. 350 350 */ 351 intrtR0MemObjNativeLockKernel(PPRTR0MEMOBJINTERNAL ppMem, void *pv, size_t cb, uint32_t fAccess);351 DECLHIDDEN(int) rtR0MemObjNativeLockKernel(PPRTR0MEMOBJINTERNAL ppMem, void *pv, size_t cb, uint32_t fAccess); 352 352 353 353 /** … … 363 363 * Supported values are PAGE_SIZE, _2M, _4M and _1G. 364 364 */ 365 intrtR0MemObjNativeAllocPhys(PPRTR0MEMOBJINTERNAL ppMem, size_t cb, RTHCPHYS PhysHighest, size_t uAlignment);365 DECLHIDDEN(int) rtR0MemObjNativeAllocPhys(PPRTR0MEMOBJINTERNAL ppMem, size_t cb, RTHCPHYS PhysHighest, size_t uAlignment); 366 366 367 367 /** … … 376 376 * NIL_RTHCPHYS if any address is acceptable. 377 377 */ 378 intrtR0MemObjNativeAllocPhysNC(PPRTR0MEMOBJINTERNAL ppMem, size_t cb, RTHCPHYS PhysHighest);378 DECLHIDDEN(int) rtR0MemObjNativeAllocPhysNC(PPRTR0MEMOBJINTERNAL ppMem, size_t cb, RTHCPHYS PhysHighest); 379 379 380 380 /** … … 387 387 * @param uCachePolicy One of the RTMEM_CACHE_XXX modes. 388 388 */ 389 intrtR0MemObjNativeEnterPhys(PPRTR0MEMOBJINTERNAL ppMem, RTHCPHYS Phys, size_t cb, uint32_t uCachePolicy);389 DECLHIDDEN(int) rtR0MemObjNativeEnterPhys(PPRTR0MEMOBJINTERNAL ppMem, RTHCPHYS Phys, size_t cb, uint32_t uCachePolicy); 390 390 391 391 /** … … 399 399 * @param uAlignment The alignment of the reserved memory; PAGE_SIZE, _2M or _4M. 400 400 */ 401 intrtR0MemObjNativeReserveKernel(PPRTR0MEMOBJINTERNAL ppMem, void *pvFixed, size_t cb, size_t uAlignment);401 DECLHIDDEN(int) rtR0MemObjNativeReserveKernel(PPRTR0MEMOBJINTERNAL ppMem, void *pvFixed, size_t cb, size_t uAlignment); 402 402 403 403 /** … … 411 411 * @param R0Process The process to reserve the memory in. 412 412 */ 413 intrtR0MemObjNativeReserveUser(PPRTR0MEMOBJINTERNAL ppMem, RTR3PTR R3PtrFixed, size_t cb, size_t uAlignment, RTR0PROCESS R0Process);413 DECLHIDDEN(int) rtR0MemObjNativeReserveUser(PPRTR0MEMOBJINTERNAL ppMem, RTR3PTR R3PtrFixed, size_t cb, size_t uAlignment, RTR0PROCESS R0Process); 414 414 415 415 /** … … 431 431 * page aligned. 432 432 */ 433 intrtR0MemObjNativeMapKernel(PPRTR0MEMOBJINTERNAL ppMem, RTR0MEMOBJ pMemToMap, void *pvFixed, size_t uAlignment,434 unsigned fProt, size_t offSub, size_t cbSub);433 DECLHIDDEN(int) rtR0MemObjNativeMapKernel(PPRTR0MEMOBJINTERNAL ppMem, RTR0MEMOBJ pMemToMap, void *pvFixed, size_t uAlignment, 434 unsigned fProt, size_t offSub, size_t cbSub); 435 435 436 436 /** … … 445 445 * @param R0Process The process to map the memory into. 446 446 */ 447 intrtR0MemObjNativeMapUser(PPRTR0MEMOBJINTERNAL ppMem, PRTR0MEMOBJINTERNAL pMemToMap, RTR3PTR R3PtrFixed, size_t uAlignment, unsigned fProt, RTR0PROCESS R0Process);447 DECLHIDDEN(int) rtR0MemObjNativeMapUser(PPRTR0MEMOBJINTERNAL ppMem, PRTR0MEMOBJINTERNAL pMemToMap, RTR3PTR R3PtrFixed, size_t uAlignment, unsigned fProt, RTR0PROCESS R0Process); 448 448 449 449 /** … … 459 459 * @param fProt Combination of RTMEM_PROT_* flags. 460 460 */ 461 intrtR0MemObjNativeProtect(PRTR0MEMOBJINTERNAL pMem, size_t offSub, size_t cbSub, uint32_t fProt);461 DECLHIDDEN(int) rtR0MemObjNativeProtect(PRTR0MEMOBJINTERNAL pMem, size_t offSub, size_t cbSub, uint32_t fProt); 462 462 463 463 /** … … 471 471 * @param iPage The page number within the object (valid). 472 472 */ 473 RTHCPHYSrtR0MemObjNativeGetPagePhysAddr(PRTR0MEMOBJINTERNAL pMem, size_t iPage);474 475 PRTR0MEMOBJINTERNALrtR0MemObjNew(size_t cbSelf, RTR0MEMOBJTYPE enmType, void *pv, size_t cb);476 voidrtR0MemObjDelete(PRTR0MEMOBJINTERNAL pMem);473 DECLHIDDEN(RTHCPHYS) rtR0MemObjNativeGetPagePhysAddr(PRTR0MEMOBJINTERNAL pMem, size_t iPage); 474 475 DECLHIDDEN(PRTR0MEMOBJINTERNAL) rtR0MemObjNew(size_t cbSelf, RTR0MEMOBJTYPE enmType, void *pv, size_t cb); 476 DECLHIDDEN(void) rtR0MemObjDelete(PRTR0MEMOBJINTERNAL pMem); 477 477 478 478 /** @} */
Note:
See TracChangeset
for help on using the changeset viewer.