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

Reply via email to