diff options
author | glewis <glewis@FreeBSD.org> | 2006-06-17 05:29:53 +0800 |
---|---|---|
committer | glewis <glewis@FreeBSD.org> | 2006-06-17 05:29:53 +0800 |
commit | cc2b04e843757ee37ae69721248b659902e5bada (patch) | |
tree | e757a4a89b7e55b3475bc6d89b242698e472ee8a /java | |
parent | e452ae4d4767b5de2db886e3fb6680b24bc7a1a5 (diff) | |
download | freebsd-ports-gnome-cc2b04e843757ee37ae69721248b659902e5bada.tar.gz freebsd-ports-gnome-cc2b04e843757ee37ae69721248b659902e5bada.tar.zst freebsd-ports-gnome-cc2b04e843757ee37ae69721248b659902e5bada.zip |
. Work around a thread cache problem that caused javah to crash with an
Internal Error.
Submitted by: Kurt Miller <kurt@intricatesoftware.com>
Sponsored by: The FreeBSD Foundation
Diffstat (limited to 'java')
-rw-r--r-- | java/jdk15/files/patch-hotspot::vm::thread_bsd.inline.hpp | 16 | ||||
-rw-r--r-- | java/jdk16/files/patch-hotspot::vm::thread_bsd.inline.hpp | 16 |
2 files changed, 32 insertions, 0 deletions
diff --git a/java/jdk15/files/patch-hotspot::vm::thread_bsd.inline.hpp b/java/jdk15/files/patch-hotspot::vm::thread_bsd.inline.hpp new file mode 100644 index 000000000000..794d795d04a4 --- /dev/null +++ b/java/jdk15/files/patch-hotspot::vm::thread_bsd.inline.hpp @@ -0,0 +1,16 @@ +$FreeBSD$ + +--- ../../hotspot/src/os/bsd/vm/thread_bsd.inline.hpp.orig Thu Jun 15 17:58:02 2006 ++++ ../../hotspot/src/os/bsd/vm/thread_bsd.inline.hpp Thu Jun 15 17:59:19 2006 +@@ -19,7 +19,10 @@ + + uintptr_t raw = pd_raw_thread_id(); + int ix = pd_cache_index(raw); +-#ifdef __OpenBSD__ ++// XXXBSD: disable fast case. there is a race condition where the ++// fast case returns a different thread from the slow case and has ++// been seen on both OpenBSD and FreeBSD. ++#if 1 + return ThreadLocalStorage::get_thread_via_cache_slowly(raw, ix); + #else + Thread *Candidate = ThreadLocalStorage::_get_thread_cache[ix]; diff --git a/java/jdk16/files/patch-hotspot::vm::thread_bsd.inline.hpp b/java/jdk16/files/patch-hotspot::vm::thread_bsd.inline.hpp new file mode 100644 index 000000000000..794d795d04a4 --- /dev/null +++ b/java/jdk16/files/patch-hotspot::vm::thread_bsd.inline.hpp @@ -0,0 +1,16 @@ +$FreeBSD$ + +--- ../../hotspot/src/os/bsd/vm/thread_bsd.inline.hpp.orig Thu Jun 15 17:58:02 2006 ++++ ../../hotspot/src/os/bsd/vm/thread_bsd.inline.hpp Thu Jun 15 17:59:19 2006 +@@ -19,7 +19,10 @@ + + uintptr_t raw = pd_raw_thread_id(); + int ix = pd_cache_index(raw); +-#ifdef __OpenBSD__ ++// XXXBSD: disable fast case. there is a race condition where the ++// fast case returns a different thread from the slow case and has ++// been seen on both OpenBSD and FreeBSD. ++#if 1 + return ThreadLocalStorage::get_thread_via_cache_slowly(raw, ix); + #else + Thread *Candidate = ThreadLocalStorage::_get_thread_cache[ix]; |