Try fix for omp crash
Signed-off-by: Igor Gnatenko <ignatenkobrain@fedoraproject.org>
This commit is contained in:
parent
c065605b86
commit
7b81210f7b
43
0001-Only-permit-one-thread-at-a-time-in-addFileToTag.patch
Normal file
43
0001-Only-permit-one-thread-at-a-time-in-addFileToTag.patch
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
From 526641ceeca12fbaa878401f8e65d17f240a9ae5 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Panu Matilainen <pmatilai@redhat.com>
|
||||||
|
Date: Tue, 11 Jun 2019 10:50:01 +0300
|
||||||
|
Subject: [PATCH] Only permit one thread at a time in addFileToTag()
|
||||||
|
|
||||||
|
When creating packages in parallel, more than one thread can call
|
||||||
|
this at once. As it's modifying global macro state to update file
|
||||||
|
name and line number, things will get garbled if we permit more than
|
||||||
|
one thread.
|
||||||
|
|
||||||
|
While this is necessary for the above reason, and should fix #742,
|
||||||
|
it shouldn't crash even without this so there's probably something
|
||||||
|
else wrong too.
|
||||||
|
|
||||||
|
Closes: #742
|
||||||
|
---
|
||||||
|
build/pack.c | 3 +++
|
||||||
|
1 file changed, 3 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/build/pack.c b/build/pack.c
|
||||||
|
index 447e3ec94..ab72750be 100644
|
||||||
|
--- a/build/pack.c
|
||||||
|
+++ b/build/pack.c
|
||||||
|
@@ -113,6 +113,8 @@ static rpmRC addFileToTag(rpmSpec spec, const char * file,
|
||||||
|
if (file == NULL)
|
||||||
|
return RPMRC_OK;
|
||||||
|
|
||||||
|
+ #pragma omp critical
|
||||||
|
+ {
|
||||||
|
fn = rpmGetPath("%{_builddir}/%{?buildsubdir:%{buildsubdir}/}", file, NULL);
|
||||||
|
|
||||||
|
f = fopen(fn, "r");
|
||||||
|
@@ -151,6 +153,7 @@ exit:
|
||||||
|
}
|
||||||
|
free(fn);
|
||||||
|
freeStringBuf(sb);
|
||||||
|
+ } /* omp critical */
|
||||||
|
|
||||||
|
return rc;
|
||||||
|
}
|
||||||
|
--
|
||||||
|
2.22.0
|
||||||
|
|
5
rpm.spec
5
rpm.spec
@ -21,7 +21,7 @@
|
|||||||
|
|
||||||
%global rpmver 4.14.90
|
%global rpmver 4.14.90
|
||||||
%global snapver git14653
|
%global snapver git14653
|
||||||
%global rel 10
|
%global rel 11
|
||||||
|
|
||||||
%global srcver %{version}%{?snapver:-%{snapver}}
|
%global srcver %{version}%{?snapver:-%{snapver}}
|
||||||
%global srcdir %{?snapver:testing}%{!?snapver:%{name}-%(echo %{version} | cut -d'.' -f1-2).x}
|
%global srcdir %{?snapver:testing}%{!?snapver:%{name}-%(echo %{version} | cut -d'.' -f1-2).x}
|
||||||
@ -50,7 +50,8 @@ Patch5: rpm-4.12.0-rpm2cpio-hack.patch
|
|||||||
# https://github.com/rpm-software-management/rpm/pull/473
|
# https://github.com/rpm-software-management/rpm/pull/473
|
||||||
Patch6: 0001-find-debuginfo.sh-decompress-DWARF-compressed-ELF-se.patch
|
Patch6: 0001-find-debuginfo.sh-decompress-DWARF-compressed-ELF-se.patch
|
||||||
# https://github.com/rpm-software-management/rpm/issues/742
|
# https://github.com/rpm-software-management/rpm/issues/742
|
||||||
Patch7: 0001-Revert-Run-binary-package-generation-in-parallel-thr.patch
|
#Patch7: 0001-Revert-Run-binary-package-generation-in-parallel-thr.patch
|
||||||
|
Patch7: 0001-Only-permit-one-thread-at-a-time-in-addFileToTag.patch
|
||||||
|
|
||||||
# Patches already upstream:
|
# Patches already upstream:
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user