X-Recipient: archive-cygwin AT delorie DOT com X-SWARE-Spam-Status: No, hits=1.7 required=5.0 tests=BAYES_50,DKIM_SIGNED,DKIM_VALID,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,SARE_MSGID_LONG45 X-Spam-Check-By: sourceware.org MIME-Version: 1.0 Date: Mon, 12 Apr 2010 10:48:00 +0200 Message-ID: Subject: Some Perl notes From: Reini Urban To: The Cygwin Mailing List Cc: "Jerry D. Hedden" Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-IsSubscribed: yes Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Upstream 5.12.0 is to be released today, cygwin not yet. There are not many changes, so an upgrade should be smoother than for 5.10 http://perl5.git.perl.org/perl.git/blob/HEAD:/pod/perl5120delta.pod threads and threads:.shared regression on 5.12 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D There's a big regression. threads do not work reliably under stress anymore. Typically there's a Windows deadlock. No failure. it just hangs and waits, breaking all the tests. So I was tempted to remove threads completely, but I'll keep it in with this warning to use timeouts for such hanging sections. The author Jerry Hedden knows about it, he's working on cygwin, it's not cygwin specific. The first is windows specific, the 2nd when heavily loading many modules on fast machines. * [perl #41574] Frequently fails under MSWin32 due to deadlocking bug in Wi= ndows http://rt.perl.org/rt3/Public/Bug/Display.html?id=3D41574 http://support.microsoft.com/kb/175332 * [perl #45053] Memory corruption with heavy module loading in threads http://rt.perl.org/rt3/Public/Bug/Display.html?id=3D45053 baseaddr=3D0x5200000 on Windows 7 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D I have also now a Windows 7 system to test, and found out that the currently used rebase base address of 0x5400000 is too high for Windows 7. 0x5300000 works, but I'll use 0x5200000 to be safe. If your Windows 7 has typical failures after some update, like $ perl Makefile.PL # running Build.PL 2 [main] perl 7936 D:\cygwin\bin\perl.exe: *** fatal error - unable to remap \\?\D:\cygwin\lib\perl5\5.10\i686-cygwin\auto\version\vxs\vxs.dll to same address as parent: 0xA00000 !=3D 0xA20000 2 [main] perl 3344 fork: child 7936 - died waiting for dll loading, errno 11 fix /usr/bin/perlrebase to use baseaddr=3D0x5200000 and run it. This fixed it for me. 5.12 release plan =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D After several more cycles of tests, together with the 4 CPAN mass testers Chris Williams, Andy K=F6nig, Slaven Rezic, Barbie and David Cantrell (see http://stats.cpantesters.org/testers.html) I will release 5.12 eventua= lly in the next month. Now it's too early and it does NOT work out of the box for cygwin. I also started working to improve Module::Build. Maybe we'll get threads fixed before. man =3D=3D=3D I'm still waiting for a man update to support perl-style :: conversion to . http://sourceware.org/ml/cygwin/2009-09/msg00097.html --=20 Reini Urban http://phpwiki.org/ http://murbreak.at/ -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple