changeset 6421:fd94cbe7c5da

8049684: pstack crashes on java core dump Reviewed-by: sundar, sspitsyn
author kevinw
date Mon, 21 Jul 2014 10:40:50 +0100
parents b69c268f95b7
children 80dd07540dde
files src/os/bsd/dtrace/libjvm_db.c src/os/solaris/dtrace/libjvm_db.c
diffstat 2 files changed, 6 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/os/bsd/dtrace/libjvm_db.c	Fri Jul 25 10:42:05 2014 -0700
+++ b/src/os/bsd/dtrace/libjvm_db.c	Mon Jul 21 10:40:50 2014 +0100
@@ -260,6 +260,9 @@
   uint64_t base;
   int err;
 
+  /* Clear *vmp now in case we jump to fail: */
+  memset(vmp, 0, sizeof(VMStructEntry));
+
   err = ps_pglobal_lookup(J->P, LIBJVM_SO, "gHotSpotVMStructs", &sym_addr);
   CHECK_FAIL(err);
   err = read_pointer(J, sym_addr, &gHotSpotVMStructs);
--- a/src/os/solaris/dtrace/libjvm_db.c	Fri Jul 25 10:42:05 2014 -0700
+++ b/src/os/solaris/dtrace/libjvm_db.c	Mon Jul 21 10:40:50 2014 +0100
@@ -260,6 +260,9 @@
   uint64_t base;
   int err;
 
+  /* Clear *vmp now in case we jump to fail: */
+  memset(vmp, 0, sizeof(VMStructEntry));
+
   err = ps_pglobal_lookup(J->P, LIBJVM_SO, "gHotSpotVMStructs", &sym_addr);
   CHECK_FAIL(err);
   err = read_pointer(J, sym_addr, &gHotSpotVMStructs);