47 inline bool os::must_commit_stack_guard_pages() {
48 assert(uses_stack_guard_pages(), "sanity check");
49 return false;
50 }
51
52 // On Aix, reservations are made on a page by page basis, nothing to do.
53 inline void os::pd_split_reserved_memory(char *base, size_t size,
54 size_t split, bool realloc) {
55 // TODO: Determine whether Sys V memory is split. If yes, we need to treat
56 // this the same way Windows treats its VirtualAlloc allocations.
57 }
58
59 // Bang the shadow pages if they need to be touched to be mapped.
60 inline void os::map_stack_shadow_pages(address sp) {
61 }
62
63 inline void os::dll_unload(void *lib) {
64 ::dlclose(lib);
65 }
66
67 inline const int os::default_file_open_flags() { return 0;}
68
69 inline jlong os::lseek(int fd, jlong offset, int whence) {
70 return (jlong) ::lseek64(fd, offset, whence);
71 }
72
73 inline int os::fsync(int fd) {
74 return ::fsync(fd);
75 }
76
77 inline int os::ftruncate(int fd, jlong length) {
78 return ::ftruncate64(fd, length);
79 }
80
81 // macros for restartable system calls
82
83 #define RESTARTABLE(_cmd, _result) do { \
84 _result = _cmd; \
85 } while(((int)_result == OS_ERR) && (errno == EINTR))
86
87 #define RESTARTABLE_RETURN_INT(_cmd) do { \
88 int _result; \
|
47 inline bool os::must_commit_stack_guard_pages() {
48 assert(uses_stack_guard_pages(), "sanity check");
49 return false;
50 }
51
52 // On Aix, reservations are made on a page by page basis, nothing to do.
53 inline void os::pd_split_reserved_memory(char *base, size_t size,
54 size_t split, bool realloc) {
55 // TODO: Determine whether Sys V memory is split. If yes, we need to treat
56 // this the same way Windows treats its VirtualAlloc allocations.
57 }
58
59 // Bang the shadow pages if they need to be touched to be mapped.
60 inline void os::map_stack_shadow_pages(address sp) {
61 }
62
63 inline void os::dll_unload(void *lib) {
64 ::dlclose(lib);
65 }
66
67 inline jlong os::lseek(int fd, jlong offset, int whence) {
68 return (jlong) ::lseek64(fd, offset, whence);
69 }
70
71 inline int os::fsync(int fd) {
72 return ::fsync(fd);
73 }
74
75 inline int os::ftruncate(int fd, jlong length) {
76 return ::ftruncate64(fd, length);
77 }
78
79 // macros for restartable system calls
80
81 #define RESTARTABLE(_cmd, _result) do { \
82 _result = _cmd; \
83 } while(((int)_result == OS_ERR) && (errno == EINTR))
84
85 #define RESTARTABLE_RETURN_INT(_cmd) do { \
86 int _result; \
|