[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index][Thread Index][Top&Search][Original]

Re: Apache 1.3.9 + mod_perl 1.21 + Solaris 2.7 dumps core



On Thu, Jan 13, 2000 at 09:53:59PM +0000, Alan Burlison wrote:
> > > *PL_markstack_ptr=7
> > >
> > > Obviously PL_markstack_ptr is bogus
> > 
> > Looks perfectly normal to me.
> > 
> >   PERLVAR(Tmarkstack_ptr,       I32 *)
> > 
> > It is an integer offset.
> 
> Yes, I guessed it was an offset, but it looks suspiciously negatively
> large to me, and it does cause a SEGV.  Given that this is a top-level
> sub call, a stack offset (ax) of -316718320 got me worried.

What I see is 7.  mark look bogus, though.

> This is one of those horrible cases where it's not at all clear where
> the problem is - Apache, perl or mod_perl.

My feeling nowadays is that the problem is the horribly wrong semantic
of dynaloading on many Unixes.  For many years I was cursing "stupid
IBM scheme of symbol resolution at link time", which forces creation
of the lists of exported symbols for each DLL you want to build.
(Which is a portablility nightmare.)

Nowadays I appreciate the foresight and consistence of IBM engineers
(who should have been under attack for this choice from many 
clueless developers): the situation when you cannot know to which
function a particular name will be resolved at runtime is not possible
with their architecture: dynalinking behaves exactly the same as
static linking.

ILya


Follow-Ups from:
Alan Burlison <Alan.Burlison@uk.sun.com>
References to:
Ilya Zakharevich <ilya@math.ohio-state.edu>
Alan Burlison <Alan.Burlison@uk.sun.com>

[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index][Thread Index][Top&Search][Original]