develooper Front page | perl.perl5.porters | Postings from January 2014

Re: [perl #120626] Bleadperl v5.19.6-22-gebdc880 breaks GWILLIAMS/RDF-Trine-1.007.tar.gz

Thread Previous | Thread Next
From:
wolfsage
Date:
January 28, 2014 03:47
Subject:
Re: [perl #120626] Bleadperl v5.19.6-22-gebdc880 breaks GWILLIAMS/RDF-Trine-1.007.tar.gz
Message ID:
CAJ0K8bgqZEo9HLof0xEp3iu9SZHW+5GYzC7i4eVppY904qYOpg@mail.gmail.com
With ebdc88085, I can reproduce the HTML::FormHandler test crash, and
I get this valgrind output:

  mhorsfall@tworivers:~/.cpanm/work/1390878740.27975/HTML-FormHandler-0.40055$
valgrind ~/badcommit/bin/perl  -Iblib/lib -Iblib/arch
t/fields/repeatable.t 2>&1
  ==28093== Memcheck, a memory error detector
  ==28093== Copyright (C) 2002-2011, and GNU GPL'd, by Julian Seward et al.
  ==28093== Using Valgrind-3.7.0 and LibVEX; rerun with -h for copyright info
  ==28093== Command: /home/mhorsfall/badcommit/bin/perl -Iblib/lib
-Iblib/arch t/fields/repeatable.t
  ==28093==
  ok 1 - use HTML::FormHandler::Field::Repeatable;
  ok 2 - field built
  ==28093== Invalid write of size 8
  ==28093==    at 0xA472891: XS_Data__Clone_clone (Data-Clone.xs:395)
  ==28093==    by 0x4F0214: Perl_pp_entersub (pp_hot.c:2760)
  ==28093==    by 0x4E50D1: Perl_runops_standard (run.c:42)
  ==28093==    by 0x43F792: S_run_body (perl.c:2433)
  ==28093==    by 0x43F371: perl_run (perl.c:2349)
  ==28093==    by 0x41CD3B: main (perlmain.c:112)
  ==28093==  Address 0x592fd20 is 16 bytes inside a block of size 1,024 free'd
  ==28093==    at 0x4C2B7B2: realloc (in
/usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
  ==28093==    by 0x4BAD8C: Perl_safesysrealloc (util.c:173)
  ==28093==    by 0x4E2F7E: Perl_av_extend_guts (av.c:154)
  ==28093==    by 0x4E2CF8: Perl_av_extend (av.c:82)
  ==28093==    by 0x5285CC: Perl_stack_grow (scope.c:38)
  ==28093==    by 0x55BDC2: Perl_do_kv (doop.c:1268)
  ==28093==    by 0x4E8E76: Perl_pp_rv2av (pp_hot.c:934)
  ==28093==    by 0x4E50D1: Perl_runops_standard (run.c:42)
  ==28093==    by 0x43FF64: Perl_call_sv (perl.c:2732)
  ==28093==    by 0xA471F53: dc_call_sv1 (Data-Clone.xs:176)
  ==28093==    by 0xA4721E1: dc_clone_object (Data-Clone.xs:227)
  ==28093==    by 0xA472356: clone_rv (Data-Clone.xs:266)
  ==28093==
  ok 3 - attribute set
  ok 4 - form built
  ok 5 - worked in form
  1..5

(Though it doesn't crash when run under valgrind. Neat.):

  mhorsfall@tworivers:~/.cpanm/work/1390878740.27975/HTML-FormHandler-0.40055$
~/badcommit/bin/perl  -Iblib/lib -Iblib/arch t/fields/repeatable.t
2>&1
  ok 1 - use HTML::FormHandler::Field::Repeatable;
  ok 2 - field built
  ok 3 - attribute set
  perl: malloc.c:3729: _int_malloc: Assertion
`victim->fd_nextsize->bk_nextsize == victim' failed.

With ea35f8011 (ebdc88085~1) I cannot reproduce the crash, and the
valgrind output is "clean". (Valgrind reports some definitely lost
bytes thought).

With latest blead (b37339699) I still get the crash with the same
valgrind output.

Each time, I built perl with grindperl, for example:

  grindperl --prefix=/home/mhorsfall/blead -j 5 --install
--no-debugging --no-threads -D optimize=-g

-- Matthew Horsfall (alh)

Thread Previous | Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About