[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference turris::digital_unix

Title:DIGITAL UNIX(FORMERLY KNOWN AS DEC OSF/1)
Notice:Welcome to the Digital UNIX Conference
Moderator:SMURF::DENHAM
Created:Thu Mar 16 1995
Last Modified:Fri Jun 06 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:10068
Total number of notes:35879

9610.0. "Does this address mean anything?" by TAMARA::NEUMAN::Neumann (Stan Neumann) Thu Apr 24 1997 10:33

We've had a customer report problems with a segmentation
fault, with a very strange stack trace.  We saw a similar 
problem once before, and it went away, I think when we changed
the debug options on the compiler.  (For the record, we
are currently compiling with the -g switch, then stripping
debug symbols from the images).

The stack trace is below - the address on the top of the
stack (the bottom of the list) is unusual - does this
provide any clues as to what is happening?  (I think they
are running on some flavor of UNIX 3.2)

#1 PC==0x12015b9fc in void ErmHolder::logIt(void) "erm.cxx":1194 { break }
#2 PC==0x12015cd7c in void ErmHolder::handle(void) "erm.cxx":1655 { break }
#3 PC==0x12015bcc4 in void fatalSigHndlr(int) "erm.cxx":1285 { break }
#4 PC==0x3ff8051d4c4 in ??? { break }
#5 PC==0x400000800000000 in ??? { break }

-Stan Neumann

(Note: this is a different customer from note 9580)
T.RTitleUserPersonal
Name
DateLines
9610.1QUARRY::nethCraig NethThu Apr 24 1997 12:085
It looks like the sort of address you see when broken code corrupts the saved
return address on the stack.

These can be fun to debug.   Check for running off the ends of arrays and
mismatched structure assignments, for a start.   
9610.2Maybe try ATOM 'third degree' ?DECC::SULLIVANJeff SullivanThu Apr 24 1997 13:5524
Re .1:
> It looks like the sort of address you see when broken code corrupts the saved
> return address on the stack.

> These can be fun to debug.   Check for running off the ends of arrays and
> mismatched structure assignments, for a start.

This is probably it and "fun" is in they eye of the beholder.

I've sometimes found that using ATOM "third degree" will help point out memory
overwrites. This is certainly one of the first things I would try.

   See man atom(1) and man third(5) on a V4.0* system.
   See also http://www.zk3.dec.com/dude/program_analysis/

ATOM will probably not uncover a mismatched structure assignment, though, and
I've seen those cause this type of problem more than a few times in the past.

I think compiling the code -g (-O0) is really just covering up a bug, either in
the compiler or more probably, in the source code.

Have "fun"!

-Jeff
9610.3Different customer; strikingly similar problem... :-}WTFN::SCALESDespair is appropriate and inevitable.Thu Apr 24 1997 16:478
.0> this is a different customer from note 9580

*grin*  But it IS just the sort of thing which could have resulted in a an
illegal instruction fault if the address hadn't been invalid (which is what
caused the SEGV) and had instead pointed to data...  8-)


				Webb