… | |
… | |
16 | #include <sys/statvfs.h> |
16 | #include <sys/statvfs.h> |
17 | #include <limits.h> |
17 | #include <limits.h> |
18 | #include <fcntl.h> |
18 | #include <fcntl.h> |
19 | #include <sched.h> |
19 | #include <sched.h> |
20 | |
20 | |
21 | #if _POSIX_MEMLOCK || _POSIX_MAPPED_FILES |
21 | #if _POSIX_MEMLOCK || _POSIX_MEMLOCK_RANGE || _POSIX_MAPPED_FILES |
22 | # include <sys/mman.h> |
22 | # include <sys/mman.h> |
23 | #endif |
23 | #endif |
24 | |
24 | |
25 | /* perl namespace pollution */ |
25 | /* perl namespace pollution */ |
26 | #undef VERSION |
26 | #undef VERSION |
… | |
… | |
637 | /*****************************************************************************/ |
637 | /*****************************************************************************/ |
638 | |
638 | |
639 | #if !_POSIX_MAPPED_FILES |
639 | #if !_POSIX_MAPPED_FILES |
640 | # define mmap(addr,length,prot,flags,fd,offs) (errno = ENOSYS, -1) |
640 | # define mmap(addr,length,prot,flags,fd,offs) (errno = ENOSYS, -1) |
641 | # define munmap(addr,length) (errno = ENOSYS, -1) |
641 | # define munmap(addr,length) (errno = ENOSYS, -1) |
|
|
642 | #endif |
|
|
643 | |
|
|
644 | #if !_POSIX_MEMORY_PROTECTION |
642 | # define mprotect(addr,len,prot) (errno = ENOSYS, -1) |
645 | # define mprotect(addr,len,prot) (errno = ENOSYS, -1) |
643 | # define PROT_NONE 0 |
646 | # define PROT_NONE 0 |
644 | # define PROT_WRITE 0 |
647 | # define PROT_WRITE 0 |
645 | # define MAP_PRIVATE 0 |
648 | # define MAP_PRIVATE 0 |
646 | # define MAP_SHARED 0 |
649 | # define MAP_SHARED 0 |
… | |
… | |
1524 | if (!SvOK (length) || len + offset > svlen) |
1527 | if (!SvOK (length) || len + offset > svlen) |
1525 | len = svlen - offset; |
1528 | len = svlen - offset; |
1526 | |
1529 | |
1527 | addr = (void *)(((intptr_t)addr) + offset); |
1530 | addr = (void *)(((intptr_t)addr) + offset); |
1528 | eio_page_align (&addr, &len); |
1531 | eio_page_align (&addr, &len); |
1529 | #if _POSIX_MEMLOCK |
1532 | #if _POSIX_MEMLOCK_RANGE |
1530 | RETVAL = munlock (addr, len); |
1533 | RETVAL = munlock (addr, len); |
1531 | #else |
1534 | #else |
1532 | RETVAL = ((errno = ENOSYS), -1); |
1535 | RETVAL = ((errno = ENOSYS), -1); |
1533 | #endif |
1536 | #endif |
1534 | } |
1537 | } |