This is the mail archive of the gdb@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: stack corruption?


   Date: Tue, 14 Jun 2005 17:31:42 -0400
   From: Louis LeBlanc <dev@keyslapper.net>

   On 06/14/05 11:24 PM, Mark Kettenis sat at the `puter and typed:
   >    Date: Tue, 14 Jun 2005 16:52:12 -0400
   >    From: Louis LeBlanc <leblanc@keyslapper.net>
   >    BTW, I've seen problems in several applications while performing
   >    network lookups, not just my code, and not just C programs.  I got a
   >    couple created by Perl scripts a couple weeks ago and they were also
   >    in the middle of network lookups.  This makes me skeptical of the
   >    system libs, not my code and not gcc.  The real problem is that gdb
   >    tells me nothing useful in these cases, unless the corrupt stack
   >    message is a real issue with my code.
   > 
   > But unless you're going to send us a transcript of your debug session
   > with the *exact* messages, we won't be able to help you.


   Ok, here we go.

   $ gdb myprog cores/myprog.core.22367.1117114569
   GNU gdb 6.3.0.20050516-cvs
   Copyright 2004 Free Software Foundation, Inc.
   GDB is free software, covered by the GNU General Public License, and you are
   welcome to change it and/or distribute copies of it under certain conditions.
   Type "show copying" to see the conditions.
   There is absolutely no warranty for GDB.  Type "show warranty" for details.
   This GDB was configured as "sparc-sun-solaris2.8"...
   Core was generated by `myprog -c /opt/progHome/conf/myprog.conf'.
   Program terminated with signal 11, Segmentation fault.
   Reading symbols from /opt/oracle/8.1.7/lib/libclntsh.so.8.0...done.
   Loaded symbols for /opt/oracle/8.1.7/lib/libclntsh.so.8.0
   Reading symbols from /usr/lib/libnsl.so.1...done.
   Loaded symbols for /usr/lib/libnsl.so.1
   Reading symbols from /usr/lib/libsocket.so.1...done.
   Loaded symbols for /usr/lib/libsocket.so.1
   Reading symbols from /usr/lib/lwp/libthread.so.1...done.
   Loaded symbols for /usr/lib/lwp/libthread.so.1
   Reading symbols from /usr/lib/librt.so.1...done.
   Loaded symbols for /usr/lib/librt.so.1
   Reading symbols from /usr/lib/libresolv.so.2...done.
   Loaded symbols for /usr/lib/libresolv.so.2
   Reading symbols from /usr/lib/libc.so.1...done.
   Loaded symbols for /usr/lib/libc.so.1
   Reading symbols from /opt/oracle/8.1.7/lib/libwtc8.so...done.
   Loaded symbols for /opt/oracle/8.1.7/lib/libwtc8.so
   Reading symbols from /usr/lib/libgen.so.1...done.
   Loaded symbols for /usr/lib/libgen.so.1
   Reading symbols from /usr/lib/libdl.so.1...done.
   Loaded symbols for /usr/lib/libdl.so.1
   Reading symbols from /usr/lib/libsched.so.1...done.
   Loaded symbols for /usr/lib/libsched.so.1
   Reading symbols from /usr/lib/libaio.so.1...done.
   Loaded symbols for /usr/lib/libaio.so.1
   Reading symbols from /usr/lib/libm.so.1...done.
   Loaded symbols for /usr/lib/libm.so.1
   Reading symbols from /usr/lib/libmp.so.2...done.
   Loaded symbols for /usr/lib/libmp.so.2
   Reading symbols from /usr/platform/sun4u/lib/libc_psr.so.1...done.
   Loaded symbols for /usr/platform/SUNW,UltraSPARC-IIi-cEngine/lib/libc_psr.so.1
   Reading symbols from /usr/lib/nss_files.so.1...done.
   Loaded symbols for /usr/lib/nss_files.so.1
   Reading symbols from /usr/lib/nss_dns.so.1...done.
   Loaded symbols for /usr/lib/nss_dns.so.1
   #0  0xff024044 in ttcpip () from /opt/oracle/8.1.7/lib/libclntsh.so.8.0
   (gdb) bt
   #0  0xff024044 in ttcpip () from /opt/oracle/8.1.7/lib/libclntsh.so.8.0
   #1  0xff000470 in ttcdrv () from /opt/oracle/8.1.7/lib/libclntsh.so.8.0
   #2  0xfeeb81e0 in nioqwa () from /opt/oracle/8.1.7/lib/libclntsh.so.8.0
   #3  0xfed3b5cc in upirtrc () from /opt/oracle/8.1.7/lib/libclntsh.so.8.0
   #4  0xfed8b64c in kpurcsc () from /opt/oracle/8.1.7/lib/libclntsh.so.8.0
   #5  0xfed5b104 in kpuexecv8 () from /opt/oracle/8.1.7/lib/libclntsh.so.8.0
   #6  0xfed5d2d4 in kpuexec () from /opt/oracle/8.1.7/lib/libclntsh.so.8.0
   #7  0xfed9a318 in OCIStmtExecute () from /opt/oracle/8.1.7/lib/libclntsh.so.8.0
   #8  0x000e5234 in execute_statement (connID=1649752, stmntID=1, args=0xf827a650, dbTimingRec=0xf8279b80, inOpCode=19541) at dbase.c:873
   #9  0x0002e9f4 in handle_check (thread=0x759b70) at myprog.c:904
   #10 0x000e3134 in spawn (arg=0x759b70) at mythread.c:195
   #11 0xff354978 in _lwp_start () from /usr/lib/lwp/libthread.so.1
   #12 0xff354978 in _lwp_start () from /usr/lib/lwp/libthread.so.1
   Previous frame identical to this frame (corrupt stack?)
   (gdb) 

   I have changed identifying names to protect the guilty, but this is
   pretty much typical.

Oh, that's pretty harmless.  It's gdb falling off the end of the
stack.  Ideally gdb would now that it reached the end of the stack,
and not print the message.  But I haven't found a reliable way to do
so for Solaris SPARC. But then I haven't really tried very hard.

Mark


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]