hg: jdk/hs: 8189941: Implementation JEP 312: Thread-local handshake
robbin.ehn at oracle.com
robbin.ehn at oracle.com
Mon Nov 13 17:13:50 UTC 2017
Changeset: 0ce0ac68ace7
Author: rehn
Date: 2017-08-31 10:00 +0200
URL: http://hg.openjdk.java.net/jdk/hs/rev/0ce0ac68ace7
8189941: Implementation JEP 312: Thread-local handshake
Summary: Introduce a way to execute a callback on threads without performing a global VM safepoint. Make it both possible and cheap to stop individual threads and not just all threads or none.
Reviewed-by: mdoerr, neliasso, acorn, aph, coleenp, dholmes
Contributed-by: mikael.gerdin at oracle.com, erik.osterlund at oracle.com, robbin.ehn at oracle.com
! make/test/JtregNativeHotspot.gmk
! src/hotspot/cpu/aarch64/globals_aarch64.hpp
! src/hotspot/cpu/arm/globals_arm.hpp
! src/hotspot/cpu/ppc/globals_ppc.hpp
! src/hotspot/cpu/s390/globals_s390.hpp
! src/hotspot/cpu/sparc/c1_LIRAssembler_sparc.cpp
! src/hotspot/cpu/sparc/c1_LIRGenerator_sparc.cpp
! src/hotspot/cpu/sparc/globalDefinitions_sparc.hpp
! src/hotspot/cpu/sparc/globals_sparc.hpp
! src/hotspot/cpu/sparc/interp_masm_sparc.cpp
! src/hotspot/cpu/sparc/interp_masm_sparc.hpp
! src/hotspot/cpu/sparc/macroAssembler_sparc.cpp
! src/hotspot/cpu/sparc/macroAssembler_sparc.hpp
! src/hotspot/cpu/sparc/sharedRuntime_sparc.cpp
! src/hotspot/cpu/sparc/sparc.ad
! src/hotspot/cpu/sparc/templateInterpreterGenerator_sparc.cpp
! src/hotspot/cpu/sparc/templateTable_sparc.cpp
! src/hotspot/cpu/x86/c1_LIRAssembler_x86.cpp
! src/hotspot/cpu/x86/globalDefinitions_x86.hpp
! src/hotspot/cpu/x86/globals_x86.hpp
! src/hotspot/cpu/x86/interp_masm_x86.cpp
! src/hotspot/cpu/x86/interp_masm_x86.hpp
! src/hotspot/cpu/x86/macroAssembler_x86.cpp
! src/hotspot/cpu/x86/macroAssembler_x86.hpp
! src/hotspot/cpu/x86/nativeInst_x86.hpp
! src/hotspot/cpu/x86/relocInfo_x86.cpp
! src/hotspot/cpu/x86/sharedRuntime_x86_64.cpp
! src/hotspot/cpu/x86/templateInterpreterGenerator_x86.cpp
! src/hotspot/cpu/x86/templateInterpreterGenerator_x86_64.cpp
! src/hotspot/cpu/x86/templateTable_x86.cpp
! src/hotspot/cpu/x86/x86_64.ad
! src/hotspot/cpu/zero/globals_zero.hpp
! src/hotspot/os/aix/os_aix.cpp
+ src/hotspot/os/aix/safepointMechanism_aix.cpp
! src/hotspot/os/bsd/os_bsd.cpp
! src/hotspot/os/linux/os_linux.cpp
! src/hotspot/os/solaris/os_solaris.cpp
! src/hotspot/os/windows/os_windows.cpp
! src/hotspot/os_cpu/linux_sparc/thread_linux_sparc.hpp
! src/hotspot/os_cpu/solaris_sparc/os_solaris_sparc.cpp
! src/hotspot/os_cpu/solaris_sparc/thread_solaris_sparc.hpp
! src/hotspot/share/interpreter/templateInterpreter.hpp
! src/hotspot/share/jvmci/jvmciCodeInstaller.cpp
! src/hotspot/share/logging/logTag.hpp
! src/hotspot/share/opto/parse1.cpp
! src/hotspot/share/prims/whitebox.cpp
! src/hotspot/share/runtime/arguments.cpp
! src/hotspot/share/runtime/commandLineFlagConstraintsRuntime.cpp
! src/hotspot/share/runtime/commandLineFlagConstraintsRuntime.hpp
! src/hotspot/share/runtime/globals.hpp
+ src/hotspot/share/runtime/handshake.cpp
+ src/hotspot/share/runtime/handshake.hpp
! src/hotspot/share/runtime/interfaceSupport.hpp
! src/hotspot/share/runtime/mutex.cpp
! src/hotspot/share/runtime/objectMonitor.cpp
! src/hotspot/share/runtime/safepoint.cpp
! src/hotspot/share/runtime/safepoint.hpp
+ src/hotspot/share/runtime/safepointMechanism.cpp
+ src/hotspot/share/runtime/safepointMechanism.hpp
+ src/hotspot/share/runtime/safepointMechanism.inline.hpp
! src/hotspot/share/runtime/thread.cpp
! src/hotspot/share/runtime/thread.hpp
! src/hotspot/share/runtime/thread.inline.hpp
! src/hotspot/share/runtime/timer.cpp
! src/hotspot/share/runtime/timer.hpp
! src/hotspot/share/runtime/vm_operations.hpp
! test/hotspot/jtreg/TEST.groups
+ test/hotspot/jtreg/runtime/handshake/HandshakeTransitionTest.java
+ test/hotspot/jtreg/runtime/handshake/HandshakeWalkExitTest.java
+ test/hotspot/jtreg/runtime/handshake/HandshakeWalkStackFallbackTest.java
+ test/hotspot/jtreg/runtime/handshake/HandshakeWalkStackTest.java
+ test/hotspot/jtreg/runtime/handshake/libHandshakeTransitionTest.c
! test/lib/sun/hotspot/WhiteBox.java
More information about the jdk-hs-changes
mailing list