зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1603436 - Rename clang patch (critical_section_on_gcov_flush.patch) to make easier the switch to LLVM 10 r=dmajor
Cherry-picked from: 02ce9d8ef5
.
Differential Revision: https://phabricator.services.mozilla.com/D56945
--HG--
rename : build/build-clang/critical_section_on_gcov_flush.patch => build/build-clang/critical_section_on_gcov_flush-rG02ce9d8ef5a8.patch
extra : moz-landing-system : lando
This commit is contained in:
Родитель
e69ee75dcb
Коммит
c82c13e1a9
|
@ -12,7 +12,7 @@
|
|||
"static-llvm-symbolizer.patch",
|
||||
"find_symbolizer_linux.patch",
|
||||
"rename_gcov_flush_7.patch",
|
||||
"critical_section_on_gcov_flush.patch",
|
||||
"critical_section_on_gcov_flush-rG02ce9d8ef5a8.patch",
|
||||
"r350774.patch",
|
||||
"android-mangling-error.patch"
|
||||
]
|
||||
|
|
|
@ -50,7 +50,7 @@
|
|||
"static-llvm-symbolizer.patch",
|
||||
"find_symbolizer_linux.patch",
|
||||
"rename_gcov_flush.patch",
|
||||
"critical_section_on_gcov_flush.patch",
|
||||
"critical_section_on_gcov_flush-rG02ce9d8ef5a8.patch",
|
||||
"rG7e18aeba5062.patch",
|
||||
"revert-r362047-and-r362065.patch"
|
||||
]
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
"static-llvm-symbolizer.patch",
|
||||
"find_symbolizer_linux.patch",
|
||||
"rename_gcov_flush.patch",
|
||||
"critical_section_on_gcov_flush.patch",
|
||||
"critical_section_on_gcov_flush-rG02ce9d8ef5a8.patch",
|
||||
"rG7e18aeba5062.patch",
|
||||
"android-mangling-error.patch"
|
||||
]
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
"static-llvm-symbolizer.patch",
|
||||
"find_symbolizer_linux.patch",
|
||||
"rename_gcov_flush.patch",
|
||||
"critical_section_on_gcov_flush.patch",
|
||||
"critical_section_on_gcov_flush-rG02ce9d8ef5a8.patch",
|
||||
"android-mangling-error.patch",
|
||||
"revert-r359260-due-to-bug41817.patch",
|
||||
"r372020-r372182-profiler-linkage.patch",
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
"static-llvm-symbolizer.patch",
|
||||
"find_symbolizer_linux.patch",
|
||||
"rename_gcov_flush.patch",
|
||||
"critical_section_on_gcov_flush.patch",
|
||||
"critical_section_on_gcov_flush-rG02ce9d8ef5a8.patch",
|
||||
"rG7e18aeba5062.patch",
|
||||
"android-mangling-error.patch"
|
||||
]
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
"patches": [
|
||||
"static-llvm-symbolizer.patch",
|
||||
"rename_gcov_flush.patch",
|
||||
"critical_section_on_gcov_flush.patch",
|
||||
"critical_section_on_gcov_flush-rG02ce9d8ef5a8.patch",
|
||||
"rG7e18aeba5062.patch",
|
||||
"compiler-rt-cross-compile.patch",
|
||||
"compiler-rt-no-codesign.patch"
|
||||
|
|
|
@ -1,3 +1,25 @@
|
|||
From 02ce9d8ef5a84bc884de4105eae5f8736ef67634 Mon Sep 17 00:00:00 2001
|
||||
From: Calixte Denizet <calixte.denizet@gmail.com>
|
||||
Date: Tue, 10 Dec 2019 13:22:33 +0100
|
||||
Subject: [PATCH] [compiler-rt] Add a critical section when flushing gcov
|
||||
counters
|
||||
|
||||
Summary:
|
||||
Counters can be flushed in a multi-threaded context for example when the process is forked in different threads (https://github.com/llvm/llvm-project/blob/master/llvm/lib/Transforms/Instrumentation/GCOVProfiling.cpp#L632-L663).
|
||||
In order to avoid pretty bad things, a critical section is needed around the flush.
|
||||
We had a lot of crashes in this code in Firefox CI when we switched to clang for linux ccov builds and those crashes disappeared with this patch.
|
||||
|
||||
Reviewers: marco-c, froydnj, dmajor, davidxl, vsk
|
||||
|
||||
Reviewed By: marco-c, dmajor
|
||||
|
||||
Subscribers: ahatanak, froydnj, dmajor, dberris, jfb, #sanitizers, llvm-commits, sylvestre.ledru
|
||||
|
||||
Tags: #sanitizers, #llvm
|
||||
|
||||
Differential Revision: https://reviews.llvm.org/D70910
|
||||
---
|
||||
|
||||
diff --git a/compiler-rt/lib/profile/GCDAProfiling.c b/compiler-rt/lib/profile/GCDAProfiling.c
|
||||
index b7257db10e7..d4abc4181ed 100644
|
||||
--- a/compiler-rt/lib/profile/GCDAProfiling.c
|
Загрузка…
Ссылка в новой задаче