Can't attach core image through SA tools

Yasumasa Suenaga suenaga.yasumasa at
Tue Jan 31 02:32:05 PST 2012


I've tried attach a corefile with jstack. However, I couldn't.

I guess that this problem is caused by incorrect address mapping of .
I've made a patch which is attached this email. And I've been able to get correct thread stack with jstack.

So, I'd like to contribute this patch, and I'd like to backport to JDK6/7 .
Could you help me?

------ details ------

I got these messages then I ran jstack with LIBSAPROC_DEBUG environment variable:



libsaproc DEBUG: reading library /usr/lib/jvm/java-1.7.0-openjdk- @ 0x7f53b455a000 [ 0x7f53b455a000 ]
libsaproc DEBUG: ---- sorted virtual address map ----


libsaproc DEBUG: base = 0x7f53b455a000  size = 9993772
libsaproc DEBUG: base = 0x7f53b455a000  size = 4096


libsaproc DEBUG: can't locate map_info at 0x7f53b4dbe000
libsaproc DEBUG: core read failed for 4096 byte(s) @ 0x7f53b4dbe000 (4096 more bytes)


/*************************/ tries to read library address, and it is duplicated.
I read Linux kernel source code of function of core dump, and I found these comment:

source code: kernel-3.2.1-3.fc16.src.rpm (Fedora16 x86_64)
in fs/binfmt_elf.c: static unsigned long vma_dump_size(struct vm_area_struct *vma, unsigned long mm_flags)
         * If this looks like the beginning of a DSO or executable mapping,
         * check for an ELF header.  If we find one, dump the first page to
         * aid in determining what was mapped here.

In fact, core image has executable load section which size is 1 page(0x1000)
  LOAD           0x0000000005173000 0x00007f53b455a000 0x0000000000000000
                 0x0000000000001000 0x0000000000988000  R E    1000

So, we must think these case when we attach core image.
I modified "read_lib_segments()" in hotspot/agent/src/os/linux/ps_core.c to overwrite
correct address in shared library .

Please check it.


-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: address_mapping.patch

More information about the serviceability-dev mailing list