< prev index next >

src/hotspot/os/linux/os_linux.cpp

Print this page
rev 47819 : imported patch 10.07.open.rebase_20171110.dcubed

*** 56,65 **** --- 56,66 ---- #include "runtime/sharedRuntime.hpp" #include "runtime/statSampler.hpp" #include "runtime/stubRoutines.hpp" #include "runtime/thread.inline.hpp" #include "runtime/threadCritical.hpp" + #include "runtime/threadSMR.hpp" #include "runtime/timer.hpp" #include "semaphore_posix.hpp" #include "services/attachListener.hpp" #include "services/memTracker.hpp" #include "services/runtimeService.hpp"
*** 1600,1610 **** // This should happen only when you are building JDK7 using a very // old version of JDK6 (e.g., with JPRT) and running test_gamma. // // Dynamic loader will make all stacks executable after // this function returns, and will not do that again. ! assert(Threads::first() == NULL, "no Java threads should exist yet."); } else { warning("You have loaded library %s which might have disabled stack guard. " "The VM will try to fix the stack guard now.\n" "It's highly recommended that you fix the library with " "'execstack -c <libfile>', or link it with '-z noexecstack'.", --- 1601,1614 ---- // This should happen only when you are building JDK7 using a very // old version of JDK6 (e.g., with JPRT) and running test_gamma. // // Dynamic loader will make all stacks executable after // this function returns, and will not do that again. ! #ifdef ASSERT ! ThreadsListHandle tlh; ! assert(tlh.length() == 0, "no Java threads should exist yet."); ! #endif } else { warning("You have loaded library %s which might have disabled stack guard. " "The VM will try to fix the stack guard now.\n" "It's highly recommended that you fix the library with " "'execstack -c <libfile>', or link it with '-z noexecstack'.",
*** 1828,1847 **** // // Need to check _stack_is_executable again as multiple VM_LinuxDllLoad // may have been queued at the same time. if (!_stack_is_executable) { ! JavaThread *jt = Threads::first(); ! ! while (jt) { if (!jt->stack_guard_zone_unused() && // Stack not yet fully initialized jt->stack_guards_enabled()) { // No pending stack overflow exceptions if (!os::guard_memory((char *)jt->stack_end(), jt->stack_guard_zone_size())) { warning("Attempt to reguard stack yellow zone failed."); } } - jt = jt->next(); } } return result; } --- 1832,1848 ---- // // Need to check _stack_is_executable again as multiple VM_LinuxDllLoad // may have been queued at the same time. if (!_stack_is_executable) { ! for (JavaThreadIteratorWithHandle jtiwh; JavaThread *jt = jtiwh.next(); ) { if (!jt->stack_guard_zone_unused() && // Stack not yet fully initialized jt->stack_guards_enabled()) { // No pending stack overflow exceptions if (!os::guard_memory((char *)jt->stack_end(), jt->stack_guard_zone_size())) { warning("Attempt to reguard stack yellow zone failed."); } } } } return result; }
< prev index next >