develooper Front page | perl.perl5.porters | Postings from November 2022

Re: perl-5.37.5 breaks texinfo-7.0

Thread Previous | Thread Next
From:
Uwe Düffert
Date:
November 13, 2022 12:22
Subject:
Re: perl-5.37.5 breaks texinfo-7.0
Message ID:
8ee6b75f-efc9-1726-ff6e-cfde62aaf594@uwe-dueffert.de
Dear Yves / perl5-porters,

On Sun, 13 Nov 2022, demerphq wrote:

> On Sun, 13 Nov 2022 at 02:22, Uwe Düffert <dueffert@uwe-dueffert.de> wrote:
>>
>> remember July? I did have a problem with perl-5.37.1 and perl-5.37.2 not
>> being able to compile texinfo-6.8 and it took quite a few iterations to
>> get that fixed...
>>
>> Well, TROUBLE IS BACK!
>>
>> While with perl-5.37.4 it was still possible to build texinfo-7.0, that
>> fails with perl-5.37.5 - in a very similar way as in July:
>>
>> The perl command from texinfo-7.0 doc build as in
>> https://uwe-dueffert.de/code/perl5.37.5/texinfo-7.0_doc_problem.sh
>> has memory access issues again:
>> https://uwe-dueffert.de/code/perl5.37.5/texinfo-7.0_valgrind.log
>>
>> Let me know if I shall try or provide anything, e.g. in case you have
>> trouble reproducing that.
>
> When you run valgrind and things like that you should set PERL_DESTRUCT_LEVEL.
>
> B<NOTE 2>: To minimize the number of memory leak false alarms (see
> L</PERL_DESTRUCT_LEVEL> for more information), you have to set the
> environment variable PERL_DESTRUCT_LEVEL to 2.  For example, like this:
>
>    env PERL_DESTRUCT_LEVEL=2 valgrind ./perl -Ilib ...
>
> Looking at your valgrind output it looks to me like you ran it with a
> normal destruct level, so it deliberately does not bother freeing
> certain data structures at tear down.
Sorry, I could have been more verbose. I was referring to the discusion in 
July were the valgrind output turned out to be the best indicator I could 
provide. The problem is *not* the long list of memory leaks after perl 
bails out, but the 3 topmost entries (invalid free/delete, address 
is 0 bytes, was alloced at) showing invalid memory access which 
cause perl5.37.5 to bail out with
"malloc_consolidate(): unaligned fastbin chunk detected"

That message is new [and more helpful than the perl5.37.1 and 
5.37.2 behavior] and valgrind only confirms that with its 
words/details.
Adding env PERL_DESTRUCT_LEVEL=2 as suggested does not seem to make any 
difference.

In July for the problem in perl5.37.1 and perl5.37.2 there was the idea 
that a debug build of perl would provide additional insight, but it 
did not, with debug output the testcase from texinfo ran through 
successfully without bailing out, the memory access issue only appeared 
without debug stuff, perfectly reproducible for me.
In perl5.37.3 and perl5.37.4 the problem was fixed, texinfo-7.0 docu 
builds successfully with those, but perl5.37.5 has a similar problem 
again...

Regards
Uwe
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