Hi,
  I was looking at a userland core, where the tar program dumps core 
when it calls mempcy() routine
  of libc_psr library. The call to memcpy() is from a while loop, and 
during an iteration tar dumps
  core when it calls memcpy().
     While i was analysing the userland core, i found the following 
after dumping the instructions at
  libc_psr.so.1`memcpy+0x3d4.

 > libc_psr.so.1`memcpy+0x3d4::dis
libc_psr.so.1`memcpy+0x3ac:     0x248001a
libc_psr.so.1`memcpy+0x3b0:     sub       %o2, %o5, %o2
libc_psr.so.1`memcpy+0x3b4:     ldd       [%o1], %f2
libc_psr.so.1`memcpy+0x3b8:     subcc     %o5, 8, %o5
libc_psr.so.1`memcpy+0x3bc:     0x240000e
libc_psr.so.1`memcpy+0x3c0:     add       %o1, 8, %o1
libc_psr.so.1`memcpy+0x3c4:     0x89b00902
libc_psr.so.1`memcpy+0x3c8:     ldd       [%o1], %f0
libc_psr.so.1`memcpy+0x3cc:     subcc     %o5, 8, %o5
libc_psr.so.1`memcpy+0x3d0:     add       %o1, 0x10, %o1
libc_psr.so.1`memcpy+0x3d4:     std       %f4, [%o0]

 > !uname -a
SunOS line2-v480 5.10 Generic_120011-11 sun4u sparc SUNW,Sun-Fire-480R
 > !cat /etc/release
                     Solaris 10 8/07 s10s_u4wos_10 SPARC
         Copyright 2007 Sun Microsystems, Inc.  All Rights Reserved.
                      Use is subject to license terms.
                           Assembled 21 June 2007
 > ::status
debugging core file of tar (32-bit) from line2-v480
file: /usr/sbin/tar
initial argv: tar -xpf 10g.tar
threading model: multi-threaded
status: process terminated by SIGSEGV (Segmentation Fault)


 I am not sure why do we see an address at libc_psr.so.1`memcpy+0x3bc, 
instead of the usual mnemonic.
 Note, this core dump is the result of reproducing a bug on a sparc 
machine having S10U4. Can someone
 pls tell me *why* we don't see the mnemonic for the 3 instructions in 
the above output ? Pls respond to
  me directly since i am not yet a member of this alias.



TIA
--Arindam

Reply via email to