aboutsummaryrefslogtreecommitdiff
path: root/java
diff options
context:
space:
mode:
authorJohn Baldwin <jhb@FreeBSD.org>2014-10-18 12:20:42 +0000
committerJohn Baldwin <jhb@FreeBSD.org>2014-10-18 12:20:42 +0000
commit1ebd0e3345fb6f66522e8c837174a3544e080aad (patch)
tree75b44b9298bfa34f3123fa4b2064042302608491 /java
parentb133042d6c8165729774ffa4c9ea411beb0fdc29 (diff)
The MAP_NORESERVE flag to mmap() has never been implemented in FreeBSD and
is being removed. No portrev bump needed since the kernel will continue to accept this flag for old binaries even after support for it in new binaries is removed. PR: 193961 Approved by: portmgr (antoine)
Notes
Notes: svn path=/head/; revision=371117
Diffstat (limited to 'java')
-rw-r--r--java/openjdk6/files/patch-set29
-rw-r--r--java/openjdk7/files/patch-src-os-bsd-vm-os_bsd.cpp33
-rw-r--r--java/openjdk8/files/patch-bsd29
3 files changed, 85 insertions, 6 deletions
diff --git a/java/openjdk6/files/patch-set b/java/openjdk6/files/patch-set
index 21767728e029..5f17ef0db3d2 100644
--- a/java/openjdk6/files/patch-set
+++ b/java/openjdk6/files/patch-set
@@ -1460,7 +1460,16 @@
// Add the appropriate client or server subdir
len = strlen(buf);
-@@ -2817,7 +2941,7 @@
+@@ -2752,7 +2876,7 @@
+ if (::write(fd, "", 1) == 1) {
+ mmap(base, size,
+ PROT_READ|PROT_WRITE|PROT_EXEC,
+- MAP_PRIVATE|MAP_FIXED|MAP_NORESERVE, fd, 0);
++ MAP_PRIVATE|MAP_FIXED, fd, 0);
+ }
+ }
+ ::close(fd);
+@@ -2815,7 +2939,7 @@
}
void os::free_memory(char *addr, size_t bytes, size_t alignment_hint) {
@@ -1469,7 +1478,23 @@
}
void os::numa_make_global(char *addr, size_t bytes) {
-@@ -2997,9 +3121,10 @@
+@@ -2962,7 +3086,7 @@
+ return ::mprotect(addr, size, PROT_NONE) == 0;
+ #else
+ uintptr_t res = (uintptr_t) ::mmap(addr, size, PROT_NONE,
+- MAP_PRIVATE|MAP_FIXED|MAP_NORESERVE|MAP_ANONYMOUS, -1, 0);
++ MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0);
+ return res != (uintptr_t) MAP_FAILED;
+ #endif
+ }
+@@ -2989,15 +3113,16 @@
+ char * addr;
+ int flags;
+
+- flags = MAP_PRIVATE | MAP_NORESERVE | MAP_ANONYMOUS;
++ flags = MAP_PRIVATE | MAP_ANONYMOUS;
+ if (fixed) {
+ assert((uintptr_t)requested_addr % os::Bsd::page_size() == 0, "unaligned address");
flags |= MAP_FIXED;
}
diff --git a/java/openjdk7/files/patch-src-os-bsd-vm-os_bsd.cpp b/java/openjdk7/files/patch-src-os-bsd-vm-os_bsd.cpp
index b2f8297af0ed..e490ef7ee7c2 100644
--- a/java/openjdk7/files/patch-src-os-bsd-vm-os_bsd.cpp
+++ b/java/openjdk7/files/patch-src-os-bsd-vm-os_bsd.cpp
@@ -1,8 +1,8 @@
$FreeBSD$
---- hotspot/src/os/bsd/vm/os_bsd.cpp.orig 2010-02-21 20:07:54.000000000 -0800
-+++ hotspot/src/os/bsd/vm/os_bsd.cpp 2010-02-21 20:08:41.000000000 -0800
-@@ -358,7 +358,7 @@
+--- hotspot/src/os/bsd/vm/os_bsd.cpp.orig 2014-10-06 17:10:00.000000000 -0400
++++ hotspot/src/os/bsd/vm/os_bsd.cpp 2014-10-08 10:23:14.000000000 -0400
+@@ -458,7 +458,7 @@
* 7: The default directories, normally /lib and /usr/lib.
*/
#ifndef DEFAULT_LIBPATH
@@ -11,3 +11,30 @@ $FreeBSD$
#endif
#define EXTENSIONS_DIR "/lib/ext"
+@@ -2947,7 +2947,7 @@
+ if (::write(fd, "", 1) == 1) {
+ mmap(base, size,
+ PROT_READ|PROT_WRITE|PROT_EXEC,
+- MAP_PRIVATE|MAP_FIXED|MAP_NORESERVE, fd, 0);
++ MAP_PRIVATE|MAP_FIXED, fd, 0);
+ }
+ }
+ ::close(fd);
+@@ -3196,7 +3196,7 @@
+ return ::mprotect(addr, size, PROT_NONE) == 0;
+ #else
+ uintptr_t res = (uintptr_t) ::mmap(addr, size, PROT_NONE,
+- MAP_PRIVATE|MAP_FIXED|MAP_NORESERVE|MAP_ANONYMOUS, -1, 0);
++ MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0);
+ return res != (uintptr_t) MAP_FAILED;
+ #endif
+ }
+@@ -3223,7 +3223,7 @@
+ char * addr;
+ int flags;
+
+- flags = MAP_PRIVATE | MAP_NORESERVE | MAP_ANONYMOUS;
++ flags = MAP_PRIVATE | MAP_ANONYMOUS;
+ if (fixed) {
+ assert((uintptr_t)requested_addr % os::Bsd::page_size() == 0, "unaligned address");
+ flags |= MAP_FIXED;
diff --git a/java/openjdk8/files/patch-bsd b/java/openjdk8/files/patch-bsd
index 504658578a16..1b5cd37f810f 100644
--- a/java/openjdk8/files/patch-bsd
+++ b/java/openjdk8/files/patch-bsd
@@ -941,7 +941,34 @@
SEM_INIT(_semaphore, 0);
}
-@@ -2746,6 +2813,7 @@
+@@ -2128,7 +2195,7 @@
+ if (::write(fd, "", 1) == 1) {
+ mmap(base, size,
+ PROT_READ|PROT_WRITE|PROT_EXEC,
+- MAP_PRIVATE|MAP_FIXED|MAP_NORESERVE, fd, 0);
++ MAP_PRIVATE|MAP_FIXED, fd, 0);
+ }
+ }
+ ::close(fd);
+@@ -2238,7 +2305,7 @@
+ return ::mprotect(addr, size, PROT_NONE) == 0;
+ #else
+ uintptr_t res = (uintptr_t) ::mmap(addr, size, PROT_NONE,
+- MAP_PRIVATE|MAP_FIXED|MAP_NORESERVE|MAP_ANONYMOUS, -1, 0);
++ MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0);
+ return res != (uintptr_t) MAP_FAILED;
+ #endif
+ }
+@@ -2265,7 +2332,7 @@
+ char * addr;
+ int flags;
+
+- flags = MAP_PRIVATE | MAP_NORESERVE | MAP_ANONYMOUS;
++ flags = MAP_PRIVATE | MAP_ANONYMOUS;
+ if (fixed) {
+ assert((uintptr_t)requested_addr % os::Bsd::page_size() == 0, "unaligned address");
+ flags |= MAP_FIXED;
+@@ -2743,6 +2810,7 @@
return OS_OK;
#elif defined(__FreeBSD__)
int ret = pthread_setprio(thread->osthread()->pthread_id(), newpri);