VirtualBox

Changeset 5331 in vbox for trunk/src/VBox/HostDrivers


Ignore:
Timestamp:
Oct 16, 2007 2:58:57 PM (17 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
25357
Message:

Use mmap/munmap instead of RTMemPage* (valloc/free).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/HostDrivers/Support/solaris/SUPLib-solaris.cpp

    r4925 r5331  
    4242#include <errno.h>
    4343#include <unistd.h>
     44#include <sys/mman.h>
    4445#include <stdlib.h>
    4546#include <stdio.h>
     
    154155int suplibOsPageAlloc(size_t cPages, void **ppvPages)
    155156{
    156     *ppvPages = RTMemPageAllocZ(cPages << PAGE_SHIFT);
    157     if (*ppvPages)
     157    *ppvPages = mmap(NULL, cPages * PAGE_SIZE, PROT_EXEC | PROT_READ | PROT_WRITE,
     158                     MAP_PRIVATE | MAP_ANON, -1, 0);
     159    if (*ppvPages != (void *)-1)
    158160        return VINF_SUCCESS;
    159161    return RTErrConvertFromErrno(errno);
     
    161163
    162164
    163 int suplibOsPageFree(void *pvPages, size_t /* cPages */)
     165int suplibOsPageFree(void *pvPages, size_t cPages)
    164166{
    165     RTMemPageFree(pvPages);
     167    munmap(pvPages, cPages * PAGE_SIZE);
    166168    return VINF_SUCCESS;
    167169}
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