Skip to main content.
home | support | download

Back to List Archive

Re: [XWarn] Re: Memory free error! At mem.c line 653

From: J Robinson <jrobinson852(at)not-real.yahoo.com>
Date: Sat Nov 15 2003 - 17:35:21 GMT
--- moseley@hank.org wrote:
> On Sat, Nov 15, 2003 at 05:58:45AM -0800, J Robinson
> wrote:
> > Hm. There must be some problem with my machine.
> After
> > building and reinstalling a new version of perl
> (in
> > /usr/local/perl-5.6.1)
> 
> 5.8.2 is the current version.  Try that?  If it is
> indeed Perl then the 
> perl5porters would likely want 5.8.2 testing first.

I'll try that next. I've been standardized on perl
5.6.1 for a while now and had no reason to upgrade
(till now perhaps). Does 5.8.2 mix well with
apache_1.3.29 and mod_perl?

> > and reinstalling all my needed
> > perl modules
> 
> That's the biggest pain.  There's a way with CPAN.pm
> to list all modules 
> and then to use that list to reinstall, but I still
> think it's a pain.
> 
> Still, you shouldn't need much more than the
> standard Perl installation 
> and then link SWISH::API against that version of
> Perl.

I've already replaced my complete perl install (in a
different location), including all perl modules. [And
yes, I used the cpan shell's 'autobundle' feature.]
Same exact crash still occurs.

> I can't remember what you said before.  You can't
> reporduce without 
> Perl, correct?  Try without zlib?  You also said
> that you can't make it 
> happen on other machines, right?

True, I can't reproduce it without perl & SWISH::API.
Haven't tried without zlib yet.

HOWEVER, unlike yesterday, today I was able to
reproduce the exact same problem on a completely
different machine. Both machines are running
swish-2.4.0 and perl-5.6.1; one is RH-6.1, the other
is  RH-7.2.

I'll try with perl 5.8.2 (and using 5.6.1 without
zlib, but that will take longer) and report back the
results. If anyone has any good ideas about how to
detect where things first go wrong in the heap with
perl (IE, what causes this problem in the first
place), that would be useful too.

Here's two stack traces from the second machine to
exhibit the issue. It's clearly some kind of double
deletion bug--somewhere:
 
(gdb) where
#0  0x809f13f in Perl_sv_free ()
#1  0x80888e2 in Perl_pregfree ()
#2  0x80b1311 in Perl_pp_regcomp ()
#3  0x8093efd in Perl_runops_standard ()
#4  0x805c1e0 in S_run_body ()
#5  0x805bf7b in perl_run ()
#6  0x8059df1 in main ()
#7  0x400689cb in __libc_start_main () at
./sysdeps/generic/libc-start.c:122

(gdb) where
#0  0x400aa0bb in chunk_free (ar_ptr=0x4013ece0,
p=0x8ac35f0) at malloc.c:3097
#1  0x400a9f9a in free () at malloc.c:2952
#2  0x8088ed8 in Perl_safefree ()
#3  0x809f004 in Perl_sv_clear ()
#4  0x809f1f9 in Perl_sv_free ()
#5  0x80af693 in Perl_free_tmps ()
#6  0x8093fcd in Perl_pp_nextstate ()
#7  0x8093efd in Perl_runops_standard ()
#8  0x805c1e0 in S_run_body ()
#9  0x805bf7b in perl_run ()
#10 0x8059df1 in main ()
#11 0x400689cb in __libc_start_main () at
./sysdeps/generic/libc-start.c:122

Best,
  jrobinson

__________________________________
Do you Yahoo!?
Protect your identity with Yahoo! Mail AddressGuard
http://antispam.yahoo.com/whatsnewfree
Received on Sat Nov 15 17:35:27 2003