>This is the o/p I get with umem_status when I attach mdb to the process >running. > >Status: ready and active >Concurrency: 0 >Logs: (inactive) >Message buffer: >umem allocator: redzone violation: write past end of buffer >buffer=80c7c68 bufctl=80c8ce8 cache: umem_alloc_80
This error basically says: you have allocated an "X" (<= 80 bytes) of memory but you wrote more than 80 bytes in that buffer. The buffer was allocated from this point in your application: >previous transaction on buffer 80c7c68: >thread=1 time=T-0.000415973 slab=80b8ed8 cache: umem_alloc_80 >libumem.so.1'?? (0xfef99a48) >libumem.so.1'umem_cache_alloc+0xe1 >libumem.so.1'umem_alloc+0x3f >libumem.so.1'malloc+0x23 >ipfs_diff.exe'get_meta+0x28e <--- here >ipfs_diff.exe'active_out+0xb5 >ipfs_diff.exe'active+0xe0 >ipfs_diff.exe'main+0xd59 >ipfs_diff.exe'_start+0x80 And was freed here at which point the corruption was detected. >umem: heap corruption detected >stack trace: >libumem.so.1'?? (0xfef96099) >libumem.so.1'?? (0xfef98b1c) >libumem.so.1'umem_free+0xf6 >libumem.so.1'?? (0xfef97c05) >libumem.so.1'free+0x14 >ipfs_diff.exe'meta_free+0xbf >ipfs_diff.exe'active_out+0x44e >ipfs_diff.exe'active+0xe0 >ipfs_diff.exe'main+0xd59 >ipfs_diff.exe'_start+0x80 You could look at the buffer (+ 0t80) and see what was written there. Casper _______________________________________________ opensolaris-discuss mailing list [email protected]
