@@ -78,23 +78,6 @@ void WriteToStderr(const char* buffer)
78
78
79
79
namespace NDetail {
80
80
81
- constinit NThreading::TSpinLock CrashLock;
82
- constinit YT_DEFINE_THREAD_LOCAL (bool , CrashLockAcquiredByCurrentThread);
83
-
84
- void AcquireCrashLock ()
85
- {
86
- if (!std::exchange (CrashLockAcquiredByCurrentThread (), true )) {
87
- CrashLock.Acquire ();
88
- }
89
- }
90
-
91
- void ReleaseCrashLock ()
92
- {
93
- if (std::exchange (CrashLockAcquiredByCurrentThread (), false )) {
94
- CrashLock.Release ();
95
- }
96
- }
97
-
98
81
Y_NO_INLINE TStackTrace GetStackTrace (TStackTraceBuffer* buffer)
99
82
{
100
83
#ifdef _unix_
@@ -533,16 +516,10 @@ void AssertTrapImpl(
533
516
534
517
MaybeThrowSafeAssertionException (formatter.GetBuffer ());
535
518
536
- // Prevent clashes in stderr.
537
- AcquireCrashLock ();
538
-
539
519
WriteToStderr (formatter.GetBuffer ());
540
520
541
521
// This (hopefully) invokes CrashSignalHandler.
542
522
YT_BUILTIN_TRAP ();
543
-
544
- // Not expected to get here but anyway...
545
- ReleaseCrashLock ();
546
523
}
547
524
548
525
} // namespace NDetail
@@ -560,9 +537,6 @@ void CrashSignalHandler(int /*signal*/, siginfo_t* si, void* uc)
560
537
::signal (SIGALRM, NDetail::CrashTimeoutHandler);
561
538
::alarm (60 );
562
539
563
- // Prevent clashes in stderr.
564
- NDetail::AcquireCrashLock ();
565
-
566
540
NDetail::DumpTimeInfo ();
567
541
568
542
NDetail::DumpCodicils ();
@@ -576,9 +550,6 @@ void CrashSignalHandler(int /*signal*/, siginfo_t* si, void* uc)
576
550
577
551
NDetail::DumpUndumpableBlocksInfo ();
578
552
579
- // Releasing the lock gives other threads a chance to yell at us.
580
- NDetail::ReleaseCrashLock ();
581
-
582
553
WriteToStderr (" *** Waiting for logger to shut down\n " );
583
554
584
555
NLogging::TLogManager::Get ()->Shutdown ();
0 commit comments