Return-Path: X-Original-To: apmail-perl-dev-archive@www.apache.org Delivered-To: apmail-perl-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id D07A817A16 for ; Sun, 10 May 2015 16:07:05 +0000 (UTC) Received: (qmail 96736 invoked by uid 500); 10 May 2015 16:07:00 -0000 Delivered-To: apmail-perl-dev-archive@perl.apache.org Received: (qmail 96697 invoked by uid 500); 10 May 2015 16:07:00 -0000 Mailing-List: contact dev-help@perl.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: List-Post: List-Id: Delivered-To: mailing list dev@perl.apache.org Received: (qmail 96680 invoked by uid 99); 10 May 2015 16:07:00 -0000 Received: from Unknown (HELO spamd1-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 10 May 2015 16:07:00 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd1-us-west.apache.org (ASF Mail Server at spamd1-us-west.apache.org) with ESMTP id B5168C3C0E for ; Sun, 10 May 2015 16:06:59 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd1-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -0.1 X-Spam-Level: X-Spam-Status: No, score=-0.1 tagged_above=-999 required=6.31 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=disabled Authentication-Results: spamd1-us-west.apache.org (amavisd-new); dkim=pass (2048-bit key) header.d=googlemail.com Received: from mx1-eu-west.apache.org ([10.40.0.8]) by localhost (spamd1-us-west.apache.org [10.40.0.7]) (amavisd-new, port 10024) with ESMTP id aeBd4QLAUZd7 for ; Sun, 10 May 2015 16:06:54 +0000 (UTC) Received: from mail-ig0-f177.google.com (mail-ig0-f177.google.com [209.85.213.177]) by mx1-eu-west.apache.org (ASF Mail Server at mx1-eu-west.apache.org) with ESMTPS id 9EB6E215CB for ; Sun, 10 May 2015 16:06:53 +0000 (UTC) Received: by igbsb11 with SMTP id sb11so53783962igb.0 for ; Sun, 10 May 2015 09:06:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; bh=xR7iF6bBtS2BApF/AAi+jvV8RFOOYActSu8VlgMNmJs=; b=v/9eFXgOAL72FyndTyl3BMOaVIiPY8bPk77IHumbLvALGSWKdiBvnWsYf7EbOOq6Y2 fcy7BdcOMQiJf5sHzsD75JgY0bIS/s1v1ltaW896sltMrM0asUy/cOtayvFE2Qgegkqm lXkZZ33q+V6gRp/yABI8XQSeCwnXAduxg+i9sJCxATbzD5GuWgUTwdedinORyz8sdAEX phAfqWvL7pWCD9T4VtCLg+uPtsF86eB1GSm3JU26u2oRq8kEV567XlP6h3pf26CMp3xF b3VINE98kCKqN4j9SJImKROA00tRXf1IGyLtbKyNHeXJ3VB1aUJc3MGlDpIqVmTQa5Zi XJXg== MIME-Version: 1.0 X-Received: by 10.50.59.211 with SMTP id b19mr9686687igr.42.1431274012520; Sun, 10 May 2015 09:06:52 -0700 (PDT) Received: by 10.36.216.138 with HTTP; Sun, 10 May 2015 09:06:52 -0700 (PDT) In-Reply-To: References: <20150428065112.992BBAC0FC3@hades.apache.org> Date: Sun, 10 May 2015 17:06:52 +0100 Message-ID: Subject: Re: svn commit: r1676417 - /perl/modperl/trunk/src/modules/perl/modperl_interp.c From: Steve Hay To: dev@perl.apache.org Content-Type: text/plain; charset=UTF-8 On 10 May 2015 at 13:47, Steve Hay wrote: > On 28 April 2015 at 07:51, wrote: >> Author: jkaluza >> Date: Tue Apr 28 06:51:12 2015 >> New Revision: 1676417 >> >> URL: http://svn.apache.org/r1676417 >> Log: >> Initialize interp->refcnt to 1 in modperl_interp_select. >> >> Reasoning: >> 1. All calls of MP_INTERPa do not increment interp->refcnt, so refcnt >> used to be 0 before this commit. But there is always matching >> MP_INTERP_PUTBACK, which calls modperl_interp_unselect which decreases >> the refcnt, so it was possible to get negative refcnt or crash with >> threaded MPMs, because reference counting has been broken. >> 2. modperl_interp_select increases the refcount if it finds the PerlInterp in >> ccfg, so it makes sense to increase it (it means set to 1) during >> initialization too. Otherwise the refcnt would be incremented for the caller >> in some cases, but wouldn't be in other. >> >> This commit fixes the crash seen on worker MPM when PerlInterp has been used >> by two threads and the first one freed PerlInterp during >> modperl_interp_unselect. >> >> Modified: >> perl/modperl/trunk/src/modules/perl/modperl_interp.c >> > > I cannot understand why, but since this patch was applied I find that > t\modules\proxy.t fails every time when I run the full "nmake test", > but it always succeeds when I run it in isolation so I'm at a loss to > find out what is going wrong. All other tests (apart from those known > Win32-specific failures documented in README) still pass. Reverting > the patch "fixes" the proxy.t problem, but probably isn't the right > solution. > That was testing with 2.4.12, but I have the same problem with 2.2.29 too, so it's not 2.4-specific. --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org For additional commands, e-mail: dev-help@perl.apache.org