GroveEngine/helgrind.supp
StillHammer 98acb32c4c fix: Resolve deadlock in IntraIOManager + cleanup SEGFAULTs
- Fix critical deadlock in IntraIOManager using std::scoped_lock for
  multi-mutex acquisition (CrossSystemIntegration: 1901s → 4s)
- Add std::shared_mutex for read-heavy operations (TopicTree, IntraIOManager)
- Fix SEGFAULT in SequentialModuleSystem destructor (logger guard)
- Fix SEGFAULT in ModuleLoader (don't auto-unload when modules still alive)
- Fix iterator invalidation in DependencyTestEngine destructor
- Add TSan/Helgrind integration for deadlock detection
- Add coding guidelines for synchronization patterns

All 23 tests now pass (100%)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-23 11:36:33 +08:00

44 lines
759 B
Plaintext

# helgrind.supp - Suppress known false positives
# Format: https://valgrind.org/docs/manual/manual-core.html#manual-core.suppress
# spdlog false positives (lazy initialization)
{
spdlog_registry_instance
Helgrind:Race
fun:*spdlog*registry*instance*
}
{
spdlog_logger_creation
Helgrind:Race
...
fun:*spdlog*
}
# std::thread false positives
{
std_thread_detach
Helgrind:Race
fun:*std*thread*
}
# C++ static initialization race (benign)
{
static_initialization_guard
Helgrind:Race
fun:__cxa_guard_acquire
}
# Helgrind doesn't understand std::atomic properly
{
atomic_load
Helgrind:Race
fun:*atomic*load*
}
{
atomic_store
Helgrind:Race
fun:*atomic*store*
}