opnsense-ports/java/openjdk8/files/patch-hotspot-src-os-bsd-vm...

37 lines
1.3 KiB
C++

--- hotspot/src/os/bsd/vm/os_bsd.cpp.orig 2017-09-06 22:12:44 UTC
+++ hotspot/src/os/bsd/vm/os_bsd.cpp
@@ -189,7 +189,9 @@ julong os::Bsd::available_memory() {
#ifdef __FreeBSD__
static const char *vm_stats[] = {
"vm.stats.vm.v_free_count",
+#if __FreeBSD_version < 1200016
"vm.stats.vm.v_cache_count",
+#endif
"vm.stats.vm.v_inactive_count"
};
size_t size;
@@ -775,6 +777,11 @@ static void *java_start(Thread *thread)
guarantee(unique_thread_id != 0, "unique thread id was not found");
osthread->set_unique_thread_id(unique_thread_id);
#endif
+#ifdef __FreeBSD__
+ uint64_t unique_thread_id = os::Bsd::gettid();
+ guarantee(unique_thread_id != 0, "unique thread id was not found");
+ osthread->set_unique_thread_id(unique_thread_id);
+#endif
// initialize signal mask for this thread
os::Bsd::hotspot_sigmask(thread);
@@ -938,6 +945,11 @@ bool os::create_attached_thread(JavaThre
guarantee(unique_thread_id != 0, "just checking");
osthread->set_unique_thread_id(unique_thread_id);
#endif
+#ifdef __FreeBSD__
+ uint64_t unique_thread_id = os::Bsd::gettid();
+ guarantee(unique_thread_id != 0, "unique thread id was not found");
+ osthread->set_unique_thread_id(unique_thread_id);
+#endif
osthread->set_pthread_id(::pthread_self());
// initialize floating point control register