From 61b1ec670ff40ba8352017a1a15a2119101e019e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= Date: Thu, 11 May 2017 13:07:41 +0200 Subject: [PATCH] Upgrade to 1.56 as provided in perl-5.25.12 --- perl-threads-shared.spec | 18 +++--- ... threads-shared-1.55-Upgrade-to-1.56.patch | 60 ++++++++++++------- 2 files changed, 49 insertions(+), 29 deletions(-) rename threads-shared-1.55-threads-shared-alloc-arenas-with-correct-context.patch => threads-shared-1.55-Upgrade-to-1.56.patch (67%) diff --git a/perl-threads-shared.spec b/perl-threads-shared.spec index 033bcdb..54fffd9 100644 --- a/perl-threads-shared.spec +++ b/perl-threads-shared.spec @@ -1,12 +1,13 @@ +%global cpan_version 1.55 Name: perl-threads-shared -Version: 1.55 -Release: 2%{?dist} +Version: 1.56 +Release: 1%{?dist} Summary: Perl extension for sharing data structures between threads License: GPL+ or Artistic URL: http://search.cpan.org/dist/threads-shared/ -Source0: http://www.cpan.org/authors/id/J/JD/JDHEDDEN/threads-shared-%{version}.tar.gz -# Fix arenas allocation, RT#131124, in perl-5.25.12 -Patch0: threads-shared-1.55-threads-shared-alloc-arenas-with-correct-context.patch +Source0: http://www.cpan.org/authors/id/J/JD/JDHEDDEN/threads-shared-%{cpan_version}.tar.gz +# Unbudled from perl-5.25.12 +Patch0: threads-shared-1.55-Upgrade-to-1.56.patch BuildRequires: findutils BuildRequires: gcc BuildRequires: make @@ -46,8 +47,8 @@ you to share variables across different threads (and pseudo-forks on Win32). It is used together with the threads module. %prep -%setup -q -n threads-shared-%{version} -%patch0 -p3 +%setup -q -n threads-shared-%{cpan_version} +%patch0 -p1 %build perl Makefile.PL INSTALLDIRS=vendor NO_PACKLIST=1 OPTIMIZE="$RPM_OPT_FLAGS" @@ -68,6 +69,9 @@ make test %{_mandir}/man3/* %changelog +* Thu May 11 2017 Petr Pisar - 1.56-1 +- Upgrade to 1.56 as provided in perl-5.25.12 + * Fri Apr 21 2017 Petr Pisar - 1.55-2 - Fix arenas allocation (RT#131124) diff --git a/threads-shared-1.55-threads-shared-alloc-arenas-with-correct-context.patch b/threads-shared-1.55-Upgrade-to-1.56.patch similarity index 67% rename from threads-shared-1.55-threads-shared-alloc-arenas-with-correct-context.patch rename to threads-shared-1.55-Upgrade-to-1.56.patch index 890cd9b..d1499c1 100644 --- a/threads-shared-1.55-threads-shared-alloc-arenas-with-correct-context.patch +++ b/threads-shared-1.55-Upgrade-to-1.56.patch @@ -1,30 +1,46 @@ -From defb77b559d3c08f94e6db14937a91a4cac8e204 Mon Sep 17 00:00:00 2001 -From: David Mitchell -Date: Fri, 14 Apr 2017 10:51:56 +0100 -Subject: [PATCH] threads::shared: alloc arenas with correct context +From c7f8a613ce96ab9eb7472dfce9beba86c28a4031 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= +Date: Thu, 11 May 2017 13:03:59 +0200 +Subject: [PATCH] Upgrade to 1.56 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit -RT #131124 - -In a couple of places in shared.xs, it calls sv_newmortal() with -a perl context different from that currently set by PERL_SET_CONTEXT(). -If sv_newmortal() happens to trigger the malloc of a new SV HEAD arena, -then under PERL_TRACK_MEMPOOL, this will cause panics when the arena is -freed or realloced. - -Petr Písař: Ported to 1.55 to not increase version to 1.56. +Unbundled from perl-5.25.12. +Signed-off-by: Petr Písař --- - dist/threads-shared/shared.xs | 6 ++++-- - dist/threads-shared/t/object2.t | 24 +++++++++++++++++++++++- + lib/threads/shared.pm | 4 ++-- + shared.xs | 6 ++++-- + t/object2.t | 24 +++++++++++++++++++++++- 3 files changed, 29 insertions(+), 5 deletions(-) -diff --git a/dist/threads-shared/shared.xs b/dist/threads-shared/shared.xs +diff --git a/lib/threads/shared.pm b/lib/threads/shared.pm +index 5a203b0..73c4dd9 100644 +--- a/lib/threads/shared.pm ++++ b/lib/threads/shared.pm +@@ -7,7 +7,7 @@ use warnings; + + use Scalar::Util qw(reftype refaddr blessed); + +-our $VERSION = '1.55'; # Please update the pod, too. ++our $VERSION = '1.56'; # Please update the pod, too. + my $XS_VERSION = $VERSION; + $VERSION = eval $VERSION; + +@@ -195,7 +195,7 @@ threads::shared - Perl extension for sharing data structures between threads + + =head1 VERSION + +-This document describes threads::shared version 1.55 ++This document describes threads::shared version 1.56 + + =head1 SYNOPSIS + +diff --git a/shared.xs b/shared.xs index dab5e36..3c1b5e6 100644 ---- a/dist/threads-shared/shared.xs -+++ b/dist/threads-shared/shared.xs +--- a/shared.xs ++++ b/shared.xs @@ -1104,8 +1104,9 @@ sharedsv_array_mg_CLEAR(pTHX_ SV *sv, MAGIC *mg) if (!sv) continue; if ( (SvOBJECT(sv) || (SvROK(sv) && (sv = SvRV(sv)))) @@ -47,10 +63,10 @@ index dab5e36..3c1b5e6 100644 sv_upgrade(tmp, SVt_RV); get_RV(tmp, sv); PERL_SET_CONTEXT((aTHX = PL_sharedsv_space)); -diff --git a/dist/threads-shared/t/object2.t b/dist/threads-shared/t/object2.t +diff --git a/t/object2.t b/t/object2.t index 3d795b9..31c3797 100644 ---- a/dist/threads-shared/t/object2.t -+++ b/dist/threads-shared/t/object2.t +--- a/t/object2.t ++++ b/t/object2.t @@ -17,7 +17,7 @@ use ExtUtils::testlib; BEGIN { @@ -90,5 +106,5 @@ index 3d795b9..31c3797 100644 # EOF -- -2.7.4 +2.9.3