diff options
author | mvel <mvel@yandex-team.com> | 2025-02-13 22:50:57 +0300 |
---|---|---|
committer | mvel <mvel@yandex-team.com> | 2025-02-13 23:19:00 +0300 |
commit | 413789ea641bd0a8832454d4940ee8ef81e9a84e (patch) | |
tree | 5c4147b5cb46fe43f9cfc170d5179d4fc75a8618 /contrib/go | |
parent | 1f4d6dae736f8313b8ddcad0a72d336cd2901d90 (diff) | |
download | ydb-413789ea641bd0a8832454d4940ee8ef81e9a84e.tar.gz |
[contrib/poco] Disable thread sanitizer instrumentation on initialize and uninitialize
Чисто формально инициализация указателя мьютексов не атомарна, факт. Чинить это более красиво можно, но нужно ли?
Пример падения под санитайзером
```
raise () /lib/x86_64-linux-gnu/libc.so.6
abort () /lib/x86_64-linux-gnu/libc.so.6
___interceptor_abort (fake=2) /-S/contrib/libs/clang18-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp +1915
__sanitizer::Abort () /-S/contrib/libs/clang18-rt/lib/sanitizer_common/sanitizer_posix_libcdep.cpp +143
__sanitizer::Die () /-S/contrib/libs/clang18-rt/lib/sanitizer_common/sanitizer_termination.cpp +58
__tsan::OutputReport (thr=0x7fa19c45f000, srep=...) /-S/contrib/libs/clang18-rt/lib/tsan/rtl/tsan_rtl_report.cpp +666
__tsan::ReportRace (thr=0x7fa19c45f000, shadow_mem=<optimized out>, cur=..., old=..., typ0=0) /-S/contrib/libs/clang18-rt/lib/tsan/rtl/tsan_rtl_report.cpp +822
Poco::Crypto::OpenSSLInitializer::initialize () /-S/contrib/libs/poco/Crypto/src/OpenSSLInitializer.cpp +101
Poco::Crypto::OpenSSLInitializer::OpenSSLInitializer (this=<optimized out>) /-S/contrib/libs/poco/Crypto/src/OpenSSLInitializer.cpp +67
Poco::Crypto::CipherKeyImpl::CipherKeyImpl (this=0x721c00aa95f0, name=<error reading variable: Cannot access memory at address 0x72102d2b53c0>, key=..., iv=...) /-S/contrib/libs/poco/Crypto/src/CipherKeyImpl.cpp +57
Poco::Crypto::CipherKey::CipherKey (this=0x7f98e9ef3df8, name=<error reading variable: Cannot access memory at address 0x72102d2b53c0>, key=std::__y1::vector (length=32, capacity=32) = {...}, iv=std::__y1::vector (length=32, capacity=32) = {...}) /-S/contrib/libs/poco/Crypto/src/CipherKey.cpp +33
yabs::AesEncrypt (data=..., length=length@entry=yabs::AES_128, aesKey=std::__y1::vector (length=32, capacity=32) = {...}, initVector=std::__y1::vector (length=32, capacity=32) = {...}, encoding=encoding@entry=Poco::Crypto::Cipher::ENC_BASE64) /-S/yabs/server/libs/crypt/crypt.cpp +59
ProcessStatModeOnStat (b=b@entry=0x727000128990, context=...) /-S/yabs/server/libs/count/count.cpp +1750
yabs_handler_stat_count (b=0x727000128990) /-S/yabs/server/libs/handlers/stat/handler_count.cpp +14
...
```
commit_hash:ea00d166a03e0d46cc2de9bf7ed8be549e105e20
Diffstat (limited to 'contrib/go')
0 files changed, 0 insertions, 0 deletions