On 7/9/22 20:53, Karl Williamson wrote: > On 7/9/22 19:42, Karl Williamson wrote: >> On 7/9/22 02:59, Uwe Düffert wrote: >>> Dear Karl and perl5-porters, >>> >>> On Fri, 8 Jul 2022, Karl Williamson wrote: >>> >>>> Please then try adding the attached patch to your perl, and see if >>>> the problem is solved. >>> Well, I'd say it "modifies" the problem. With perl-5.37.1 with this >>> patch, the offending perl command from texinfo does not panic >>> anymore. Instead, it creates a 300K texinfo.info and then continues >>> to run with full CPU usage forever (or at least until manually >>> terminated after 5min). >>> >>> With perl-5.37.0, the offending command instead creates a tiny >>> texinfo.info and 3 ~300K texinfo-{1,2,3}.info and finishes in like 1 >>> second. >>> >>> >>>> And in any case please send us the output of the Linux command >>>> locale -a >>> Sure. Nothing fancy I'm aware of: >>> $> locale -a >>> C >>> C.utf8 >>> de_DE >>> de_DE@euro >>> de_DE.iso88591 >>> de_DE.iso885915@euro >>> de_DE.utf8 >>> en_US >>> en_US.iso88591 >>> en_US.utf8 >>> POSIX >>> >>> >> >> Thanks for the info. With it, I am able to reproduce this problem on >> my box. But that it fails only when no DEBUGGING makes it harder to >> figure out. >> >> The loop is probably because texinfo has a while(1) loop calling >> perl's setlocale for each entry returned from 'locale -a'. >> >> I have run valgrind, and it shows no problems with DEBUGGING; early >> failures without. These buffer overrun failures are likely causing >> the infinite loop when valgrind isn't there to prevent them from >> actually corrupting memory. > > Actually, I'm unsure that I actually reproduced it; it might have been > some setup error on my part. But I can't get it to fail with the > attached patch. And I have a lot more locales than you do. > > The patch includes instrumentation for non-debugging builds that prints > when a publicly accessible function enters and returns, and what it is > passed and what it returns. Please apply and run it and email us the > output. And attached is an alternative patch with even more debuggingThread Previous | Thread Next