No description provided.
test: Remove unused sanitizer suppressions #27498
pull maflcko wants to merge 1 commits into bitcoin:master from maflcko:2304-ubsan-sup- changing 2 files +3 −7-
maflcko commented at 10:14 AM on April 20, 2023: member
-
DrahtBot commented at 10:14 AM on April 20, 2023: contributor
<!--e57a25ab6845829454e8d69fc972939a-->
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.
<!--021abf342d371248e50ceaed478a90ca-->
Reviews
See the guideline for information on the review process.
If your review is incorrectly listed, please react with 👎 to this comment and the bot will ignore it on the next update.
- DrahtBot added the label Tests on Apr 20, 2023
- maflcko force-pushed on Apr 20, 2023
- DrahtBot added the label CI failed on Apr 20, 2023
- maflcko added this to the milestone 26.0 on Apr 20, 2023
-
in test/sanitizer_suppressions/ubsan:9 in 9999813e91 outdated
4 | @@ -5,9 +5,6 @@ 5 | # names can be used. 6 | # See https://github.com/google/sanitizers/issues/1364 7 | 8 | -# https://github.com/bitcoin/bitcoin/pull/21798#issuecomment-829180719 9 | -signed-integer-overflow:policy/feerate.cpp
hebasto commented at 11:09 AM on April 20, 2023:was fixed in gcc-11 and later.
Mind pointing at the actual fix if it is known?
maflcko commented at 11:19 AM on April 20, 2023:I don't know for sure, but limiting the amounts or the previous fix to
PrioritiseTransactionmay have fixed it?In any case, I think it is good to remove it, even if the bug still exists. Otherwise it is harder to find and fix the bug.
DrahtBot removed the label CI failed on Apr 20, 2023hebasto approvedhebasto commented at 1:01 PM on April 20, 2023: memberACK 9999813e91b94e78ed65130478d9dcb6d787514f, I have reviewed the code and it looks OK, I agree it can be merged.
maflcko renamed this:test: Remove unused signed-integer-overflow suppression
test: Remove unused sanitizer suppressions
on Apr 20, 2023maflcko force-pushed on Apr 20, 2023maflcko commented at 1:49 PM on April 20, 2023: memberForce pushed to remove another unused one
maflcko commented at 2:19 PM on April 20, 2023: memberI am thinking about optimistically adding a commit to remove the epoll_ctl one as well. If it still reproduces, it can be re-added?
fanquake commented at 2:21 PM on April 20, 2023: memberMight as well have a go
DrahtBot added the label CI failed on Apr 20, 2023DrahtBot removed the label CI failed on Apr 20, 2023DrahtBot added the label CI failed on Apr 20, 2023DrahtBot removed the label CI failed on Apr 20, 2023fanquake approvedfanquake commented at 8:37 PM on April 20, 2023: memberACK fa5af4d510a8f129157db8b69a9a387036efb206
DrahtBot requested review from hebasto on Apr 20, 2023maflcko commented at 7:42 AM on April 21, 2023: memberCI is still red on epoll_ctl: https://cirrus-ci.com/task/5213026740076544?logs=ci#L3469
(See also #20218#pullrequestreview-527579531)
interface_bitcoin_cli.py --descriptors | ✖ Failed | 7 s ALL | ✖ Failed | 1944 s (accumulated) Runtime: 210 s ================== WARNING: ThreadSanitizer: data race (pid=37965) Write of size 8 at 0x7bb000000300 by thread T26 (mutexes: write M0): [#0](/bitcoin-bitcoin/0/) closedir <null> (bitcoind+0xe0e97) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#1](/bitcoin-bitcoin/1/) leveldb::(anonymous namespace)::PosixEnv::GetChildren(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>>*) src/leveldb/util/env_posix.cc:599:5 (bitcoind+0xb58803) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#2](/bitcoin-bitcoin/2/) leveldb::DBImpl::DeleteObsoleteFiles() src/leveldb/db/db_impl.cc:237:9 (bitcoind+0xb1c124) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#3](/bitcoin-bitcoin/3/) leveldb::DBImpl::BackgroundCompaction() src/leveldb/db/db_impl.cc:752:5 (bitcoind+0xb20b65) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#4](/bitcoin-bitcoin/4/) leveldb::DBImpl::BackgroundCall() src/leveldb/db/db_impl.cc:687:5 (bitcoind+0xb201ef) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#5](/bitcoin-bitcoin/5/) leveldb::DBImpl::BGWork(void*) src/leveldb/db/db_impl.cc:676:34 (bitcoind+0xb2011b) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#6](/bitcoin-bitcoin/6/) leveldb::(anonymous namespace)::PosixEnv::BackgroundThreadMain() src/leveldb/util/env_posix.cc:830:5 (bitcoind+0xb5c533) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#7](/bitcoin-bitcoin/7/) leveldb::(anonymous namespace)::PosixEnv::BackgroundThreadEntryPoint(leveldb::(anonymous namespace)::PosixEnv*) src/leveldb/util/env_posix.cc:736:10 (bitcoind+0xb5c533) [#8](/bitcoin-bitcoin/8/) decltype(std::declval<void (*)(leveldb::(anonymous namespace)::PosixEnv*)>()(std::declval<leveldb::(anonymous namespace)::PosixEnv*>())) std::__1::__invoke[abi:v160000]<void (*)(leveldb::(anonymous namespace)::PosixEnv*), leveldb::(anonymous namespace)::PosixEnv*>(void (*&&)(leveldb::(anonymous namespace)::PosixEnv*), leveldb::(anonymous namespace)::PosixEnv*&&) /usr/lib/llvm-16/bin/../include/c++/v1/__functional/invoke.h:394:23 (bitcoind+0xb5c718) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#9](/bitcoin-bitcoin/9/) void std::__1::__thread_execute[abi:v160000]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(leveldb::(anonymous namespace)::PosixEnv*), leveldb::(anonymous namespace)::PosixEnv*, 2ul>(std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(leveldb::(anonymous namespace)::PosixEnv*), leveldb::(anonymous namespace)::PosixEnv*>&, std::__1::__tuple_indices<2ul>) /usr/lib/llvm-16/bin/../include/c++/v1/thread:282:5 (bitcoind+0xb5c718) [#10](/bitcoin-bitcoin/10/) void* std::__1::__thread_proxy[abi:v160000]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(leveldb::(anonymous namespace)::PosixEnv*), leveldb::(anonymous namespace)::PosixEnv*>>(void*) /usr/lib/llvm-16/bin/../include/c++/v1/thread:293:5 (bitcoind+0xb5c718) Previous read of size 8 at 0x7bb000000300 by thread T17 (mutexes: write M1): [#0](/bitcoin-bitcoin/0/) epoll_ctl <null> (bitcoind+0xe12b6) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#1](/bitcoin-bitcoin/1/) epoll_apply_one_change epoll.c (bitcoind+0xc92147) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#2](/bitcoin-bitcoin/2/) decltype(std::declval<void (*)(event_base*)>()(std::declval<event_base*>())) std::__1::__invoke[abi:v160000]<void (*)(event_base*), event_base*>(void (*&&)(event_base*), event_base*&&) /usr/lib/llvm-16/bin/../include/c++/v1/__functional/invoke.h:394:23 (bitcoind+0x61d850) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#3](/bitcoin-bitcoin/3/) void std::__1::__thread_execute[abi:v160000]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(event_base*), event_base*, 2ul>(std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(event_base*), event_base*>&, std::__1::__tuple_indices<2ul>) /usr/lib/llvm-16/bin/../include/c++/v1/thread:282:5 (bitcoind+0x61d850) [#4](/bitcoin-bitcoin/4/) void* std::__1::__thread_proxy[abi:v160000]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(event_base*), event_base*>>(void*) /usr/lib/llvm-16/bin/../include/c++/v1/thread:293:5 (bitcoind+0x61d850) Location is file descriptor 24 destroyed by thread T17 at: [#0](/bitcoin-bitcoin/0/) close <null> (bitcoind+0xe0042) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#1](/bitcoin-bitcoin/1/) evhttp_connection_free <null> (bitcoind+0xc93278) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#2](/bitcoin-bitcoin/2/) decltype(std::declval<void (*)(event_base*)>()(std::declval<event_base*>())) std::__1::__invoke[abi:v160000]<void (*)(event_base*), event_base*>(void (*&&)(event_base*), event_base*&&) /usr/lib/llvm-16/bin/../include/c++/v1/__functional/invoke.h:394:23 (bitcoind+0x61d850) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#3](/bitcoin-bitcoin/3/) void std::__1::__thread_execute[abi:v160000]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(event_base*), event_base*, 2ul>(std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(event_base*), event_base*>&, std::__1::__tuple_indices<2ul>) /usr/lib/llvm-16/bin/../include/c++/v1/thread:282:5 (bitcoind+0x61d850) [#4](/bitcoin-bitcoin/4/) void* std::__1::__thread_proxy[abi:v160000]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(event_base*), event_base*>>(void*) /usr/lib/llvm-16/bin/../include/c++/v1/thread:293:5 (bitcoind+0x61d850) Mutex M0 (0x7b580000c0c0) created at: [#0](/bitcoin-bitcoin/0/) pthread_mutex_lock <null> (bitcoind+0xdbe8b) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#1](/bitcoin-bitcoin/1/) std::__1::mutex::lock() <null> (libc++.so.1+0x523f5) (BuildId: bad43bd8da92e75d653a3e2c93d7f31df17b2926) [#2](/bitcoin-bitcoin/2/) CDBWrapper::CDBWrapper(DBParams const&) src/dbwrapper.cpp:156:30 (bitcoind+0x5efabc) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#3](/bitcoin-bitcoin/3/) std::__1::__unique_if<CDBWrapper>::__unique_single std::__1::make_unique[abi:v160000]<CDBWrapper, DBParams&>(DBParams&) /usr/lib/llvm-16/bin/../include/c++/v1/__memory/unique_ptr.h:686:30 (bitcoind+0x4f4d0e) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#4](/bitcoin-bitcoin/4/) CCoinsViewDB::ResizeCache(unsigned long) src/txdb.cpp:88:16 (bitcoind+0x4f4d0e) [#5](/bitcoin-bitcoin/5/) Chainstate::ResizeCoinsCaches(unsigned long, unsigned long) src/validation.cpp:4918:15 (bitcoind+0x5680a5) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#6](/bitcoin-bitcoin/6/) ChainstateManager::MaybeRebalanceCaches() src/validation.cpp:5541:27 (bitcoind+0x56c305) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#7](/bitcoin-bitcoin/7/) node::CompleteChainstateInitialization(ChainstateManager&, node::CacheSizes const&, node::ChainstateLoadOptions const&) src/node/chainstate.cpp:156:14 (bitcoind+0x296ce5) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#8](/bitcoin-bitcoin/8/) node::LoadChainstate(ChainstateManager&, node::CacheSizes const&, node::ChainstateLoadOptions const&) src/node/chainstate.cpp:190:38 (bitcoind+0x2948c1) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#9](/bitcoin-bitcoin/9/) AppInitMain(node::NodeContext&, interfaces::BlockAndHeaderTipInfo*)::$_1::operator()() const src/init.cpp:1507:61 (bitcoind+0x18a3ab) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#10](/bitcoin-bitcoin/10/) auto AppInitMain(node::NodeContext&, interfaces::BlockAndHeaderTipInfo*)::$_0::operator()<AppInitMain(node::NodeContext&, interfaces::BlockAndHeaderTipInfo*)::$_1>(AppInitMain(node::NodeContext&, interfaces::BlockAndHeaderTipInfo*)::$_1&&) const src/init.cpp:1501:24 (bitcoind+0x18a3ab) [#11](/bitcoin-bitcoin/11/) AppInitMain(node::NodeContext&, interfaces::BlockAndHeaderTipInfo*) src/init.cpp:1507:32 (bitcoind+0x182403) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#12](/bitcoin-bitcoin/12/) AppInit(node::NodeContext&, int, char**) src/bitcoind.cpp:222:43 (bitcoind+0x163737) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#13](/bitcoin-bitcoin/13/) main src/bitcoind.cpp:266:13 (bitcoind+0x163737) Mutex M1 (0x7b0c0001d010) created at: [#0](/bitcoin-bitcoin/0/) pthread_mutex_init <null> (bitcoind+0xdbb70) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#1](/bitcoin-bitcoin/1/) evthread_posix_lock_alloc evthread_pthread.c (bitcoind+0xc7a77f) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#2](/bitcoin-bitcoin/2/) AppInitServers(node::NodeContext&) src/init.cpp:662:10 (bitcoind+0x188d46) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#3](/bitcoin-bitcoin/3/) AppInitMain(node::NodeContext&, interfaces::BlockAndHeaderTipInfo*) src/init.cpp:1187:14 (bitcoind+0x17ede8) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#4](/bitcoin-bitcoin/4/) AppInit(node::NodeContext&, int, char**) src/bitcoind.cpp:222:43 (bitcoind+0x163737) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#5](/bitcoin-bitcoin/5/) main src/bitcoind.cpp:266:13 (bitcoind+0x163737) Thread T26 (tid=38191, running) created by thread T18 at: [#0](/bitcoin-bitcoin/0/) pthread_create <null> (bitcoind+0xda1fb) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#1](/bitcoin-bitcoin/1/) std::__1::__libcpp_thread_create[abi:v160000](unsigned long*, void* (*)(void*), void*) /usr/lib/llvm-16/bin/../include/c++/v1/__threading_support:378:10 (bitcoind+0xb593a8) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#2](/bitcoin-bitcoin/2/) std::__1::thread::thread<void (&)(leveldb::(anonymous namespace)::PosixEnv*), leveldb::(anonymous namespace)::PosixEnv*, void>(void (&)(leveldb::(anonymous namespace)::PosixEnv*), leveldb::(anonymous namespace)::PosixEnv*&&) /usr/lib/llvm-16/bin/../include/c++/v1/thread:309:16 (bitcoind+0xb593a8) [#3](/bitcoin-bitcoin/3/) leveldb::(anonymous namespace)::PosixEnv::Schedule(void (*)(void*), void*) src/leveldb/util/env_posix.cc:802:17 (bitcoind+0xb593a8) [#4](/bitcoin-bitcoin/4/) leveldb::DBImpl::MaybeScheduleCompaction() src/leveldb/db/db_impl.cc:671:11 (bitcoind+0xb23b6f) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#5](/bitcoin-bitcoin/5/) leveldb::DBImpl::Get(leveldb::ReadOptions const&, leveldb::Slice const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>*) src/leveldb/db/db_impl.cc:1150:5 (bitcoind+0xb23b6f) [#6](/bitcoin-bitcoin/6/) bool CDBWrapper::Read<(anonymous namespace)::CoinEntry, Coin>((anonymous namespace)::CoinEntry const&, Coin&) const src/./dbwrapper.h:271:39 (bitcoind+0x4f4f10) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#7](/bitcoin-bitcoin/7/) CCoinsViewDB::GetCoin(COutPoint const&, Coin&) const src/txdb.cpp:93:18 (bitcoind+0x4f4f10) [#8](/bitcoin-bitcoin/8/) CCoinsViewBacked::GetCoin(COutPoint const&, Coin&) const src/coins.cpp:26:92 (bitcoind+0x9095f3) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#9](/bitcoin-bitcoin/9/) CCoinsViewErrorCatcher::GetCoin(COutPoint const&, Coin&) const src/coins.cpp:353:34 (bitcoind+0x9095f3) [#10](/bitcoin-bitcoin/10/) CCoinsViewCache::FetchCoin(COutPoint const&) const src/coins.cpp:49:16 (bitcoind+0x9071cc) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#11](/bitcoin-bitcoin/11/) CCoinsViewCache::GetCoin(COutPoint const&, Coin&) const src/coins.cpp:62:36 (bitcoind+0x907335) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#12](/bitcoin-bitcoin/12/) CCoinsViewCache::FetchCoin(COutPoint const&) const src/coins.cpp:49:16 (bitcoind+0x9071cc) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#13](/bitcoin-bitcoin/13/) CCoinsViewCache::HaveCoin(COutPoint const&) const src/coins.cpp:163:36 (bitcoind+0x90829f) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#14](/bitcoin-bitcoin/14/) Chainstate::ConnectBlock(CBlock const&, BlockValidationState&, CBlockIndex*, CCoinsViewCache&, bool) src/validation.cpp:2231:26 (bitcoind+0x541f14) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#15](/bitcoin-bitcoin/15/) TestBlockValidity(BlockValidationState&, CChainParams const&, Chainstate&, CBlock const&, CBlockIndex*, std::__1::function<std::__1::chrono::time_point<NodeClock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000l>>> ()> const&, bool, bool) src/validation.cpp:4087:21 (bitcoind+0x55df5e) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#16](/bitcoin-bitcoin/16/) node::BlockAssembler::CreateNewBlock(CScript const&) src/node/miner.cpp:172:43 (bitcoind+0x64c810) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#17](/bitcoin-bitcoin/17/) generateBlocks(ChainstateManager&, CTxMemPool const&, CScript const&, int, unsigned long) src/rpc/mining.cpp:149:110 (bitcoind+0x403e05) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#18](/bitcoin-bitcoin/18/) generatetoaddress()::$_0::operator()(RPCHelpMan const&, JSONRPCRequest const&) const src/rpc/mining.cpp:281:12 (bitcoind+0x403b16) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#19](/bitcoin-bitcoin/19/) decltype(std::declval<generatetoaddress()::$_0&>()(std::declval<RPCHelpMan const&>(), std::declval<JSONRPCRequest const&>())) std::__1::__invoke[abi:v160000]<generatetoaddress()::$_0&, RPCHelpMan const&, JSONRPCRequest const&>(generatetoaddress()::$_0&, RPCHelpMan const&, JSONRPCRequest const&) /usr/lib/llvm-16/bin/../include/c++/v1/__functional/invoke.h:394:23 (bitcoind+0x403b16) [#20](/bitcoin-bitcoin/20/) UniValue std::__1::__invoke_void_return_wrapper<UniValue, false>::__call<generatetoaddress()::$_0&, RPCHelpMan const&, JSONRPCRequest const&>(generatetoaddress()::$_0&, RPCHelpMan const&, JSONRPCRequest const&) /usr/lib/llvm-16/bin/../include/c++/v1/__functional/invoke.h:478:16 (bitcoind+0x403b16) [#21](/bitcoin-bitcoin/21/) std::__1::__function::__alloc_func<generatetoaddress()::$_0, std::__1::allocator<generatetoaddress()::$_0>, UniValue (RPCHelpMan const&, JSONRPCRequest const&)>::operator()[abi:v160000](RPCHelpMan const&, JSONRPCRequest const&) /usr/lib/llvm-16/bin/../include/c++/v1/__functional/function.h:185:16 (bitcoind+0x403b16) [#22](/bitcoin-bitcoin/22/) std::__1::__function::__func<generatetoaddress()::$_0, std::__1::allocator<generatetoaddress()::$_0>, UniValue (RPCHelpMan const&, JSONRPCRequest const&)>::operator()(RPCHelpMan const&, JSONRPCRequest const&) /usr/lib/llvm-16/bin/../include/c++/v1/__functional/function.h:356:12 (bitcoind+0x403b16) [#23](/bitcoin-bitcoin/23/) std::__1::__function::__value_func<UniValue (RPCHelpMan const&, JSONRPCRequest const&)>::operator()[abi:v160000](RPCHelpMan const&, JSONRPCRequest const&) const /usr/lib/llvm-16/bin/../include/c++/v1/__functional/function.h:510:16 (bitcoind+0x98fa1f) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#24](/bitcoin-bitcoin/24/) std::__1::function<UniValue (RPCHelpMan const&, JSONRPCRequest const&)>::operator()(RPCHelpMan const&, JSONRPCRequest const&) const /usr/lib/llvm-16/bin/../include/c++/v1/__functional/function.h:1156:12 (bitcoind+0x98fa1f) [#25](/bitcoin-bitcoin/25/) RPCHelpMan::HandleRequest(JSONRPCRequest const&) const src/rpc/util.cpp:570:20 (bitcoind+0x98fa1f) [#26](/bitcoin-bitcoin/26/) CRPCCommand::CRPCCommand(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)::operator()(JSONRPCRequest const&, UniValue&, bool) const src/./rpc/server.h:109:91 (bitcoind+0x3a5aed) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#27](/bitcoin-bitcoin/27/) decltype(std::declval<CRPCCommand::CRPCCommand(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&>()(std::declval<JSONRPCRequest const&>(), std::declval<UniValue&>(), std::declval<bool>())) std::__1::__invoke[abi:v160000]<CRPCCommand::CRPCCommand(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(CRPCCommand::CRPCCommand(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/lib/llvm-16/bin/../include/c++/v1/__functional/invoke.h:394:23 (bitcoind+0x3a599b) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#28](/bitcoin-bitcoin/28/) bool std::__1::__invoke_void_return_wrapper<bool, false>::__call<CRPCCommand::CRPCCommand(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool>(CRPCCommand::CRPCCommand(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)&, JSONRPCRequest const&, UniValue&, bool&&) /usr/lib/llvm-16/bin/../include/c++/v1/__functional/invoke.h:478:16 (bitcoind+0x3a599b) [#29](/bitcoin-bitcoin/29/) std::__1::__function::__alloc_func<CRPCCommand::CRPCCommand(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool), std::__1::allocator<CRPCCommand::CRPCCommand(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)>, bool (JSONRPCRequest const&, UniValue&, bool)>::operator()[abi:v160000](JSONRPCRequest const&, UniValue&, bool&&) /usr/lib/llvm-16/bin/../include/c++/v1/__functional/function.h:185:16 (bitcoind+0x3a599b) [#30](/bitcoin-bitcoin/30/) std::__1::__function::__func<CRPCCommand::CRPCCommand(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool), std::__1::allocator<CRPCCommand::CRPCCommand(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, RPCHelpMan (*)())::'lambda'(JSONRPCRequest const&, UniValue&, bool)>, bool (JSONRPCRequest const&, UniValue&, bool)>::operator()(JSONRPCRequest const&, UniValue&, bool&&) /usr/lib/llvm-16/bin/../include/c++/v1/__functional/function.h:356:12 (bitcoind+0x3a599b) [#31](/bitcoin-bitcoin/31/) std::__1::__function::__value_func<bool (JSONRPCRequest const&, UniValue&, bool)>::operator()[abi:v160000](JSONRPCRequest const&, UniValue&, bool&&) const /usr/lib/llvm-16/bin/../include/c++/v1/__functional/function.h:510:16 (bitcoind+0x4bc621) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#32](/bitcoin-bitcoin/32/) std::__1::function<bool (JSONRPCRequest const&, UniValue&, bool)>::operator()(JSONRPCRequest const&, UniValue&, bool) const /usr/lib/llvm-16/bin/../include/c++/v1/__functional/function.h:1156:12 (bitcoind+0x4bc621) [#33](/bitcoin-bitcoin/33/) ExecuteCommand(CRPCCommand const&, JSONRPCRequest const&, UniValue&, bool) src/rpc/server.cpp:505:20 (bitcoind+0x4bc621) [#34](/bitcoin-bitcoin/34/) ExecuteCommands(std::__1::vector<CRPCCommand const*, std::__1::allocator<CRPCCommand const*>> const&, JSONRPCRequest const&, UniValue&) src/rpc/server.cpp:470:13 (bitcoind+0x4bc621) [#35](/bitcoin-bitcoin/35/) CRPCTable::execute(JSONRPCRequest const&) const src/rpc/server.cpp:490:13 (bitcoind+0x4bc222) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#36](/bitcoin-bitcoin/36/) HTTPReq_JSONRPC(std::__1::any const&, HTTPRequest*) src/httprpc.cpp:201:40 (bitcoind+0x6096af) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#37](/bitcoin-bitcoin/37/) StartHTTPRPC(std::__1::any const&)::$_0::operator()(HTTPRequest*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&) const src/httprpc.cpp:300:80 (bitcoind+0x6096af) [#38](/bitcoin-bitcoin/38/) decltype(std::declval<StartHTTPRPC(std::__1::any const&)::$_0&>()(std::declval<HTTPRequest*>(), std::declval<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&>())) std::__1::__invoke[abi:v160000]<StartHTTPRPC(std::__1::any const&)::$_0&, HTTPRequest*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&>(StartHTTPRPC(std::__1::any const&)::$_0&, HTTPRequest*&&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&) /usr/lib/llvm-16/bin/../include/c++/v1/__functional/invoke.h:394:23 (bitcoind+0x6096af) [#39](/bitcoin-bitcoin/39/) bool std::__1::__invoke_void_return_wrapper<bool, false>::__call<StartHTTPRPC(std::__1::any const&)::$_0&, HTTPRequest*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&>(StartHTTPRPC(std::__1::any const&)::$_0&, HTTPRequest*&&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&) /usr/lib/llvm-16/bin/../include/c++/v1/__functional/invoke.h:478:16 (bitcoind+0x6096af) [#40](/bitcoin-bitcoin/40/) std::__1::__function::__alloc_func<StartHTTPRPC(std::__1::any const&)::$_0, std::__1::allocator<StartHTTPRPC(std::__1::any const&)::$_0>, bool (HTTPRequest*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&)>::operator()[abi:v160000](HTTPRequest*&&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&) /usr/lib/llvm-16/bin/../include/c++/v1/__functional/function.h:185:16 (bitcoind+0x6096af) [#41](/bitcoin-bitcoin/41/) std::__1::__function::__func<StartHTTPRPC(std::__1::any const&)::$_0, std::__1::allocator<StartHTTPRPC(std::__1::any const&)::$_0>, bool (HTTPRequest*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&)>::operator()(HTTPRequest*&&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&) /usr/lib/llvm-16/bin/../include/c++/v1/__functional/function.h:356:12 (bitcoind+0x6096af) [#42](/bitcoin-bitcoin/42/) std::__1::__function::__value_func<bool (HTTPRequest*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&)>::operator()[abi:v160000](HTTPRequest*&&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&) const /usr/lib/llvm-16/bin/../include/c++/v1/__functional/function.h:510:16 (bitcoind+0x61b6f0) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#43](/bitcoin-bitcoin/43/) std::__1::function<bool (HTTPRequest*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&)>::operator()(HTTPRequest*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&) const /usr/lib/llvm-16/bin/../include/c++/v1/__functional/function.h:1156:12 (bitcoind+0x61b6f0) [#44](/bitcoin-bitcoin/44/) HTTPWorkItem::operator()() src/httpserver.cpp:59:9 (bitcoind+0x61b6f0) [#45](/bitcoin-bitcoin/45/) WorkQueue<HTTPClosure>::Run() src/httpserver.cpp:114:13 (bitcoind+0x61d4a7) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#46](/bitcoin-bitcoin/46/) HTTPWorkQueueRun(WorkQueue<HTTPClosure>*, int) src/httpserver.cpp:357:12 (bitcoind+0x613e24) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#47](/bitcoin-bitcoin/47/) decltype(std::declval<void (*)(WorkQueue<HTTPClosure>*, int)>()(std::declval<WorkQueue<HTTPClosure>*>(), std::declval<int>())) std::__1::__invoke[abi:v160000]<void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>(void (*&&)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*&&, int&&) /usr/lib/llvm-16/bin/../include/c++/v1/__functional/invoke.h:394:23 (bitcoind+0x61de67) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#48](/bitcoin-bitcoin/48/) void std::__1::__thread_execute[abi:v160000]<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int, 2ul, 3ul>(std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>&, std::__1::__tuple_indices<2ul, 3ul>) /usr/lib/llvm-16/bin/../include/c++/v1/thread:282:5 (bitcoind+0x61de67) [#49](/bitcoin-bitcoin/49/) void* std::__1::__thread_proxy[abi:v160000]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (*)(WorkQueue<HTTPClosure>*, int), WorkQueue<HTTPClosure>*, int>>(void*) /usr/lib/llvm-16/bin/../include/c++/v1/thread:293:5 (bitcoind+0x61de67) Thread T17 'b-http' (tid=37992, running) created by main thread at: [#0](/bitcoin-bitcoin/0/) pthread_create <null> (bitcoind+0xda1fb) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#1](/bitcoin-bitcoin/1/) std::__1::__libcpp_thread_create[abi:v160000](unsigned long*, void* (*)(void*), void*) /usr/lib/llvm-16/bin/../include/c++/v1/__threading_support:378:10 (bitcoind+0x619092) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#2](/bitcoin-bitcoin/2/) std::__1::thread::thread<void (&)(event_base*), event_base*&, void>(void (&)(event_base*), event_base*&) /usr/lib/llvm-16/bin/../include/c++/v1/thread:309:16 (bitcoind+0x619092) [#3](/bitcoin-bitcoin/3/) StartHTTPServer() src/httpserver.cpp:444:21 (bitcoind+0x613853) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#4](/bitcoin-bitcoin/4/) AppInitServers(node::NodeContext&) src/init.cpp:669:5 (bitcoind+0x188edf) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#5](/bitcoin-bitcoin/5/) AppInitMain(node::NodeContext&, interfaces::BlockAndHeaderTipInfo*) src/init.cpp:1187:14 (bitcoind+0x17ede8) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#6](/bitcoin-bitcoin/6/) AppInit(node::NodeContext&, int, char**) src/bitcoind.cpp:222:43 (bitcoind+0x163737) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) [#7](/bitcoin-bitcoin/7/) main src/bitcoind.cpp:266:13 (bitcoind+0x163737) SUMMARY: ThreadSanitizer: data race (/tmp/cirrus-ci-build/ci/scratch/build/bitcoin-x86_64-pc-linux-gnu/src/bitcoind+0xe0e97) (BuildId: fcf645b68d9aefc406c59edc74635a9769b0fab3) in closedir ==================fa15a9934etest: Remove unused sanitizer suppressions
* The GCC suppression was fixed in gcc-11, which is available on all LTS releases of Linux distros. * The feerate suppression was likely fixed and does not trigger anymore. If it was to trigger again, the underlying bug should be fixed instead of suppressing it. * The bench suppression does not trigger anymore. Also, add comments to tsan suppressions on how to reproduce.
maflcko force-pushed on Apr 21, 2023maflcko commented at 9:19 AM on April 21, 2023: memberReverted the last commit, should be good to go now.
hebasto approvedhebasto commented at 10:09 AM on April 21, 2023: memberACK fa15a9934ee1d331737c631e6ffc2ddfafaddb7f
Nice to see the updated comments with TSan logs.
DrahtBot requested review from fanquake on Apr 21, 2023fanquake approvedfanquake commented at 10:24 AM on April 21, 2023: memberACK fa15a9934ee1d331737c631e6ffc2ddfafaddb7f
fanquake merged this on Apr 21, 2023fanquake closed this on Apr 21, 2023maflcko deleted the branch on Apr 21, 2023sidhujag referenced this in commit ed4af7f407 on Apr 21, 2023bitcoin locked this on Apr 20, 2024
This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-04-24 06:14 UTC
More mirrored repositories can be found on mirror.b10c.me