summaryrefslogtreecommitdiff
path: root/absl/synchronization
diff options
context:
space:
mode:
authorGravatar Abseil Team <absl-team@google.com>2018-05-07 11:12:21 -0700
committerGravatar John Olson <jolson@google.com>2018-05-07 14:24:31 -0400
commitbd5a2bba8f4238db2e06c99ac808fc8327dec2a0 (patch)
treeb377f054aba0e7757bd15b3bb44b189cc3a21132 /absl/synchronization
parent26b789f9a53d086c8b8c9c2668efb251e37861cd (diff)
- 45690246da1e36acde86c941b68aad2248b16ea7 Import of CCTZ from Github. by Abseil Team <absl-team@google.com>
- ff3cf0774f9903fb62f7012af24c0901286a1b80 Fix -Wunreachable-code-return warning (from clang 6.0) in by Derek Mauro <dmauro@google.com> - b41ca35e56f6137cf6672d16613a7edfd6107e27 Include port.h to drag in platform-specific configurations. by Abseil Team <absl-team@google.com> - 5d50b728937d245caedaa2208a97d52f55040134 Set the default symbolizer for Mutex deadlock detector re... by Derek Mauro <dmauro@google.com> GitOrigin-RevId: 45690246da1e36acde86c941b68aad2248b16ea7 Change-Id: I2c6a87e9090657ff3fb456f3409bfdc24b8b765a
Diffstat (limited to 'absl/synchronization')
-rw-r--r--absl/synchronization/BUILD.bazel1
-rw-r--r--absl/synchronization/CMakeLists.txt3
-rw-r--r--absl/synchronization/mutex.cc4
-rw-r--r--absl/synchronization/mutex.h6
4 files changed, 12 insertions, 2 deletions
diff --git a/absl/synchronization/BUILD.bazel b/absl/synchronization/BUILD.bazel
index 69f9c81f..05376903 100644
--- a/absl/synchronization/BUILD.bazel
+++ b/absl/synchronization/BUILD.bazel
@@ -77,6 +77,7 @@ cc_library(
"//absl/base:dynamic_annotations",
"//absl/base:malloc_internal",
"//absl/debugging:stacktrace",
+ "//absl/debugging:symbolize",
"//absl/time",
],
)
diff --git a/absl/synchronization/CMakeLists.txt b/absl/synchronization/CMakeLists.txt
index c8f84faf..6886c1ca 100644
--- a/absl/synchronization/CMakeLists.txt
+++ b/absl/synchronization/CMakeLists.txt
@@ -44,7 +44,8 @@ list(APPEND SYNCHRONIZATION_SRC
"notification.cc"
"mutex.cc"
)
-set(SYNCHRONIZATION_PUBLIC_LIBRARIES absl::base absl::time)
+
+set(SYNCHRONIZATION_PUBLIC_LIBRARIES absl::base absl::stacktrace absl::symbolize absl::time)
absl_library(
TARGET
diff --git a/absl/synchronization/mutex.cc b/absl/synchronization/mutex.cc
index 33f92d8f..bd54a4dc 100644
--- a/absl/synchronization/mutex.cc
+++ b/absl/synchronization/mutex.cc
@@ -50,6 +50,7 @@
#include "absl/base/internal/thread_identity.h"
#include "absl/base/port.h"
#include "absl/debugging/stacktrace.h"
+#include "absl/debugging/symbolize.h"
#include "absl/synchronization/internal/graphcycles.h"
#include "absl/synchronization/internal/per_thread_sem.h"
#include "absl/time/time.h"
@@ -111,7 +112,8 @@ ABSL_CONST_INIT absl::base_internal::AtomicHook<
ABSL_CONST_INIT absl::base_internal::AtomicHook<
void (*)(const char *msg, const void *cv)> cond_var_tracer;
ABSL_CONST_INIT absl::base_internal::AtomicHook<
- bool (*)(const void *pc, char *out, int out_size)> symbolizer;
+ bool (*)(const void *pc, char *out, int out_size)>
+ symbolizer(absl::Symbolize);
} // namespace
diff --git a/absl/synchronization/mutex.h b/absl/synchronization/mutex.h
index c4e026f9..368684bf 100644
--- a/absl/synchronization/mutex.h
+++ b/absl/synchronization/mutex.h
@@ -979,6 +979,12 @@ void RegisterCondVarTracer(void (*fn)(const char *msg, const void *cv));
// to 'out.'
//
// This has the same memory ordering concerns as RegisterMutexProfiler() above.
+//
+// DEPRECATED: The default symbolizer function is absl::Symbolize() and the
+// ability to register a different hook for symbolizing stack traces will be
+// removed on or after 2023-05-01.
+ABSL_DEPRECATED("absl::RegisterSymbolizer() is deprecated and will be removed "
+ "on or after 2023-05-01")
void RegisterSymbolizer(bool (*fn)(const void *pc, char *out, int out_size));
// EnableMutexInvariantDebugging()