Wed, 18 Dec 2013 08:39:06 +0100
8029726: On OS X some dtrace probe names are mismatched with Solaris
8029727: On OS X dtrace probes Call<type>MethodA/Call<type>MethodV are not fired.
8029728: On OS X dtrace probes SetStaticBooleanField are not fired
Reviewed-by: kamg, dsamersoff
1.1 --- a/src/os/bsd/dtrace/hotspot.d Mon Dec 07 13:25:13 2015 +0100 1.2 +++ b/src/os/bsd/dtrace/hotspot.d Wed Dec 18 08:39:06 2013 +0100 1.3 @@ -47,8 +47,8 @@ 1.4 probe mem__pool__gc__end( 1.5 char*, uintptr_t, char*, uintptr_t, 1.6 uintptr_t, uintptr_t, uintptr_t, uintptr_t); 1.7 - probe thread__probe__start(char*, uintptr_t, uintptr_t, uintptr_t, uintptr_t); 1.8 - probe thread__probe__stop(char*, uintptr_t, uintptr_t, uintptr_t, uintptr_t); 1.9 + probe thread__start(char*, uintptr_t, uintptr_t, uintptr_t, uintptr_t); 1.10 + probe thread__stop(char*, uintptr_t, uintptr_t, uintptr_t, uintptr_t); 1.11 probe thread__sleep__begin(long long); 1.12 probe thread__sleep__end(int); 1.13 probe thread__yield(); 1.14 @@ -68,7 +68,7 @@ 1.15 probe monitor__contended__entered(uintptr_t, uintptr_t, char*, uintptr_t); 1.16 probe monitor__contended__exit(uintptr_t, uintptr_t, char*, uintptr_t); 1.17 probe monitor__wait(uintptr_t, uintptr_t, char*, uintptr_t, uintptr_t); 1.18 - probe monitor__probe__waited(uintptr_t, uintptr_t, char*, uintptr_t); 1.19 + probe monitor__waited(uintptr_t, uintptr_t, char*, uintptr_t); 1.20 probe monitor__notify(uintptr_t, uintptr_t, char*, uintptr_t); 1.21 probe monitor__notifyAll(uintptr_t, uintptr_t, char*, uintptr_t); 1.22
2.1 --- a/src/share/vm/prims/jni.cpp Mon Dec 07 13:25:13 2015 +0100 2.2 +++ b/src/share/vm/prims/jni.cpp Wed Dec 18 08:39:06 2013 +0100 2.3 @@ -1796,34 +1796,34 @@ 2.4 2.5 // the runtime type of subword integral basic types is integer 2.6 DEFINE_CALLMETHODV(jboolean, Boolean, T_BOOLEAN 2.7 - , HOTSPOT_JNI_CALLBOOLEANMETHOD_ENTRY(env, obj, (uintptr_t)methodID), 2.8 - HOTSPOT_JNI_CALLBOOLEANMETHOD_RETURN(_ret_ref)) 2.9 + , HOTSPOT_JNI_CALLBOOLEANMETHODV_ENTRY(env, obj, (uintptr_t)methodID), 2.10 + HOTSPOT_JNI_CALLBOOLEANMETHODV_RETURN(_ret_ref)) 2.11 DEFINE_CALLMETHODV(jbyte, Byte, T_BYTE 2.12 - , HOTSPOT_JNI_CALLBYTEMETHOD_ENTRY(env, obj, (uintptr_t)methodID), 2.13 - HOTSPOT_JNI_CALLBYTEMETHOD_RETURN(_ret_ref)) 2.14 + , HOTSPOT_JNI_CALLBYTEMETHODV_ENTRY(env, obj, (uintptr_t)methodID), 2.15 + HOTSPOT_JNI_CALLBYTEMETHODV_RETURN(_ret_ref)) 2.16 DEFINE_CALLMETHODV(jchar, Char, T_CHAR 2.17 - , HOTSPOT_JNI_CALLCHARMETHOD_ENTRY(env, obj, (uintptr_t)methodID), 2.18 - HOTSPOT_JNI_CALLCHARMETHOD_RETURN(_ret_ref)) 2.19 + , HOTSPOT_JNI_CALLCHARMETHODV_ENTRY(env, obj, (uintptr_t)methodID), 2.20 + HOTSPOT_JNI_CALLCHARMETHODV_RETURN(_ret_ref)) 2.21 DEFINE_CALLMETHODV(jshort, Short, T_SHORT 2.22 - , HOTSPOT_JNI_CALLSHORTMETHOD_ENTRY(env, obj, (uintptr_t)methodID), 2.23 - HOTSPOT_JNI_CALLSHORTMETHOD_RETURN(_ret_ref)) 2.24 + , HOTSPOT_JNI_CALLSHORTMETHODV_ENTRY(env, obj, (uintptr_t)methodID), 2.25 + HOTSPOT_JNI_CALLSHORTMETHODV_RETURN(_ret_ref)) 2.26 2.27 DEFINE_CALLMETHODV(jobject, Object, T_OBJECT 2.28 - , HOTSPOT_JNI_CALLOBJECTMETHOD_ENTRY(env, obj, (uintptr_t)methodID), 2.29 - HOTSPOT_JNI_CALLOBJECTMETHOD_RETURN(_ret_ref)) 2.30 + , HOTSPOT_JNI_CALLOBJECTMETHODV_ENTRY(env, obj, (uintptr_t)methodID), 2.31 + HOTSPOT_JNI_CALLOBJECTMETHODV_RETURN(_ret_ref)) 2.32 DEFINE_CALLMETHODV(jint, Int, T_INT, 2.33 - HOTSPOT_JNI_CALLINTMETHOD_ENTRY(env, obj, (uintptr_t)methodID), 2.34 - HOTSPOT_JNI_CALLINTMETHOD_RETURN(_ret_ref)) 2.35 + HOTSPOT_JNI_CALLINTMETHODV_ENTRY(env, obj, (uintptr_t)methodID), 2.36 + HOTSPOT_JNI_CALLINTMETHODV_RETURN(_ret_ref)) 2.37 DEFINE_CALLMETHODV(jlong, Long, T_LONG 2.38 - , HOTSPOT_JNI_CALLLONGMETHOD_ENTRY(env, obj, (uintptr_t)methodID), 2.39 - HOTSPOT_JNI_CALLLONGMETHOD_RETURN(_ret_ref)) 2.40 + , HOTSPOT_JNI_CALLLONGMETHODV_ENTRY(env, obj, (uintptr_t)methodID), 2.41 + HOTSPOT_JNI_CALLLONGMETHODV_RETURN(_ret_ref)) 2.42 // Float and double probes don't return value because dtrace doesn't currently support it 2.43 DEFINE_CALLMETHODV(jfloat, Float, T_FLOAT 2.44 - , HOTSPOT_JNI_CALLFLOATMETHOD_ENTRY(env, obj, (uintptr_t)methodID), 2.45 - HOTSPOT_JNI_CALLFLOATMETHOD_RETURN()) 2.46 + , HOTSPOT_JNI_CALLFLOATMETHODV_ENTRY(env, obj, (uintptr_t)methodID), 2.47 + HOTSPOT_JNI_CALLFLOATMETHODV_RETURN()) 2.48 DEFINE_CALLMETHODV(jdouble, Double, T_DOUBLE 2.49 - , HOTSPOT_JNI_CALLDOUBLEMETHOD_ENTRY(env, obj, (uintptr_t)methodID), 2.50 - HOTSPOT_JNI_CALLDOUBLEMETHOD_RETURN()) 2.51 + , HOTSPOT_JNI_CALLDOUBLEMETHODV_ENTRY(env, obj, (uintptr_t)methodID), 2.52 + HOTSPOT_JNI_CALLDOUBLEMETHODV_RETURN()) 2.53 2.54 #define DEFINE_CALLMETHODA(ResultType, Result, Tag \ 2.55 , EntryProbe, ReturnProbe) \ 2.56 @@ -1848,34 +1848,34 @@ 2.57 2.58 // the runtime type of subword integral basic types is integer 2.59 DEFINE_CALLMETHODA(jboolean, Boolean, T_BOOLEAN 2.60 - , HOTSPOT_JNI_CALLBOOLEANMETHOD_ENTRY(env, obj, (uintptr_t)methodID), 2.61 - HOTSPOT_JNI_CALLBOOLEANMETHOD_RETURN(_ret_ref)) 2.62 + , HOTSPOT_JNI_CALLBOOLEANMETHODA_ENTRY(env, obj, (uintptr_t)methodID), 2.63 + HOTSPOT_JNI_CALLBOOLEANMETHODA_RETURN(_ret_ref)) 2.64 DEFINE_CALLMETHODA(jbyte, Byte, T_BYTE 2.65 - , HOTSPOT_JNI_CALLBYTEMETHOD_ENTRY(env, obj, (uintptr_t)methodID), 2.66 - HOTSPOT_JNI_CALLBYTEMETHOD_RETURN(_ret_ref)) 2.67 + , HOTSPOT_JNI_CALLBYTEMETHODA_ENTRY(env, obj, (uintptr_t)methodID), 2.68 + HOTSPOT_JNI_CALLBYTEMETHODA_RETURN(_ret_ref)) 2.69 DEFINE_CALLMETHODA(jchar, Char, T_CHAR 2.70 - , HOTSPOT_JNI_CALLCHARMETHOD_ENTRY(env, obj, (uintptr_t)methodID), 2.71 - HOTSPOT_JNI_CALLCHARMETHOD_RETURN(_ret_ref)) 2.72 + , HOTSPOT_JNI_CALLCHARMETHODA_ENTRY(env, obj, (uintptr_t)methodID), 2.73 + HOTSPOT_JNI_CALLCHARMETHODA_RETURN(_ret_ref)) 2.74 DEFINE_CALLMETHODA(jshort, Short, T_SHORT 2.75 - , HOTSPOT_JNI_CALLSHORTMETHOD_ENTRY(env, obj, (uintptr_t)methodID), 2.76 - HOTSPOT_JNI_CALLSHORTMETHOD_RETURN(_ret_ref)) 2.77 + , HOTSPOT_JNI_CALLSHORTMETHODA_ENTRY(env, obj, (uintptr_t)methodID), 2.78 + HOTSPOT_JNI_CALLSHORTMETHODA_RETURN(_ret_ref)) 2.79 2.80 DEFINE_CALLMETHODA(jobject, Object, T_OBJECT 2.81 - , HOTSPOT_JNI_CALLOBJECTMETHOD_ENTRY(env, obj, (uintptr_t)methodID), 2.82 - HOTSPOT_JNI_CALLOBJECTMETHOD_RETURN(_ret_ref)) 2.83 + , HOTSPOT_JNI_CALLOBJECTMETHODA_ENTRY(env, obj, (uintptr_t)methodID), 2.84 + HOTSPOT_JNI_CALLOBJECTMETHODA_RETURN(_ret_ref)) 2.85 DEFINE_CALLMETHODA(jint, Int, T_INT, 2.86 - HOTSPOT_JNI_CALLINTMETHOD_ENTRY(env, obj, (uintptr_t)methodID), 2.87 - HOTSPOT_JNI_CALLINTMETHOD_RETURN(_ret_ref)) 2.88 + HOTSPOT_JNI_CALLINTMETHODA_ENTRY(env, obj, (uintptr_t)methodID), 2.89 + HOTSPOT_JNI_CALLINTMETHODA_RETURN(_ret_ref)) 2.90 DEFINE_CALLMETHODA(jlong, Long, T_LONG 2.91 - , HOTSPOT_JNI_CALLLONGMETHOD_ENTRY(env, obj, (uintptr_t)methodID), 2.92 - HOTSPOT_JNI_CALLLONGMETHOD_RETURN(_ret_ref)) 2.93 + , HOTSPOT_JNI_CALLLONGMETHODA_ENTRY(env, obj, (uintptr_t)methodID), 2.94 + HOTSPOT_JNI_CALLLONGMETHODA_RETURN(_ret_ref)) 2.95 // Float and double probes don't return value because dtrace doesn't currently support it 2.96 DEFINE_CALLMETHODA(jfloat, Float, T_FLOAT 2.97 - , HOTSPOT_JNI_CALLFLOATMETHOD_ENTRY(env, obj, (uintptr_t)methodID), 2.98 - HOTSPOT_JNI_CALLFLOATMETHOD_RETURN()) 2.99 + , HOTSPOT_JNI_CALLFLOATMETHODA_ENTRY(env, obj, (uintptr_t)methodID), 2.100 + HOTSPOT_JNI_CALLFLOATMETHODA_RETURN()) 2.101 DEFINE_CALLMETHODA(jdouble, Double, T_DOUBLE 2.102 - , HOTSPOT_JNI_CALLDOUBLEMETHOD_ENTRY(env, obj, (uintptr_t)methodID), 2.103 - HOTSPOT_JNI_CALLDOUBLEMETHOD_RETURN()) 2.104 + , HOTSPOT_JNI_CALLDOUBLEMETHODA_ENTRY(env, obj, (uintptr_t)methodID), 2.105 + HOTSPOT_JNI_CALLDOUBLEMETHODA_RETURN()) 2.106 2.107 DT_VOID_RETURN_MARK_DECL(CallVoidMethod, HOTSPOT_JNI_CALLVOIDMETHOD_RETURN()); 2.108 DT_VOID_RETURN_MARK_DECL(CallVoidMethodV, HOTSPOT_JNI_CALLVOIDMETHODV_RETURN()); 2.109 @@ -3137,7 +3137,7 @@ 2.110 JNI_END 2.111 2.112 DEFINE_SETSTATICFIELD(jboolean, bool, Boolean, 'Z', z 2.113 - , HOTSPOT_JNI_SETBOOLEANFIELD_ENTRY(env, clazz, (uintptr_t)fieldID, value), 2.114 + , HOTSPOT_JNI_SETSTATICBOOLEANFIELD_ENTRY(env, clazz, (uintptr_t)fieldID, value), 2.115 HOTSPOT_JNI_SETBOOLEANFIELD_RETURN()) 2.116 DEFINE_SETSTATICFIELD(jbyte, byte, Byte, 'B', b 2.117 , HOTSPOT_JNI_SETSTATICBYTEFIELD_ENTRY(env, clazz, (uintptr_t) fieldID, value),
3.1 --- a/src/share/vm/runtime/synchronizer.cpp Mon Dec 07 13:25:13 2015 +0100 3.2 +++ b/src/share/vm/runtime/synchronizer.cpp Wed Dec 18 08:39:06 2013 +0100 3.3 @@ -121,7 +121,7 @@ 3.4 } \ 3.5 } 3.6 3.7 -#define HOTSPOT_MONITOR_PROBE_waited HOTSPOT_MONITOR_PROBE_WAITED 3.8 +#define HOTSPOT_MONITOR_PROBE_waited HOTSPOT_MONITOR_WAITED 3.9 3.10 #define DTRACE_MONITOR_PROBE(probe, monitor, obj, thread) \ 3.11 { \
4.1 --- a/src/share/vm/runtime/thread.cpp Mon Dec 07 13:25:13 2015 +0100 4.2 +++ b/src/share/vm/runtime/thread.cpp Wed Dec 18 08:39:06 2013 +0100 4.3 @@ -141,8 +141,8 @@ 4.4 4.5 #else /* USDT2 */ 4.6 4.7 -#define HOTSPOT_THREAD_PROBE_start HOTSPOT_THREAD_PROBE_START 4.8 -#define HOTSPOT_THREAD_PROBE_stop HOTSPOT_THREAD_PROBE_STOP 4.9 +#define HOTSPOT_THREAD_PROBE_start HOTSPOT_THREAD_START 4.10 +#define HOTSPOT_THREAD_PROBE_stop HOTSPOT_THREAD_STOP 4.11 4.12 #define DTRACE_THREAD_PROBE(probe, javathread) \ 4.13 { \