/hg/icedtea: 4 new changesets

andrew at icedtea.classpath.org andrew at icedtea.classpath.org
Wed Jun 17 18:58:36 UTC 2015


changeset 39645ba422d1 in /hg/icedtea
details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=39645ba422d1
author: Andrew John Hughes <gnu_andrew at member.fsf.org>
date: Wed Jun 17 17:18:02 2015 +0100

	PR2434: SystemTap support is no longer optional

	2015-06-16  Andrew John Hughes  <gnu_andrew at member.fsf.org>

		PR2434: SystemTap support is no longer optional
		* Makefile.am:
		(install-exec-local): Make tapset installation
		conditional on ENABLE_SYSTEMTAP to match
		creation in icedtea target.
		* NEWS: Updated.

	2012-11-07  Andrew John Hughes  <gnu_andrew at member.fsf.org>

		* INSTALL: Update SystemTap documentation.
		* README: Update SystemTap documentation.
		* configure.ac:
		Remove --enable-systemtap option.  Only
		issue a warning and not set
		ENABLE_SYSTEMTAP if sdt.h is not found
		or is outdated.


changeset 5273230094d3 in /hg/icedtea
details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=5273230094d3
author: Andrew John Hughes <gnu_andrew at member.fsf.org>
date: Wed Jun 17 17:20:36 2015 +0100

	PR2439: NSS PKCS11 regression - due to java.security automatic loading

	2015-06-16  Andrew John Hughes  <gnu_andrew at member.fsf.org>

		PR2439: NSS PKCS11 regression - due to java.security
		automatic loading
		* NEWS: Updated.

	2012-11-07  Andrew John Hughes  <gnu_andrew at member.fsf.org>

		* nss.cfg.in: Set handleStartupErrors
		to ignoreMultipleInitialisation so that our
		PKCS11 provider configuration is silently
		dropped if the user has already configured it.


changeset f1cbf91647dc in /hg/icedtea
details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=f1cbf91647dc
author: Andrew John Hughes <gnu_andrew at member.fsf.org>
date: Wed Jun 17 17:35:01 2015 +0100

	PR1975: Add garbage collection probes for SystemTap

	2012-10-24  Lukas Berk  <lberk at redhat.com>

		PR1975: Add garbage collection probes for SystemTap
		* Makefile.am:
		(EXTRA_DIST): Add tapset/hotspot_gc.stp.in.
		(stamps/icedtea.stamp): Build tapset/hotspot_gc.stp.
		(stamps/icedtea-debug.stamp): Likewise.
		* configure.ac: Generate tapset/hotspot_gc.stp.
		* tapset/hotspot_gc.stp.in:
		Systemtap tapset allowing use of GC probes more comfortablely.


changeset 9382763800e6 in /hg/icedtea
details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=9382763800e6
author: Andrew John Hughes <gnu_andrew at member.fsf.org>
date: Wed Jun 17 17:38:23 2015 +0100

	PR2256: Add SystemTap tests

	2012-03-14  Mark Wielaard  <mjw at redhat.com>

		PR2256: Add SystemTap tests
		* Makefile.am (EXTRA_DIST): Add tapset/jstack.stp.in.


diffstat:

 ChangeLog                |   48 ++++
 INSTALL                  |    8 +-
 Makefile.am              |   14 +
 NEWS                     |    2 +
 README                   |   13 +-
 configure.ac             |   46 +--
 nss.cfg.in               |    1 +
 tapset/hotspot_gc.stp.in |  534 +++++++++++++++++++++++++++++++++++++++++++++++
 8 files changed, 627 insertions(+), 39 deletions(-)

diffs (truncated from 808 to 500 lines):

diff -r 8e7d421dd92e -r 9382763800e6 ChangeLog
--- a/ChangeLog	Tue Jun 16 22:18:59 2015 +0100
+++ b/ChangeLog	Wed Jun 17 17:38:23 2015 +0100
@@ -1,3 +1,51 @@
+2012-03-14  Mark Wielaard  <mjw at redhat.com>
+
+	PR2256: Add SystemTap tests
+	* Makefile.am (EXTRA_DIST): Add tapset/jstack.stp.in.
+
+2012-10-24  Lukas Berk  <lberk at redhat.com>
+
+	PR1975: Add garbage collection probes for SystemTap
+	* Makefile.am:
+	(EXTRA_DIST): Add tapset/hotspot_gc.stp.in.
+	(stamps/icedtea.stamp): Build tapset/hotspot_gc.stp.
+	(stamps/icedtea-debug.stamp): Likewise.
+	* configure.ac: Generate tapset/hotspot_gc.stp.
+	* tapset/hotspot_gc.stp.in:
+	Systemtap tapset allowing use of GC probes more comfortablely.
+
+2015-06-17  Andrew John Hughes  <gnu_andrew at member.fsf.org>
+
+	PR2439: NSS PKCS11 regression - due to java.security
+	automatic loading
+	* NEWS: Updated.
+
+2012-11-07  Andrew John Hughes  <gnu_andrew at member.fsf.org>
+
+	* nss.cfg.in: Set handleStartupErrors
+	to ignoreMultipleInitialisation so that our
+	PKCS11 provider configuration is silently
+	dropped if the user has already configured it.
+
+2015-06-16  Andrew John Hughes  <gnu_andrew at member.fsf.org>
+
+	PR2434: SystemTap support is no longer optional
+	* Makefile.am:
+	(install-exec-local): Make tapset installation
+	conditional on ENABLE_SYSTEMTAP to match
+	creation in icedtea target.
+	* NEWS: Updated.
+
+2012-11-07  Andrew John Hughes  <gnu_andrew at member.fsf.org>
+
+	* INSTALL: Update SystemTap documentation.
+	* README: Update SystemTap documentation.
+	* configure.ac:
+	Remove --enable-systemtap option.  Only
+	issue a warning and not set
+	ENABLE_SYSTEMTAP if sdt.h is not found
+	or is outdated.
+
 2015-06-03  Andrew John Hughes  <gnu.andrew at member.fsf.org>
 
 	PR2433: ppc64le does not support -Xshare:dump
diff -r 8e7d421dd92e -r 9382763800e6 INSTALL
--- a/INSTALL	Tue Jun 16 22:18:59 2015 +0100
+++ b/INSTALL	Wed Jun 17 17:38:23 2015 +0100
@@ -29,7 +29,7 @@
 libffi (for --enable-zero or on archs other than x86/x86_64/sparc)
 pulseaudio-libs-devel >= 0.9.11 (for --enable-pulse-java)
 LLVM 2.5 or later (for --enable-shark)
-systemtap-sdl-devel >= 0.9.5 (for --enable-systemtap, Java method tracing requires systemtap >= 0.9.9)
+systemtap-sdl-devel >= 0.9.5 (Java method tracing requires systemtap >= 0.9.9)
 
 See ./configure --help if you need to override the defaults.
 
@@ -195,16 +195,14 @@
 =========
 
 IcedTea7 includes work to allow the existing DTrace probes included in
-OpenJDK to be used with SystemTap.  This is enabled using the
---enable-systemtap option, and requires version 0.9.5 or later (0.9.9
+OpenJDK to be used with SystemTap.  This requires version 0.9.5 or later (0.9.9
 or later if you want Java method tracing).  The tapset needs to know
-the final install location of the JDK, so the --with-abs-install-dir
+the final install location of the JDK, so the --with-abs-install-dir option
 should also be used to specify this.  If not set, it defaults to the
 in-tree location of openjdk.build/j2sdk-image and requires
 manual changes to tapset/hotspot.stp to work from elsewhere. For
 example, if you plan to install the resulting build in
 /usr/lib/jvm/java-1.6.0-openjdk, then you should specify
---enable-systemtap
 --with-abs-install-dir=/usr/lib/jvm/java-1.6.0-openjdk.
 
 NSS Security Provider
diff -r 8e7d421dd92e -r 9382763800e6 Makefile.am
--- a/Makefile.am	Tue Jun 16 22:18:59 2015 +0100
+++ b/Makefile.am	Wed Jun 17 17:38:23 2015 +0100
@@ -569,6 +569,8 @@
 	$(PULSEAUDIO_SRCS) fsg.sh autogen.sh \
 	tapset/hotspot.stp.in \
 	tapset/hotspot_jni.stp.in \
+	tapset/jstack.stp.in \
+	tapset/hotspot_gc.stp.in \
 	scripts/jni_create_stap.c \
 	scripts/jni_desc \
 	THANKYOU test/tapset \
@@ -1580,11 +1582,16 @@
 	  sed -e '/\/client\/libjvm.so/d' \
 	    < $(abs_top_builddir)/tapset/hotspot_jni.stp \
 	    > $(BUILD_SDK_DIR)/tapset/hotspot_jni.stp; \
+	  sed -e '/\/client\/libjvm.so/d' \
+	    < $(abs_top_builddir)/tapset/hotspot_gc.stp \
+	    > $(BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot_gc.stp; \
 	else \
 	  cp $(abs_top_builddir)/tapset/hotspot.stp \
 	    $(BUILD_SDK_DIR)/tapset/hotspot.stp; \
 	  cp $(abs_top_builddir)/tapset/hotspot_jni.stp \
 	    $(BUILD_SDK_DIR)/tapset/hotspot_jni.stp; \
+	  cp $(abs_top_builddir)/tapset/hotspot_gc.stp \
+	    $(BUILD_SDK_DIR)/tapset/hotspot_gc.stp; \
 	fi; \
 	cp $(abs_top_builddir)/tapset/jstack.stp \
 	  $(BUILD_SDK_DIR)/tapset/jstack.stp
@@ -1649,11 +1656,16 @@
 	  sed -e '/\/client\/libjvm.so/d' \
 	    < $(abs_top_builddir)/tapset/hotspot_jni.stp \
 	    > $(BUILD_DEBUG_SDK_DIR)/tapset/hotspot_jni.stp; \
+	  sed -e '/\/client\/libjvm.so/d' \
+	    < $(abs_top_builddir)/tapset/hotspot_gc.stp \
+	    > $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot_gc.stp; \
 	else \
 	  cp $(abs_top_builddir)/tapset/hotspot.stp \
 	    $(BUILD_DEBUG_SDK_DIR)/tapset/hotspot.stp; \
 	  cp $(abs_top_builddir)/tapset/hotspot_jni.stp \
 	    $(BUILD_DEBUG_SDK_DIR)/tapset/hotspot_jni.stp; \
+	  cp $(abs_top_builddir)/tapset/hotspot_gc.stp \
+	    $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot_gc.stp; \
 	fi; \
 	cp $(abs_top_builddir)/tapset/jstack.stp \
 	  $(BUILD_DEBUG_SDK_DIR)/tapset/jstack.stp
@@ -2381,9 +2393,11 @@
 	for files in $(BUILD_SDK_DIR)/jre/lib/ext/*.jar; do \
 	  $(INSTALL_DATA) $${files} $(DESTDIR)${prefix}/jre/lib/ext; \
 	done
+if ENABLE_SYSTEMTAP
 	for files in $(BUILD_SDK_DIR)/tapset/*.stp; do \
 	  $(INSTALL_DATA) $${files} $(DESTDIR)${prefix}/tapset; \
 	done
+endif
 	$(abs_top_builddir)/pax-mark-vm $(DESTDIR)${prefix}
 
 install-data-local:
diff -r 8e7d421dd92e -r 9382763800e6 NEWS
--- a/NEWS	Tue Jun 16 22:18:59 2015 +0100
+++ b/NEWS	Wed Jun 17 17:38:23 2015 +0100
@@ -106,6 +106,8 @@
   - PR2429: OpenJDK build does not copy a symlinked cacerts file
   - PR2432: ppc64 JIT doesn't support class data sharing
   - PR2433: ppc64le does not support -Xshare:dump
+  - PR2434: SystemTap support is no longer optional
+  - PR2439: NSS PKCS11 regression - due to java.security automatic loading
   - Don't substitute 'j' for '-j' inside -I directives
   - Extend 8041658 to all files in the HotSpot build.
   - Remove jcheck
diff -r 8e7d421dd92e -r 9382763800e6 README
--- a/README	Tue Jun 16 22:18:59 2015 +0100
+++ b/README	Wed Jun 17 17:38:23 2015 +0100
@@ -85,15 +85,14 @@
 SystemTap Support
 =================
 
-The --enable-systemtap configure option will try to find the systemtap
-runtime development files (sdt.h and the dtrace python script wrapper),
-enable compilation of static markers in the hotspot code and install a
-systemtap hotspot.stp tapset for easy tracing with systemtap's stap
-utility. The probes are documented in tapset/hotspot.stp.
+configure will try to find the systemtap runtime development files (sdt.h and
+the dtrace python script wrapper), enable compilation of static markers in the
+hotspot code and install a systemtap hotspot.stp tapset for easy tracing with
+systemtap's stap utility. The probes are documented in tapset/hotspot.stp.
 
-This requires the systemtap-sdt-devel package as build dependency and
+This requires the systemtap-sdt-devel package as a build dependency and
 optionally the systemtap package at run time when the user want to use
-the tapset to trace java programs. The probes have zero overhead when
+the tapset to trace Java programs. The probes have zero overhead when
 not used and can safely be compiled in even when not used at runtime.
 
 Support for Additional VMs
diff -r 8e7d421dd92e -r 9382763800e6 configure.ac
--- a/configure.ac	Tue Jun 16 22:18:59 2015 +0100
+++ b/configure.ac	Wed Jun 17 17:38:23 2015 +0100
@@ -79,14 +79,6 @@
 AM_CONDITIONAL([ENABLE_DOCS], [test x$ENABLE_DOCS = xyes])
 AC_MSG_RESULT(${ENABLE_DOCS})
 
-AC_MSG_CHECKING([whether to include SystemTap tracing support])
-AC_ARG_ENABLE([systemtap],
-	      [AS_HELP_STRING([--enable-systemtap],
-	      		      [Enable inclusion of SystemTap trace support])],
-	      [ENABLE_SYSTEMTAP="${enableval}"], [ENABLE_SYSTEMTAP='no'])
-AM_CONDITIONAL([ENABLE_SYSTEMTAP], [test x$ENABLE_SYSTEMTAP = xyes])
-AC_MSG_RESULT(${ENABLE_SYSTEMTAP})
-
 IT_LOCATE_NSS
 IT_GET_PKGVERSION
 IT_GET_LSB_DATA
@@ -220,14 +212,13 @@
 Try installing libXrender-devel.])
 fi
 
-if test "x${ENABLE_SYSTEMTAP}" = xyes; then
 AC_CHECK_HEADER([sys/sdt.h], [SDT_H_FOUND='yes'],
                 [SDT_H_FOUND='no';
-                   AC_MSG_ERROR([systemtap support needs sys/sdt.h header])])
+                   AC_MSG_WARN([systemtap support needs sys/sdt.h header])])
 
- AC_MSG_CHECKING([working sys/sdt.h and g++ support])
- AC_LANG_PUSH([C++])
- AC_LINK_IFELSE([AC_LANG_PROGRAM([[
+AC_MSG_CHECKING([working sys/sdt.h and g++ support])
+AC_LANG_PUSH([C++])
+AC_LINK_IFELSE([AC_LANG_PROGRAM([[
 #include <sys/sdt.h>
 class ProbeClass
 {
@@ -258,11 +249,12 @@
   DTRACE_PROBE1(_test_, call, i);
   ProbeClass inst = ProbeClass(i, "call");
   inst.method(24);
-]])], [AC_MSG_RESULT([yes])], [AC_MSG_ERROR([systemtap sdt.h or g++ too old])])
-  AC_LANG_POP([C++])
+]])], [AC_MSG_RESULT([yes])], [SDT_H_FOUND='no'; AC_MSG_WARN([systemtap sdt.h or g++ too old])])
+AC_LANG_POP([C++])
+AM_CONDITIONAL([ENABLE_SYSTEMTAP], [test x$SDT_H_FOUND = xyes])
 
-  AC_MSG_CHECKING([for absolute java home install dir])
-  AC_ARG_WITH([abs-install-dir],
+AC_MSG_CHECKING([for absolute java home install dir])
+AC_ARG_WITH([abs-install-dir],
 	      [AS_HELP_STRING([--with-abs-install-dir], 
 			      [The absolute path where the j2sdk-image dir will be installed])],
 	      [if test "x${withval}" = x; then
@@ -270,16 +262,16 @@
 	       else
 		 ABS_JAVA_HOME_DIR="${withval}"
 	       fi], [ABS_JAVA_HOME_DIR="${abs_top_builddir}/${OPENJDK_BUILD_DIR}/j2sdk-image"])
-  AC_MSG_RESULT([${ABS_JAVA_HOME_DIR}])
-  ABS_CLIENT_LIBJVM_SO="${ABS_JAVA_HOME_DIR}/jre/lib/${INSTALL_ARCH_DIR}/client/libjvm.so"
-  ABS_SERVER_LIBJVM_SO="${ABS_JAVA_HOME_DIR}/jre/lib/${INSTALL_ARCH_DIR}/server/libjvm.so"
-  AC_SUBST(ABS_JAVA_HOME_DIR)
-  AC_SUBST(ABS_CLIENT_LIBJVM_SO)
-  AC_SUBST(ABS_SERVER_LIBJVM_SO)
-  AC_CONFIG_FILES([tapset/hotspot.stp])
-  AC_CONFIG_FILES([tapset/hotspot_jni.stp])
-  AC_CONFIG_FILES([tapset/jstack.stp])
-fi
+AC_MSG_RESULT([${ABS_JAVA_HOME_DIR}])
+ABS_CLIENT_LIBJVM_SO="${ABS_JAVA_HOME_DIR}/jre/lib/${INSTALL_ARCH_DIR}/client/libjvm.so"
+ABS_SERVER_LIBJVM_SO="${ABS_JAVA_HOME_DIR}/jre/lib/${INSTALL_ARCH_DIR}/server/libjvm.so"
+AC_SUBST(ABS_JAVA_HOME_DIR)
+AC_SUBST(ABS_CLIENT_LIBJVM_SO)
+AC_SUBST(ABS_SERVER_LIBJVM_SO)
+AC_CONFIG_FILES([tapset/hotspot.stp])
+AC_CONFIG_FILES([tapset/hotspot_jni.stp])
+AC_CONFIG_FILES([tapset/jstack.stp])
+AC_CONFIG_FILES([tapset/hotspot_gc.stp])
 
 dnl Check for libXtst headers and libraries.
 PKG_CHECK_MODULES(XTST, xtst,[XTST_FOUND=yes],[XTST_FOUND=no])
diff -r 8e7d421dd92e -r 9382763800e6 nss.cfg.in
--- a/nss.cfg.in	Tue Jun 16 22:18:59 2015 +0100
+++ b/nss.cfg.in	Wed Jun 17 17:38:23 2015 +0100
@@ -2,3 +2,4 @@
 nssLibraryDirectory = @NSS_LIBDIR@
 nssDbMode = noDb
 attributes = compatibility
+handleStartupErrors = ignoreMultipleInitialisation
diff -r 8e7d421dd92e -r 9382763800e6 tapset/hotspot_gc.stp.in
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tapset/hotspot_gc.stp.in	Wed Jun 17 17:38:23 2015 +0100
@@ -0,0 +1,534 @@
+/*
+ * probe - gc_collect_contig_begin
+ * 
+ * @name: gc_collect_contig_begin
+ * @is_full: If TRUE, attempt a full collection of the generation.
+ *           Else; perform a scavenge
+ * @size: The collection should achieve a minimum region of available
+ *        memory to allow for an allocation of 'size'.
+ * @is_tlab: Is this a Thread Local Allocation Buffer?
+ *
+ * Description: This marks the start of a contiguous space generation collection.
+ * 
+ */
+
+probe hotspot.gc_collect_contig_begin = 
+  process("@ABS_CLIENT_LIBJVM_SO@").mark("gc__collection__contig__begin"),
+  process("@ABS_SERVER_LIBJVM_SO@").mark("gc__collection__contig__begin")
+{
+
+  name = "gc_collect_contig_begin";
+  is_full = $arg2;
+  size = $arg3;
+  is_tlab = $arg4;
+  probestr = sprintf("%s(is_full='%d', size='%d', is_tlab='%d')", name, is_full, size, is_tlab);
+
+}
+
+/*
+ * probe - gc_collect_contig_end
+ * 
+ * @name: gc_collect_contig_end_
+ * @is_full: If TRUE, attempt a full collection of the generation.
+ *           Else; perform a scavenge.
+ * @size: The collection should achieve a minimum region of available
+ *        memory to allow for an allocation of 'size'.
+ * @is_tlab: Is this a Thread Local Allocation Buffer?
+ *
+ * Description: This marks the end of a contiguous space generation collection.
+ * 
+ */
+
+probe hotspot.gc_collect_contig_end = 
+  process("@ABS_CLIENT_LIBJVM_SO@").mark("gc__collection__contig__end"),
+  process("@ABS_SERVER_LIBJVM_SO@").mark("gc__collection__contig__end")
+{
+
+  name = "gc_collect_contig_end";
+  is_full = $arg2;
+  size = $arg3;
+  is_tlab = $arg4;
+  probestr = sprintf("%s(is_full='%d', size='%d', is_tlab='%d')", name, is_full, size, is_tlab);
+
+}
+
+/*
+ * probe - gc_collect_parnew_begin
+ * 
+ * @name: gc_collect_parnew_begin
+ * @is_full: If TRUE, attempt a full collection of the generation.
+ *           Else; perform a scavenge
+ * @size: The collection should achieve a minimum region of available
+ *        memory to allow for an allocation of 'size'.
+ * @is_tlab: Is this a Thread Local Allocation Buffer?
+ *
+ * Description: This marks the beginning of a parallel collection of a new 
+ * generation.
+ * 
+ */
+
+probe hotspot.gc_collect_parnew = 
+  process("@ABS_CLIENT_LIBJVM_SO@").mark("gc__collection__parnew__begin"),
+  process("@ABS_SERVER_LIBJVM_SO@").mark("gc__collection__parnew__begin")
+{
+
+  name = "gc_collect_parnew_begin";
+  is_full = $arg2;
+  size = $arg3;
+  is_tlab = $arg4;
+  probestr = sprintf("%s(is_full='%d', size='%d', is_tlab='%d')", name, is_full, size, is_tlab);
+
+}
+
+/*
+ * probe - gc_collect_parnew_end
+ * 
+ * @name: gc_collect_parnew_end
+ * @is_full: If TRUE, attempt a full collection of the generation.
+ *           Else; perform a scavenge
+ * @size: The collection should achieve a minimum region of available
+ *        memory to allow for an allocation of 'size'.
+ * @is_tlab: Is this a Thread Local Allocation Buffer?
+ *
+ * Description: This marks the end of a parallel collection of a new 
+ * generation.
+ * 
+ */
+
+probe hotspot.gc_collect_parnew_end = 
+  process("@ABS_CLIENT_LIBJVM_SO@").mark("gc__collection__parnew__end"),
+  process("@ABS_SERVER_LIBJVM_SO@").mark("gc__collection__parnew__end")
+{
+
+  name = "gc_collect_parnew_end";
+  is_full = $arg2;
+  size = $arg3;
+  is_tlab = $arg4;
+  probestr = sprintf("%s(is_full='%d', size='%d', is_tlab='%d')", name, is_full, size, is_tlab);
+
+}
+
+/*
+ * probe - gc_collect_defnew_begin
+ * 
+ * @name: gc_collect_defnew_begin
+ * @is_full: If TRUE, attempt a full collection of the generation.
+ *           Else; perform a scavenge
+ * @size: The collection should achieve a minimum region of available
+ *        memory to allow for an allocation of 'size'.
+ * @is_tlab: Is this a Thread Local Allocation Buffer?
+ *
+ * Description: This marks the start of a newly defined generation
+ * collection
+ * 
+ */
+
+probe hotspot.gc_collect_defnew_begin = 
+  process("@ABS_CLIENT_LIBJVM_SO@").mark("gc__collection__defnew__begin"),
+  process("@ABS_SERVER_LIBJVM_SO@").mark("gc__collection__defnew__begin")
+{
+
+  name = "gc_collect_defnew_begin";
+  is_full = $arg2;
+  size = $arg3;
+  is_tlab = $arg4;
+  probestr = sprintf("%s(is_full='%d', size='%d', is_tlab='%d')", name, is_full, size, is_tlab);
+
+}
+
+/*
+ * probe - gc_collect_defnew_end
+ * 
+ * @name: gc_collect_defnew_end
+ * @is_full: If TRUE, attempt a full collection of the generation.
+ *           Else; perform a scavenge
+ * @size: The collection should achieve a minimum region of available
+ *        memory to allow for an allocation of 'size'.
+ * @is_tlab: Is this a Thread Local Allocation Buffer?
+ *
+ * Description: This marks the end of a newly defined generation
+ * collection
+ * 
+ */
+
+probe hotspot.gc_collect_defnew_end = 
+  process("@ABS_CLIENT_LIBJVM_SO@").mark("gc__collection__defnew__end"),
+  process("@ABS_SERVER_LIBJVM_SO@").mark("gc__collection__defnew__end")
+{
+
+  name = "gc_collect_defnew_end";
+  is_full = $arg2;
+  size = $arg3;
+  is_tlab = $arg4;
+  probestr = sprintf("%s(is_full='%d', size='%d', is_tlab='%d')", name, is_full, size, is_tlab);
+
+}
+
+/*
+ * probe - gc_collect_tenured_begin
+ * 
+ * @name: gc_collect_tenured_begin
+ * @is_full: If TRUE, attempt a full collection of the generation.
+ *           Else; perform a scavenge
+ * @size: The collection should achieve a minimum region of available
+ *        memory to allow for an allocation of 'size'.
+ * @is_tlab: Is this a Thread Local Allocation Buffer?
+ *
+ * Description: This is the start of a collection of a tenured generation
+ * (a generation that has survived multiple garbage collections and is 
+ * now in a 'tenured' object space.
+ * 
+ */
+
+probe hotspot.gc_collect_tenured_begin = 
+  process("@ABS_CLIENT_LIBJVM_SO@").mark("gc__collection__tenured__begin"),
+  process("@ABS_SERVER_LIBJVM_SO@").mark("gc__collection__tenured__begin")
+{
+
+  name = "gc_collect_tenured_begin";
+  is_full = $arg2;
+  size = $arg3;
+  is_tlab = $arg4;
+  probestr = sprintf("%s(is_full='%d', size='%d', is_tlab='%d')", name, is_full, size, is_tlab);
+
+}
+
+/*
+ * probe - gc_collect_tenured_end
+ * 
+ * @name: gc_collect_tenured_end
+ * @is_full: If TRUE, attempt a full collection of the generation.
+ *           Else; perform a scavenge
+ * @size: The collection should achieve a minimum region of available
+ *        memory to allow for an allocation of 'size'.
+ * @is_tlab: Is this a Thread Local Allocation Buffer?
+ *
+ * Description: This is the end of a collection of a tenured generation
+ * (a generation that has survived multiple garbage collections and is 
+ * now in a 'tenured' object space.
+ * 
+ */
+
+probe hotspot.gc_collect_tenured_end = 
+  process("@ABS_CLIENT_LIBJVM_SO@").mark("gc__collection__tenured__end"),
+  process("@ABS_SERVER_LIBJVM_SO@").mark("gc__collection__tenured__end")
+{
+
+  name = "gc_collect_tenured_end";
+  is_full = $arg2;
+  size = $arg3;
+  is_tlab = $arg4;
+  probestr = sprintf("%s(is_full='%d', size='%d', is_tlab='%d')", name, is_full, size, is_tlab);
+
+}
+
+/*
+ * probe - gc_collect_parallel_scavenge_heap_begin


More information about the distro-pkg-dev mailing list