This is from a different machine/build than the one I previously gave
pstack and pmap output from...this environment is a bit more complex as
there are a few more shared libs involved, but it's the same symptom and
it's what I have available to me at the moment.
I assume that you only want the dump of the address in the free call...
> ::umem_status
Status: ready and active
Concurrency: 4
Logs: transaction=128k
Message buffer:
free(f1fd2860): invalid or corrupted buffer
stack trace:
libumem.so.1'free+0x54
libCrun.so.1'__1c2k6Fpv_v_+0x4
libCstd_isa.so.1'__1cDstdMbasic_string4Ccn0ALchar_traits4Cc__n0AJallocat
or4Cc___2G6Mrk1_r1_+0x
a8
libCstd.so.1'__1cH__rwstdNlocale_vector4nDstdMbasic_string4Ccn0BLchar_tr
aits4Cc__n0BJallocator
4Cc_____Gresize6MIn0E__p3_+0xbc
libCstd.so.1'__1cH__rwstdKlocale_imp2t5B6MII_v_+0xb0
libCstd.so.1'__1cDstdGlocaleEinit6F_v_+0x40
libCstd.so.1'__1cDstdNbasic_istream4Ccn0ALchar_traits4Cc___2t6Mn0AIios_b
aseJEmptyCtor__v_+0x70
libCstd.so.1'?? (0xef875020)
libCstd.so.1'?? (0xef876108)
libCstd.so.1'_init+0x1e0
ld.so.1'?? (0xff3c0254)
ld.so.1'?? (0xff3c56d4)
ld.so.1'?? (0xff3c5818)
ld.so.1'dlopen+0xac
libhpi.so'?? (0xfed52344)
libjvm.so'JVM_LoadLibrary+0xe8
libjava.so'Java_java_lang_ClassLoader_00024NativeLibrary_load+0xe8
?? (0xfac0bbc8)
?? (0xfac05c64)
?? (0xfac05a44)
?? (0xfac05c64)
?? (0xfac05c64)
?? (0xfac05c64)
?? (0xfac00118)
libjvm.so'?? (0xfe8d4b48)
libjvm.so'?? (0xfe8ecaf8)
libjvm.so'?? (0xfe988d3c)
java'main+0x1560
java'_start+0x108
> f1fd2860::whatis
f1fd2860 is unknown
> f1fd2860-8,20::dump
0 1 2 3 4 5 6 7 \/ 9 a b c d e f 01234567v9abcdef
f1fd2850: f092aa40 f092c138 f0929ad8 00000001 ... at ...8........
f1fd2860: 00000000 00000000 00000000 00000000 ................
f1fd2870: 00000000 00000000 ffffffff 00000000 ................
pmap of this core:
core 'core' of 9412: java -cp . foo
00010000 40K r-x-- /usr/j2se/bin/java
00028000 8K rwx-- /usr/j2se/bin/java
0002A000 2200K rwx-- [ heap ]
EF780000 1376K r-x-- /usr/lib/libCstd.so.1
EF8E6000 32K rwx-- /usr/lib/libCstd.so.1
EF8EE000 8K rwx-- /usr/lib/libCstd.so.1
EF900000 3464K r-x--
/usr/local/galaxy-2.3X/lib/libvgalaxy-unicode.so.7
EFC70000 152K rwx--
/usr/local/galaxy-2.3X/lib/libvgalaxy-unicode.so.7
EFC96000 80K rwx--
/usr/local/galaxy-2.3X/lib/libvgalaxy-unicode.so.7
EFD00000 1976K r-x--
/home/matrix/xerces/xerces-c-src2_1_0/lib/libxerces-c.so.21.0
EFEFC000 648K rwx--
/home/matrix/xerces/xerces-c-src2_1_0/lib/libxerces-c.so.21.0
EFF9E000 8K rwx--
/home/matrix/xerces/xerces-c-src2_1_0/lib/libxerces-c.so.21.0
F0000000 32040K r-x--
/home/matrix/ds-10.7.0.0/MXD-10700/bin/solaris4/libeMatrix.so
F1F58000 960K rwx--
F2048000 24K rwx--
F2100000 560K r-x-- /usr/openwin/lib/libX11.so.4
F219C000 24K rwx-- /usr/openwin/lib/libX11.so.4
F2200000 640K r----
F237E000 8K rwx--
F247E000 8K rwx--
F257E000 8K rwx--
F267E000 8K rwx--
F277C000 16K rwx--
F2800000 2176K rwx--
F2F10000 1408K rwx--
F6800000 4096K rwx--
FA8FC000 16K rwx--
FA920000 112K r-x-- /usr/lib/cpu/sparcv8plus/libCstd_isa.so.1
FA94A000 16K rwx-- /usr/lib/cpu/sparcv8plus/libCstd_isa.so.1
FA960000 24K r-x-- /usr/lib/libpthread.so.1
FA976000 8K rwx-- /usr/lib/libpthread.so.1
FA9FE000 8K rwx--
FAA10000 8K rwx--
FAA20000 96K r-x-- /usr/openwin/lib/libXext.so.0
FAA48000 8K rwx-- /usr/openwin/lib/libXext.so.0
FAA50000 16K rwx--
FAA80000 8K rwx--
FAAB0000 8K rwx--
FAAB2000 16K rwx--
FAAD0000 8K rwx--
FAAF0000 8K rwx--
FAB00000 8K rwx--
FAB90000 8K rwx--
FABA0000 248K r-x-- /usr/lib/libresolv.so.2
FABEE000 16K rwx-- /usr/lib/libresolv.so.2
FAC00000 160K rwx--
FAC28000 32K rwx--
FAC30000 32K rwx--
FAC38000 32K rwx--
FAC40000 32K rwx--
FAC48000 32K rwx--
FAC50000 32K rwx--
FAC58000 32K rwx--
FAC60000 32K rwx--
FAC68000 32K rwx--
FAC70000 32K rwx--
FAC78000 32K rwx--
FCC10000 24K r-x-- /usr/lib/librpcsvc.so.1
FCC26000 8K rwx-- /usr/lib/librpcsvc.so.1
FCC30000 8K rwx--
FCC40000 64K r-x--
/home/matrix/ds-10.7.0.0/MXD-10700/lib/solaris4/libmxUtil.so
FCC5E000 8K rwx--
FCC70000 24K r-x--
/home/matrix/ds-10.7.0.0/MXD-10700/lib/solaris4/libmxDriver.so
FCC84000 16K rwx--
/home/matrix/ds-10.7.0.0/MXD-10700/lib/solaris4/libmxDriver.so
FCC90000 376K r----
FCD00000 2848K r----
FCFE0000 8K r-x--
/home/matrix/ds-10.7.0.0/MXD-10700/lib/solaris4/libmxCipher.so
FCFF0000 8K rwx--
/home/matrix/ds-10.7.0.0/MXD-10700/lib/solaris4/libmxCipher.so
FD000000 23384K r----
FE6E0000 8K r-x-- /usr/lib/libw.so.1
FE6F0000 8K r-x-- /usr/lib/libintl.so.1
FE700000 120K r----
FE730000 120K r----
FE760000 56K r----
FE780000 456K r----
FE800000 384K r-x-- /usr/j2se/jre/lib/sparc/client/libjvm.so
FE860000 8K rwx--
FE862000 200K r-x--
FE894000 8K rwx--
FE896000 40K r-x--
FE8A0000 8K rwx--
FE8A2000 56K r-x--
FE8B0000 16K rwx--
FE8B4000 48K r-x--
FE8C0000 16K rwx--
FE8C4000 56K r-x--
FE8D2000 8K rwx--
FE8D4000 8K r-x--
FE8D6000 16K rwx--
FE8DA000 8K r-x--
FE8DC000 8K rwx--
FE8DE000 32K r-x--
FE8E6000 8K rwx--
FE8E8000 8K r-x--
FE8EA000 8K rwx--
FE8EC000 24K r-x--
FE8F2000 8K rwx--
FE8F4000 72K r-x--
FE906000 8K rwx--
FE908000 336K r-x--
FE95C000 16K rwx--
FE960000 1896K r-x--
FEB3A000 8K rwx--
FEB3C000 872K r-x--
FEC26000 128K rwx-- /usr/j2se/jre/lib/sparc/client/libjvm.so
FEC46000 56K rwx-- /usr/j2se/jre/lib/sparc/client/libjvm.so
FEC60000 16K r-x--
/usr/lib/locale/en_US.ISO8859-1/en_US.ISO8859-1.so.2
FEC72000 16K rwx--
/usr/lib/locale/en_US.ISO8859-1/en_US.ISO8859-1.so.2
FEC80000 16K r----
FEC90000 80K r----
FECB0000 64K r-x-- /usr/j2se/jre/lib/sparc/libzip.so
FECC0000 8K rwx-- /usr/j2se/jre/lib/sparc/libzip.so
FECD0000 8K rwx--
FECE0000 136K r-x-- /usr/j2se/jre/lib/sparc/libjava.so
FED12000 8K rwx-- /usr/j2se/jre/lib/sparc/libjava.so
FED20000 88K r-x-- /usr/j2se/jre/lib/sparc/libverify.so
FED46000 8K rwx-- /usr/j2se/jre/lib/sparc/libverify.so
FED50000 40K r-x--
/usr/j2se/jre/lib/sparc/native_threads/libhpi.so
FED6A000 8K rwx--
/usr/j2se/jre/lib/sparc/native_threads/libhpi.so
FED6C000 8K rwx--
/usr/j2se/jre/lib/sparc/native_threads/libhpi.so
FEE74000 16K rwx--
FEE7A000 8K rwx--
FEE90000 96K r----
FEEB0000 112K rw---
FEED0000 16K r-x-- /usr/lib/libmp.so.2
FEEE4000 8K rwx-- /usr/lib/libmp.so.2
FEEF0000 8K rwx--
FEF00000 568K r-x-- /usr/lib/libnsl.so.1
FEF9E000 40K rwx-- /usr/lib/libnsl.so.1
FEFA8000 24K rwx-- /usr/lib/libnsl.so.1
FEFC0000 224K r-x-- /usr/lib/libm.so.1
FF006000 8K rwx-- /usr/lib/libm.so.1
FF010000 48K r-x-- /usr/lib/libCrun.so.1
FF02A000 8K rwx-- /usr/lib/libCrun.so.1
FF02C000 16K rwx-- /usr/lib/libCrun.so.1
FF040000 136K r-x-- /usr/lib/libdemangle.so.1
FF070000 8K rwx-- /usr/lib/libdemangle.so.1
FF072000 40K rwx-- /usr/lib/libdemangle.so.1
FF080000 688K r-x-- /usr/lib/libc.so.1
FF13C000 32K rwx-- /usr/lib/libc.so.1
FF150000 40K r-x-- /usr/lib/libsocket.so.1
FF16A000 8K rwx-- /usr/lib/libsocket.so.1
FF176000 8K rwx--
FF180000 16K rw---
FF190000 96K r-x-- /usr/lib/libthread.so.1
FF1B8000 8K rwx-- /usr/lib/libthread.so.1
FF1BA000 8K rwx-- /usr/lib/libthread.so.1
FF1C0000 80K r-x-- /usr/lib/libumem.so.1
FF1E4000 16K rwx-- /usr/lib/libumem.so.1
FF1E8000 32K rwx-- /usr/lib/libumem.so.1
FF200000 688K r-x-- /usr/lib/libc.so.1
FF2BC000 32K rwx-- /usr/lib/libc.so.1
FF2D0000 16K rw---
FF2E0000 8K rwx--
FF2F0000 8K r-x-- /usr/platform/sun4u-us3/lib/libc_psr.so.1
FF2FA000 8K rwx-- /usr/lib/libdl.so.1
FF300000 8K rwx--
FF310000 208K r-x-- /usr/lib/libld.so.2
FF354000 8K rwx-- /usr/lib/libld.so.2
FF356000 8K rwx-- /usr/lib/libld.so.2
FF360000 112K r-x-- /usr/lib/liblddbg.so.4
FF38C000 8K rwx-- /usr/lib/liblddbg.so.4
FF3A0000 8K r-x-- /usr/platform/sun4u-us3/lib/libc_psr.so.1
FF3B0000 184K r-x-- /usr/lib/ld.so.1
FF3EE000 8K rwx-- /usr/lib/ld.so.1
FF3F0000 8K rwx-- /usr/lib/ld.so.1
FF3FA000 8K rwx-- /usr/lib/libdl.so.1
FFB80000 24K -----
FFBF4000 48K rwx-- [ stack ]
Thanks,
Clark
-----Original Message-----
From: Jonathan Adams [mailto:[email protected]]
Sent: Monday, March 06, 2006 6:14 PM
To: Milliken, Clark
Cc: David McDaniel (damcdani); Rod.Evans at sun.com;
tools-linking at opensolaris.org
Subject: Re: [tools-linking] shared lib using libCstd under java
On Mon, Mar 06, 2006 at 06:06:36PM -0500, Milliken, Clark wrote:
> Optimized builds crash consistently with or without libumem. Debug
> builds only crash with libumem. It's the same stack for both...
Alright; what is the output of:
% mdb core
...
> ::umem_status
Also, look at the ::umem_status output; take the hex number between the
parenthesis, and do:
> number::whatis
> number-8,20::dump
With the output from all of that, I can tell you why umem is barfing.
Cheers,
- jonathan
> -----Original Message-----
> From: Jonathan Adams [mailto:jonathan.adams at sun.com]
> Sent: Monday, March 06, 2006 6:05 PM
> To: David McDaniel (damcdani)
> Cc: Rod.Evans at sun.com; Milliken, Clark; tools-linking at opensolaris.org
> Subject: Re: [tools-linking] shared lib using libCstd under java
>
> On Mon, Mar 06, 2006 at 02:55:13PM -0800, David McDaniel (damcdani)
> wrote:
> > IIRC, the original traceback showed the abort due to umem
determining
> a
> > deallocation was a duplicate or invalid buffer. Preloading libCstd
> would
> > result in umem being usurped by libc, would it not? And thus the
> > presumed double free isnt caught. Maybe the umem noabort flag might
be
> > worth trying, without the libCstd preload.
>
> The umem noabort flag should only be used as a last resort; there is
> still
> an unresolved problem here.
>
> Does the program crash without libumem?
>
> Cheers,
> - jonathan
>
> > > -----Original Message-----
> > > From: tools-linking-bounces at opensolaris.org
> > > [mailto:tools-linking-bounces at opensolaris.org] On Behalf Of Rod
> Evans
> > > Sent: Monday, March 06, 2006 4:33 PM
> > > To: Milliken, Clark
> > > Cc: tools-linking at opensolaris.org
> > > Subject: Re: [tools-linking] shared lib using libCstd under java
> > >
> > > Milliken, Clark wrote:
> > > > Removing the -Bsymbolic option has no effect.
> > > >
> > > > I created a test prog, that just does just does a:
> > > >
> > > > dlopen(...,RTLD_NOW | RTLD_GLOBAL) and that works fine.
> > > >
> > > > Another tid-bit...
> > > >
> > > > If I LD_PRELOAD=libCstd.so.1, my crash goes away.
> > >
> > > You don't happen to have two different versions of libCstd
> > > being loaded in the process do you? What does a pmap of the
> > > core file reveal?
> > >
> > > If not, then one of the C++/iostreams experts on this alias
> > > will hopefully provide more information.
> > >
> > > --
> > > Rod
> > > _______________________________________________
> > > tools-linking mailing list
> > > tools-linking at opensolaris.org
> > >
> > _______________________________________________
> > tools-linking mailing list
> > tools-linking at opensolaris.org
>
> --
> Jonathan Adams, Solaris Kernel Development
--
Jonathan Adams, Solaris Kernel Development