+1
On Friday 18 July 2014 05:32 PM, Kevin Walls wrote:
Hi,
May I get a review of this little change:
pstack can crash on a Java core, where the core is transported from
one machine to another, and they have different JDKs but in the same
directory location. So pstack does find libjvm etc, and does find
libjvm_db.so (but clearly symbols are not going to be good).
libjvm_db.c's parse_vmstructs fails early, after the call to libproc's
ps_pglobal_lookup(), which is before it has cleared its VMStructEntry,
which it will then test for non-null pointers in a few fields, and
free them (bad).
Seen on Solaris, though the same problem is in the bsd code.
bug
https://bugs.openjdk.java.net/browse/JDK-8049684
webrev
http://cr.openjdk.java.net/~kevinw/8049684/webrev.01/
I can reproduce this with a script, but it is time-consuming to
copy/unpack different JDKs in place, generate a core, replace the JDK,
run pstack. Does not seem appropriate to add as a regression test
given the simple change.
Thanks
Kevin