backtrace: rework for signal safety

Mostly, try a lot harder to not allocate anything.

Sponsored-by: Klara, Inc.
Sponsored-by: Wasabi Technology, Inc.
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Rob Norris <rob.norris@klarasystems.com>
Closes #16181
This commit is contained in:
Rob Norris
2024-05-10 13:04:14 +10:00
committed by Brian Behlendorf
parent 3974ef045e
commit 1ea8c59441
5 changed files with 68 additions and 31 deletions
+1 -1
View File
@@ -103,7 +103,7 @@ libspl_assertf(const char *file, const char *func, int line,
getpid(), libspl_getprogname(),
libspl_gettid(), tname);
libspl_backtrace();
libspl_backtrace(STDERR_FILENO);
#if !__has_feature(attribute_analyzer_noreturn) && !defined(__COVERITY__)
if (libspl_assert_ok) {