ci: build libc++ in DEBUG mode in MSAN jobs #27448

pull fanquake wants to merge 2 commits into bitcoin:master from fanquake:msan_with_enable_debug_mode changing 1 files +1 −1
  1. fanquake commented at 3:28 pm on April 11, 2023: member

    Followup to #27447.

    See https://releases.llvm.org/16.0.0/projects/libcxx/docs/DesignDocs/DebugMode.html:

    Libc++ provides a debug mode that enables special debugging checks meant to detect incorrect usage of the standard library. These checks are disabled by default, but they can be enabled by vendors when building the library by using LIBCXX_ENABLE_DEBUG_MODE.

  2. DrahtBot commented at 3:28 pm on April 11, 2023: contributor

    The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

    Reviews

    See the guideline for information on the review process.

    Type Reviewers
    ACK MarcoFalke

    If your review is incorrectly listed, please react with 👎 to this comment and the bot will ignore it on the next update.

  3. DrahtBot renamed this:
    ci: build libc++ in DEBUG mode in MSAN jobs
    ci: build libc++ in DEBUG mode in MSAN jobs
    on Apr 11, 2023
  4. DrahtBot added the label Tests on Apr 11, 2023
  5. fanquake force-pushed on Apr 11, 2023
  6. ci: build libc++ in DEBUG mode in MSAN jobs 23b8b2026a
  7. ci: build libc++ with assertions in MSAN jobs 4de9c2a65f
  8. fanquake force-pushed on Apr 19, 2023
  9. fanquake marked this as ready for review on Apr 19, 2023
  10. fanquake commented at 10:55 am on April 19, 2023: member
    Rebased post #27447.
  11. maflcko commented at 11:19 am on April 19, 2023: member

    is DEBUG=1 enabled for them as well in depends?

    Edit: I guess that would make them unusably slow?

  12. fanquake commented at 3:05 pm on April 19, 2023: member

    is DEBUG=1 enabled for them as well in depends? Edit: I guess that would make them unusably slow?

    They don’t run too slow, but they seem to find bugs. #27222 reproduces on x86_64:

     0wallet/test/feebumper_tests.cpp(18): Entering test suite "feebumper_tests"
     1wallet/test/feebumper_tests.cpp(42): Entering test case "external_max_weight_test"
     22023-04-19T14:50:06Z Seed: Setting random seed for current tests to RANDOM_CTX_SEED=bcbaed399ecb4b53cf5998534b1cb7a9bdddd1c1755a5766212f5af3ac9745c2
     32023-04-19T14:50:06.208691Z [test] [init/common.cpp:150] [LogPackageVersion] Bitcoin Core version v24.99.0-df230b476635 (release build)
     42023-04-19T14:50:06.209990Z [test] [kernel/context.cpp:21] [Context] Using the 'sse4(1way),sse41(4way),avx2(8way)' SHA256 implementation
     52023-04-19T14:50:06.210154Z [test] [random.cpp:99] [ReportHardwareRand] Using RdSeed as an additional entropy source
     62023-04-19T14:50:06.210296Z [test] [random.cpp:102] [ReportHardwareRand] Using RdRand as an additional entropy source
     72023-04-19T14:50:06.240134Z [test] [script/sigcache.cpp:103] [InitSignatureCache] Using 16 MiB out of 16 MiB requested for signature cache, able to store 524288 elements
     82023-04-19T14:50:06.268452Z [test] [validation.cpp:1747] [InitScriptExecutionCache] Using 16 MiB out of 16 MiB requested for script execution cache, able to store 524288 elements
     92023-04-19T14:50:06.269089Z [scheduler] [util/thread.cpp:20] [TraceThread] scheduler thread start
    102023-04-19T14:50:06.272308Z [test] [policy/fees.cpp:551] [CBlockPolicyEstimator] Failed to read fee estimates from /tmp/test_common_Bitcoin Core/6e563b3d9911b27f87e09262af2afa0b6d61b8f9d475923100191822474c5cee/fee_estimates.dat. Continue anyway.
    112023-04-19T14:50:06.273678Z [test] [dbwrapper.cpp:158] [CDBWrapper] Opened LevelDB successfully
    122023-04-19T14:50:06.273925Z [test] [dbwrapper.cpp:183] [CDBWrapper] Using obfuscation key for /tmp/test_common_Bitcoin Core/6e563b3d9911b27f87e09262af2afa0b6d61b8f9d475923100191822474c5cee/blocks/index: 0000000000000000
    132023-04-19T14:50:06.396567Z [test] [node/chainstate.cpp:165] [LoadChainstate] Assuming ancestors of block 00000000000000000009c97098b5295f7e5f183ac811fb5d1534040adb93cabd have valid signatures.
    142023-04-19T14:50:06.396768Z [test] [node/chainstate.cpp:169] [LoadChainstate] Setting nMinimumChainWork=00000000000000000000000000000000000000003404ba0801921119f903495e
    152023-04-19T14:50:06.397711Z [test] [dbwrapper.cpp:158] [CDBWrapper] Opened LevelDB successfully
    162023-04-19T14:50:06.397958Z [test] [dbwrapper.cpp:183] [CDBWrapper] Using obfuscation key for /tmp/test_common_Bitcoin Core/6e563b3d9911b27f87e09262af2afa0b6d61b8f9d475923100191822474c5cee/blocks/index: 0000000000000000
    172023-04-19T14:50:06.398296Z [test] [node/blockstorage.cpp:329] [LoadBlockIndexDB] LoadBlockIndexDB: last block file = 0
    182023-04-19T14:50:06.398584Z [test] [node/blockstorage.cpp:333] [LoadBlockIndexDB] LoadBlockIndexDB: last block file info: CBlockFileInfo(blocks=0, size=0, heights=0...0, time=1970-01-01...1970-01-01)
    192023-04-19T14:50:06.398774Z [test] [node/blockstorage.cpp:344] [LoadBlockIndexDB] Checking all blk files are present...
    202023-04-19T14:50:06.399089Z [test] [validation.cpp:4494] [LoadBlockIndex] Initializing databases...
    212023-04-19T14:50:06.399493Z [test] [flatfile.cpp:69] [Allocate] [validation] Pre-allocating up to position 0x1000000 in blk00000.dat
    222023-04-19T14:50:06.399937Z [test] [node/chainstate.cpp:107] [CompleteChainstateInitialization] Initializing chainstate Chainstate [ibd] @ height -1 (null)
    232023-04-19T14:50:06.400680Z [test] [dbwrapper.cpp:158] [CDBWrapper] Opened LevelDB successfully
    242023-04-19T14:50:06.401046Z [test] [dbwrapper.cpp:180] [CDBWrapper] Wrote new obfuscate key for /tmp/test_common_Bitcoin Core/6e563b3d9911b27f87e09262af2afa0b6d61b8f9d475923100191822474c5cee/chainstate: f99c9db210c2a968
    252023-04-19T14:50:06.401256Z [test] [dbwrapper.cpp:183] [CDBWrapper] Using obfuscation key for /tmp/test_common_Bitcoin Core/6e563b3d9911b27f87e09262af2afa0b6d61b8f9d475923100191822474c5cee/chainstate: f99c9db210c2a968
    262023-04-19T14:50:06.401590Z [test] [validation.cpp:5539] [MaybeRebalanceCaches] [snapshot] allocating all cache to the IBD chainstate
    272023-04-19T14:50:06.401792Z [test] [validation.cpp:4921] [ResizeCoinsCaches] [Chainstate [ibd] @ height -1 (null)] resized coinsdb cache to 8.0 MiB
    282023-04-19T14:50:06.401985Z [test] [validation.cpp:4923] [ResizeCoinsCaches] [Chainstate [ibd] [@Uninitialized](/bitcoin-bitcoin/contributor/uninitialized/) bytes in __interceptor_strlen at offset 9 inside [0x72e00000b9a8, 10)
    29==38655==WARNING: MemorySanitizer: use-of-uninitialized-value
    30    [#0](/bitcoin-bitcoin/0/) 0x555f25637ceb in sqlite3Strlen30 /home/ubuntu/bitcoin/depends/work/build/x86_64-pc-linux-gnu/sqlite/3380500-7fe5d5b9fee/sqlite3.c:32670:28
    31    [#1](/bitcoin-bitcoin/1/) 0x555f25685834 in sqlite3VdbeExec /home/ubuntu/bitcoin/depends/work/build/x86_64-pc-linux-gnu/sqlite/3380500-7fe5d5b9fee/sqlite3.c:88638:13
    32    [#2](/bitcoin-bitcoin/2/) 0x555f256422a8 in sqlite3Step /home/ubuntu/bitcoin/depends/work/build/x86_64-pc-linux-gnu/sqlite/3380500-7fe5d5b9fee/sqlite3.c:85780:10
    33    [#3](/bitcoin-bitcoin/3/) 0x555f2563a761 in sqlite3_step /home/ubuntu/bitcoin/depends/work/build/x86_64-pc-linux-gnu/sqlite/3380500-7fe5d5b9fee/sqlite3.c:85837:16
    34    [#4](/bitcoin-bitcoin/4/) 0x555f25648a57 in sqlite3_exec /home/ubuntu/bitcoin/depends/work/build/x86_64-pc-linux-gnu/sqlite/3380500-7fe5d5b9fee/sqlite3.c:128170:12
    35    [#5](/bitcoin-bitcoin/5/) 0x555f2443a03d in wallet::SetPragma(sqlite3*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&) src/wallet/sqlite.cpp:77:15
    36    [#6](/bitcoin-bitcoin/6/) 0x555f24437ffd in wallet::SQLiteDatabase::Open() src/wallet/sqlite.cpp:245:5
    37    [#7](/bitcoin-bitcoin/7/) 0x555f24431aed in wallet::SQLiteDatabase::SQLiteDatabase(fs::path const&, fs::path const&, wallet::DatabaseOptions const&, bool) src/wallet/sqlite.cpp:113:9
    38    [#8](/bitcoin-bitcoin/8/) 0x555f243d3558 in std::__1::__unique_if<wallet::SQLiteDatabase>::__unique_single std::__1::make_unique[abi:v160001]<wallet::SQLiteDatabase, char const (&) [9], char const (&) [1], wallet::DatabaseOptions&, bool>(char const (&) [9], char const (&) [1], wallet::DatabaseOptions&, bool&&) /home/ubuntu/bitcoin/ci/scratch/msan/build/include/c++/v1/__memory/unique_ptr.h:686:30
    39    [#9](/bitcoin-bitcoin/9/) 0x555f243cbba4 in wallet::CreateMockWalletDatabase(wallet::DatabaseOptions&) src/wallet/walletdb.cpp:1264:16
    40    [#10](/bitcoin-bitcoin/10/) 0x555f243cbba4 in wallet::CreateMockWalletDatabase() src/wallet/walletdb.cpp:1278:12
    41    [#11](/bitcoin-bitcoin/11/) 0x555f22b58a8e in wallet::WalletTestingSetup::WalletTestingSetup(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&) src/wallet/test/wallet_test_fixture.cpp:13:40
    42    [#12](/bitcoin-bitcoin/12/) 0x555f23e53db3 in wallet::feebumper::feebumper_tests::external_max_weight_test::external_max_weight_test() src/wallet/test/feebumper_tests.cpp:42:1
    43    [#13](/bitcoin-bitcoin/13/) 0x555f23e53db3 in wallet::feebumper::feebumper_tests::external_max_weight_test_invoker() src/wallet/test/feebumper_tests.cpp:42:1
    44    [#14](/bitcoin-bitcoin/14/) 0x555f22c4ab35 in boost::detail::function::void_function_invoker0<void (*)(), void>::invoke(boost::detail::function::function_buffer&) /home/ubuntu/bitcoin/depends/x86_64-pc-linux-gnu/include/boost/function/function_template.hpp:117:11
    45    [#15](/bitcoin-bitcoin/15/) 0x555f22b47bbe in boost::function0<void>::operator()() const /home/ubuntu/bitcoin/depends/x86_64-pc-linux-gnu/include/boost/function/function_template.hpp:763:14
    46    [#16](/bitcoin-bitcoin/16/) 0x555f22b47bbe in boost::detail::forward::operator()() /home/ubuntu/bitcoin/depends/x86_64-pc-linux-gnu/include/boost/test/impl/execution_monitor.ipp:1388:32
    47    [#17](/bitcoin-bitcoin/17/) 0x555f22b47bbe in boost::detail::function::function_obj_invoker0<boost::detail::forward, int>::invoke(boost::detail::function::function_buffer&) /home/ubuntu/bitcoin/depends/x86_64-pc-linux-gnu/include/boost/function/function_template.hpp:137:18
    48    [#18](/bitcoin-bitcoin/18/) 0x555f22a1b302 in boost::function0<int>::operator()() const /home/ubuntu/bitcoin/depends/x86_64-pc-linux-gnu/include/boost/function/function_template.hpp:763:14
    49    [#19](/bitcoin-bitcoin/19/) 0x555f22a1b302 in int boost::detail::do_invoke<boost::shared_ptr<boost::detail::translator_holder_base>, boost::function<int ()>>(boost::shared_ptr<boost::detail::translator_holder_base> const&, boost::function<int ()> const&) /home/ubuntu/bitcoin/depends/x86_64-pc-linux-gnu/include/boost/test/impl/execution_monitor.ipp:301:30
    50    [#20](/bitcoin-bitcoin/20/) 0x555f22a1b302 in boost::execution_monitor::catch_signals(boost::function<int ()> const&) /home/ubuntu/bitcoin/depends/x86_64-pc-linux-gnu/include/boost/test/impl/execution_monitor.ipp:903:16
    51    [#21](/bitcoin-bitcoin/21/) 0x555f22a1b98a in boost::execution_monitor::execute(boost::function<int ()> const&) /home/ubuntu/bitcoin/depends/x86_64-pc-linux-gnu/include/boost/test/impl/execution_monitor.ipp:1301:16
    52    [#22](/bitcoin-bitcoin/22/) 0x555f22a12d7a in boost::execution_monitor::vexecute(boost::function<void ()> const&) /home/ubuntu/bitcoin/depends/x86_64-pc-linux-gnu/include/boost/test/impl/execution_monitor.ipp:1397:5
    53    [#23](/bitcoin-bitcoin/23/) 0x555f22a12d7a in boost::unit_test::unit_test_monitor_t::execute_and_translate(boost::function<void ()> const&, unsigned long) /home/ubuntu/bitcoin/depends/x86_64-pc-linux-gnu/include/boost/test/impl/unit_test_monitor.ipp:49:9
    54    [#24](/bitcoin-bitcoin/24/) 0x555f22a8e1bb in boost::unit_test::framework::state::execute_test_tree(unsigned long, unsigned long, boost::unit_test::framework::state::random_generator_helper const*) /home/ubuntu/bitcoin/depends/x86_64-pc-linux-gnu/include/boost/test/impl/framework.ipp:815:44
    55    [#25](/bitcoin-bitcoin/25/) 0x555f22a8eecb in boost::unit_test::framework::state::execute_test_tree(unsigned long, unsigned long, boost::unit_test::framework::state::random_generator_helper const*) /home/ubuntu/bitcoin/depends/x86_64-pc-linux-gnu/include/boost/test/impl/framework.ipp:784:58
    56    [#26](/bitcoin-bitcoin/26/) 0x555f22a8eecb in boost::unit_test::framework::state::execute_test_tree(unsigned long, unsigned long, boost::unit_test::framework::state::random_generator_helper const*) /home/ubuntu/bitcoin/depends/x86_64-pc-linux-gnu/include/boost/test/impl/framework.ipp:784:58
    57    [#27](/bitcoin-bitcoin/27/) 0x555f22a0fa1e in boost::unit_test::framework::run(unsigned long, bool) /home/ubuntu/bitcoin/depends/x86_64-pc-linux-gnu/include/boost/test/impl/framework.ipp:1722:29
    58    [#28](/bitcoin-bitcoin/28/) 0x555f22a490ec in boost::unit_test::unit_test_main(boost::unit_test::test_suite* (*)(int, char**), int, char**) /home/ubuntu/bitcoin/depends/x86_64-pc-linux-gnu/include/boost/test/impl/unit_test_main.ipp:250:9
    59    [#29](/bitcoin-bitcoin/29/) 0x555f22a4a1d4 in main /home/ubuntu/bitcoin/depends/x86_64-pc-linux-gnu/include/boost/test/impl/unit_test_main.ipp:306:12
    60    [#30](/bitcoin-bitcoin/30/) 0x7f0ae3d58a8f  (/lib/x86_64-linux-gnu/libc.so.6+0x23a8f) (BuildId: bdb8aa3b1b60f9d43e1c70ba98158e05f765efdc)
    61    [#31](/bitcoin-bitcoin/31/) 0x7f0ae3d58b48 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x23b48) (BuildId: bdb8aa3b1b60f9d43e1c70ba98158e05f765efdc)
    62    [#32](/bitcoin-bitcoin/32/) 0x555f22956fe4 in _start (/home/ubuntu/bitcoin/ci/scratch/build/bitcoin-x86_64-pc-linux-gnu/src/test/test_bitcoin+0x177fe4) (BuildId: 633af1da154757ae52d66bed70e34016956c7d12)
    63
    64  Uninitialized value was created by a heap allocation
    65    [#0](/bitcoin-bitcoin/0/) 0x555f2298a532 in malloc (/home/ubuntu/bitcoin/ci/scratch/build/bitcoin-x86_64-pc-linux-gnu/src/test/test_bitcoin+0x1ab532) (BuildId: 633af1da154757ae52d66bed70e34016956c7d12)
    66    [#1](/bitcoin-bitcoin/1/) 0x555f2575f109 in sqlite3MemMalloc /home/ubuntu/bitcoin/depends/work/build/x86_64-pc-linux-gnu/sqlite/3380500-7fe5d5b9fee/sqlite3.c:25163:7
    67    [#2](/bitcoin-bitcoin/2/) 0x555f2565545c in mallocWithAlarm /home/ubuntu/bitcoin/depends/work/build/x86_64-pc-linux-gnu/sqlite/3380500-7fe5d5b9fee/sqlite3.c:28846:7
    68    [#3](/bitcoin-bitcoin/3/) 0x555f25633f59 in sqlite3Malloc /home/ubuntu/bitcoin/depends/work/build/x86_64-pc-linux-gnu/sqlite/3380500-7fe5d5b9fee/sqlite3.c:28876:5
    69    [#4](/bitcoin-bitcoin/4/) 0x555f2564d744 in setupLookaside /home/ubuntu/bitcoin/depends/work/build/x86_64-pc-linux-gnu/sqlite/3380500-7fe5d5b9fee/sqlite3.c:169302:14
    70    [#5](/bitcoin-bitcoin/5/) 0x555f25650615 in openDatabase /home/ubuntu/bitcoin/depends/work/build/x86_64-pc-linux-gnu/sqlite/3380500-7fe5d5b9fee/sqlite3.c:171986:3
    71    [#6](/bitcoin-bitcoin/6/) 0x555f2565076a in sqlite3_open_v2 /home/ubuntu/bitcoin/depends/work/build/x86_64-pc-linux-gnu/sqlite/3380500-7fe5d5b9fee/sqlite3.c:172034:10
    72    [#7](/bitcoin-bitcoin/7/) 0x555f24437e87 in wallet::SQLiteDatabase::Open() src/wallet/sqlite.cpp:229:19
    73    [#8](/bitcoin-bitcoin/8/) 0x555f24431aed in wallet::SQLiteDatabase::SQLiteDatabase(fs::path const&, fs::path const&, wallet::DatabaseOptions const&, bool) src/wallet/sqlite.cpp:113:9
    74    [#9](/bitcoin-bitcoin/9/) 0x555f243d3558 in std::__1::__unique_if<wallet::SQLiteDatabase>::__unique_single std::__1::make_unique[abi:v160001]<wallet::SQLiteDatabase, char const (&) [9], char const (&) [1], wallet::DatabaseOptions&, bool>(char const (&) [9], char const (&) [1], wallet::DatabaseOptions&, bool&&) /home/ubuntu/bitcoin/ci/scratch/msan/build/include/c++/v1/__memory/unique_ptr.h:686:30
    75    [#10](/bitcoin-bitcoin/10/) 0x555f243cbba4 in wallet::CreateMockWalletDatabase(wallet::DatabaseOptions&) src/wallet/walletdb.cpp:1264:16
    76    [#11](/bitcoin-bitcoin/11/) 0x555f243cbba4 in wallet::CreateMockWalletDatabase() src/wallet/walletdb.cpp:1278:12
    77    [#12](/bitcoin-bitcoin/12/) 0x555f22b58a8e in wallet::WalletTestingSetup::WalletTestingSetup(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&) src/wallet/test/wallet_test_fixture.cpp:13:40
    78    [#13](/bitcoin-bitcoin/13/) 0x555f23e53db3 in wallet::feebumper::feebumper_tests::external_max_weight_test::external_max_weight_test() src/wallet/test/feebumper_tests.cpp:42:1
    79    [#14](/bitcoin-bitcoin/14/) 0x555f23e53db3 in wallet::feebumper::feebumper_tests::external_max_weight_test_invoker() src/wallet/test/feebumper_tests.cpp:42:1
    80    [#15](/bitcoin-bitcoin/15/) 0x555f22c4ab35 in boost::detail::function::void_function_invoker0<void (*)(), void>::invoke(boost::detail::function::function_buffer&) /home/ubuntu/bitcoin/depends/x86_64-pc-linux-gnu/include/boost/function/function_template.hpp:117:11
    81    [#16](/bitcoin-bitcoin/16/) 0x555f22b47bbe in boost::function0<void>::operator()() const /home/ubuntu/bitcoin/depends/x86_64-pc-linux-gnu/include/boost/function/function_template.hpp:763:14
    82    [#17](/bitcoin-bitcoin/17/) 0x555f22b47bbe in boost::detail::forward::operator()() /home/ubuntu/bitcoin/depends/x86_64-pc-linux-gnu/include/boost/test/impl/execution_monitor.ipp:1388:32
    83    [#18](/bitcoin-bitcoin/18/) 0x555f22b47bbe in boost::detail::function::function_obj_invoker0<boost::detail::forward, int>::invoke(boost::detail::function::function_buffer&) /home/ubuntu/bitcoin/depends/x86_64-pc-linux-gnu/include/boost/function/function_template.hpp:137:18
    84    [#19](/bitcoin-bitcoin/19/) 0x555f22a1b302 in boost::function0<int>::operator()() const /home/ubuntu/bitcoin/depends/x86_64-pc-linux-gnu/include/boost/function/function_template.hpp:763:14
    85    [#20](/bitcoin-bitcoin/20/) 0x555f22a1b302 in int boost::detail::do_invoke<boost::shared_ptr<boost::detail::translator_holder_base>, boost::function<int ()>>(boost::shared_ptr<boost::detail::translator_holder_base> const&, boost::function<int ()> const&) /home/ubuntu/bitcoin/depends/x86_64-pc-linux-gnu/include/boost/test/impl/execution_monitor.ipp:301:30
    86    [#21](/bitcoin-bitcoin/21/) 0x555f22a1b302 in boost::execution_monitor::catch_signals(boost::function<int ()> const&) /home/ubuntu/bitcoin/depends/x86_64-pc-linux-gnu/include/boost/test/impl/execution_monitor.ipp:903:16
    87    [#22](/bitcoin-bitcoin/22/) 0x555f22a1b98a in boost::execution_monitor::execute(boost::function<int ()> const&) /home/ubuntu/bitcoin/depends/x86_64-pc-linux-gnu/include/boost/test/impl/execution_monitor.ipp:1301:16
    88    [#23](/bitcoin-bitcoin/23/) 0x555f22a12d7a in boost::execution_monitor::vexecute(boost::function<void ()> const&) /home/ubuntu/bitcoin/depends/x86_64-pc-linux-gnu/include/boost/test/impl/execution_monitor.ipp:1397:5
    89    [#24](/bitcoin-bitcoin/24/) 0x555f22a12d7a in boost::unit_test::unit_test_monitor_t::execute_and_translate(boost::function<void ()> const&, unsigned long) /home/ubuntu/bitcoin/depends/x86_64-pc-linux-gnu/include/boost/test/impl/unit_test_monitor.ipp:49:9
    90    [#25](/bitcoin-bitcoin/25/) 0x555f22a8e1bb in boost::unit_test::framework::state::execute_test_tree(unsigned long, unsigned long, boost::unit_test::framework::state::random_generator_helper const*) /home/ubuntu/bitcoin/depends/x86_64-pc-linux-gnu/include/boost/test/impl/framework.ipp:815:44
    91    [#26](/bitcoin-bitcoin/26/) 0x555f22a8eecb in boost::unit_test::framework::state::execute_test_tree(unsigned long, unsigned long, boost::unit_test::framework::state::random_generator_helper const*) /home/ubuntu/bitcoin/depends/x86_64-pc-linux-gnu/include/boost/test/impl/framework.ipp:784:58
    92
    93SUMMARY: MemorySanitizer: use-of-uninitialized-value /home/ubuntu/bitcoin/depends/work/build/x86_64-pc-linux-gnu/sqlite/3380500-7fe5d5b9fee/sqlite3.c:32670:28 in sqlite3Strlen30
    94Exiting
    

    Different on aarch64:

     02023-04-19T14:57:40.859244Z [test] [validation.cpp:2834] [ConnectTip] [bench]   - Load block from disk: 0.33ms [0.00s (infms/blk)]
     12023-04-19T14:57:40.859773Z [test] [validationinterface.cpp:25Uninitialized bytes in __interceptor_strcmp at offset 0 inside [0xe01000000e0c, 1)
     2==37748==WARNING: MemorySanitizer: use-of-uninitialized-value
     3    [#0](/bitcoin-bitcoin/0/) 0xaaaab8a82008 in sqlite3BtreeOpen /home/fedora/ci_scratch/depends/work/build/aarch64-unknown-linux-gnu/sqlite/3380500-b73e7dadeab/sqlite3.c:68556:37
     4    [#1](/bitcoin-bitcoin/1/) 0xaaaab8a71ddc in openDatabase /home/fedora/ci_scratch/depends/work/build/aarch64-unknown-linux-gnu/sqlite/3380500-b73e7dadeab/sqlite3.c:171911:8
     5    [#2](/bitcoin-bitcoin/2/) 0xaaaab8a721e4 in sqlite3_open_v2 /home/fedora/ci_scratch/depends/work/build/aarch64-unknown-linux-gnu/sqlite/3380500-b73e7dadeab/sqlite3.c:172034:10
     6    [#3](/bitcoin-bitcoin/3/) 0xaaaab7c216c8 in wallet::SQLiteDatabase::Open() src/wallet/sqlite.cpp:229:19
     7    [#4](/bitcoin-bitcoin/4/) 0xaaaab7c1c39c in wallet::SQLiteDatabase::SQLiteDatabase(fs::path const&, fs::path const&, wallet::DatabaseOptions const&, bool) src/wallet/sqlite.cpp:113:9
     8    [#5](/bitcoin-bitcoin/5/) 0xaaaab7bd1304 in std::__1::__unique_if<wallet::SQLiteDatabase>::__unique_single std::__1::make_unique[abi:v160001]<wallet::SQLiteDatabase, char const (&) [9], char const (&) [1], wallet::DatabaseOptions&, bool>(char const (&) [9], char const (&) [1], wallet::DatabaseOptions&, bool&&) /home/fedora/ci_scratch/ci/scratch/msan/build/include/c++/v1/__memory/unique_ptr.h:686:30
     9    [#6](/bitcoin-bitcoin/6/) 0xaaaab7bcaab4 in wallet::CreateMockWalletDatabase(wallet::DatabaseOptions&) src/wallet/walletdb.cpp:1264:16
    10    [#7](/bitcoin-bitcoin/7/) 0xaaaab7bcaab4 in wallet::CreateMockWalletDatabase() src/wallet/walletdb.cpp:1278:12
    11    [#8](/bitcoin-bitcoin/8/) 0xaaaab6789c44 in wallet::WalletTestingSetup::WalletTestingSetup(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&) src/wallet/test/wallet_test_fixture.cpp:13:40
    12    [#9](/bitcoin-bitcoin/9/) 0xaaaab77ba048 in wallet::wallet_tests::ComputeTimeSmart::ComputeTimeSmart() src/wallet/test/wallet_tests.cpp:407:1
    13    [#10](/bitcoin-bitcoin/10/) 0xaaaab77ba048 in wallet::wallet_tests::ComputeTimeSmart_invoker() src/wallet/test/wallet_tests.cpp:407:1
    14    [#11](/bitcoin-bitcoin/11/) 0xaaaab6852558 in boost::detail::function::void_function_invoker0<void (*)(), void>::invoke(boost::detail::function::function_buffer&) /home/fedora/ci_scratch/depends/aarch64-unknown-linux-gnu/include/boost/function/function_template.hpp:117:11
    15    [#12](/bitcoin-bitcoin/12/) 0xaaaab677be68 in boost::function0<void>::operator()() const /home/fedora/ci_scratch/depends/aarch64-unknown-linux-gnu/include/boost/function/function_template.hpp:763:14
    16    [#13](/bitcoin-bitcoin/13/) 0xaaaab677be68 in boost::detail::forward::operator()() /home/fedora/ci_scratch/depends/aarch64-unknown-linux-gnu/include/boost/test/impl/execution_monitor.ipp:1388:32
    17    [#14](/bitcoin-bitcoin/14/) 0xaaaab677be68 in boost::detail::function::function_obj_invoker0<boost::detail::forward, int>::invoke(boost::detail::function::function_buffer&) /home/fedora/ci_scratch/depends/aarch64-unknown-linux-gnu/include/boost/function/function_template.hpp:137:18
    18    [#15](/bitcoin-bitcoin/15/) 0xaaaab6685144 in boost::function0<int>::operator()() const /home/fedora/ci_scratch/depends/aarch64-unknown-linux-gnu/include/boost/function/function_template.hpp:763:14
    19    [#16](/bitcoin-bitcoin/16/) 0xaaaab6685144 in int boost::detail::do_invoke<boost::shared_ptr<boost::detail::translator_holder_base>, boost::function<int ()>>(boost::shared_ptr<boost::detail::translator_holder_base> const&, boost::function<int ()> const&) /home/fedora/ci_scratch/depends/aarch64-unknown-linux-gnu/include/boost/test/impl/execution_monitor.ipp:301:30
    20    [#17](/bitcoin-bitcoin/17/) 0xaaaab6685144 in boost::execution_monitor::catch_signals(boost::function<int ()> const&) /home/fedora/ci_scratch/depends/aarch64-unknown-linux-gnu/include/boost/test/impl/execution_monitor.ipp:903:16
    21    [#18](/bitcoin-bitcoin/18/) 0xaaaab66856c8 in boost::execution_monitor::execute(boost::function<int ()> const&) /home/fedora/ci_scratch/depends/aarch64-unknown-linux-gnu/include/boost/test/impl/execution_monitor.ipp:1301:16
    22    [#19](/bitcoin-bitcoin/19/) 0xaaaab667dcc0 in boost::execution_monitor::vexecute(boost::function<void ()> const&) /home/fedora/ci_scratch/depends/aarch64-unknown-linux-gnu/include/boost/test/impl/execution_monitor.ipp:1397:5
    23    [#20](/bitcoin-bitcoin/20/) 0xaaaab667dcc0 in boost::unit_test::unit_test_monitor_t::execute_and_translate(boost::function<void ()> const&, unsigned long) /home/fedora/ci_scratch/depends/aarch64-unknown-linux-gnu/include/boost/test/impl/unit_test_monitor.ipp:49:9
    24    [#21](/bitcoin-bitcoin/21/) 0xaaaab66e2808 in boost::unit_test::framework::state::execute_test_tree(unsigned long, unsigned long, boost::unit_test::framework::state::random_generator_helper const*) /home/fedora/ci_scratch/depends/aarch64-unknown-linux-gnu/include/boost/test/impl/framework.ipp:815:44
    25    [#22](/bitcoin-bitcoin/22/) 0xaaaab66e2218 in boost::unit_test::framework::state::execute_test_tree(unsigned long, unsigned long, boost::unit_test::framework::state::random_generator_helper const*) /home/fedora/ci_scratch/depends/aarch64-unknown-linux-gnu/include/boost/test/impl/framework.ipp:784:58
    26    [#23](/bitcoin-bitcoin/23/) 0xaaaab66e2218 in boost::unit_test::framework::state::execute_test_tree(unsigned long, unsigned long, boost::unit_test::framework::state::random_generator_helper const*) /home/fedora/ci_scratch/depends/aarch64-unknown-linux-gnu/include/boost/test/impl/framework.ipp:784:58
    27    [#24](/bitcoin-bitcoin/24/) 0xaaaab667ae10 in boost::unit_test::framework::run(unsigned long, bool) /home/fedora/ci_scratch/depends/aarch64-unknown-linux-gnu/include/boost/test/impl/framework.ipp:1722:29
    28    [#25](/bitcoin-bitcoin/25/) 0xaaaab66aadb4 in boost::unit_test::unit_test_main(boost::unit_test::test_suite* (*)(int, char**), int, char**) /home/fedora/ci_scratch/depends/aarch64-unknown-linux-gnu/include/boost/test/impl/unit_test_main.ipp:250:9
    29    [#26](/bitcoin-bitcoin/26/) 0xaaaab66abb98 in main /home/fedora/ci_scratch/depends/aarch64-unknown-linux-gnu/include/boost/test/impl/unit_test_main.ipp:306:12
    30    [#27](/bitcoin-bitcoin/27/) 0xffff91066dbc  (/lib/aarch64-linux-gnu/libc.so.6+0x26dbc) (BuildId: 9efe43e32e614cad22a180ef036eea6154eafdc2)
    31    [#28](/bitcoin-bitcoin/28/) 0xffff91066e94 in __libc_start_main (/lib/aarch64-linux-gnu/libc.so.6+0x26e94) (BuildId: 9efe43e32e614cad22a180ef036eea6154eafdc2)
    32    [#29](/bitcoin-bitcoin/29/) 0xaaaab65cd6ec in _start (/home/fedora/ci_scratch/ci/scratch/build/bitcoin-aarch64-unknown-linux-gnu/src/test/test_bitcoin+0x15d6ec) (BuildId: 78bb98243eb0da25c31e795ae10bd1ff4597c7e4)
    33
    34  Uninitialized value was created by a heap allocation
    35    [#0](/bitcoin-bitcoin/0/) 0xaaaab65ffd14 in malloc (/home/fedora/ci_scratch/ci/scratch/build/bitcoin-aarch64-unknown-linux-gnu/src/test/test_bitcoin+0x18fd14) (BuildId: 78bb98243eb0da25c31e795ae10bd1ff4597c7e4)
    36    [#1](/bitcoin-bitcoin/1/) 0xaaaab8bb18d4 in sqlite3MemMalloc /home/fedora/ci_scratch/depends/work/build/aarch64-unknown-linux-gnu/sqlite/3380500-b73e7dadeab/sqlite3.c:25163:7
    37    [#2](/bitcoin-bitcoin/2/) 0xaaaab8a77948 in mallocWithAlarm /home/fedora/ci_scratch/depends/work/build/aarch64-unknown-linux-gnu/sqlite/3380500-b73e7dadeab/sqlite3.c:28846:7
    38    [#3](/bitcoin-bitcoin/3/) 0xaaaab8a508bc in sqlite3Malloc /home/fedora/ci_scratch/depends/work/build/aarch64-unknown-linux-gnu/sqlite/3380500-b73e7dadeab/sqlite3.c:28876:5
    39    [#4](/bitcoin-bitcoin/4/) 0xaaaab8a5096c in sqlite3_malloc64 /home/fedora/ci_scratch/depends/work/build/aarch64-unknown-linux-gnu/sqlite/3380500-b73e7dadeab/sqlite3.c:28900:10
    40    [#5](/bitcoin-bitcoin/5/) 0xaaaab8b9aca4 in sqlite3ParseUri /home/fedora/ci_scratch/depends/work/build/aarch64-unknown-linux-gnu/sqlite/3380500-b73e7dadeab/sqlite3.c:171638:13
    41    [#6](/bitcoin-bitcoin/6/) 0xaaaab8a71d34 in openDatabase /home/fedora/ci_scratch/depends/work/build/aarch64-unknown-linux-gnu/sqlite/3380500-b73e7dadeab/sqlite3.c:171901:10
    42    [#7](/bitcoin-bitcoin/7/) 0xaaaab8a721e4 in sqlite3_open_v2 /home/fedora/ci_scratch/depends/work/build/aarch64-unknown-linux-gnu/sqlite/3380500-b73e7dadeab/sqlite3.c:172034:10
    43    [#8](/bitcoin-bitcoin/8/) 0xaaaab7c216c8 in wallet::SQLiteDatabase::Open() src/wallet/sqlite.cpp:229:19
    44    [#9](/bitcoin-bitcoin/9/) 0xaaaab7c1c39c in wallet::SQLiteDatabase::SQLiteDatabase(fs::path const&, fs::path const&, wallet::DatabaseOptions const&, bool) src/wallet/sqlite.cpp:113:9
    45    [#10](/bitcoin-bitcoin/10/) 0xaaaab7bd1304 in std::__1::__unique_if<wallet::SQLiteDatabase>::__unique_single std::__1::make_unique[abi:v160001]<wallet::SQLiteDatabase, char const (&) [9], char const (&) [1], wallet::DatabaseOptions&, bool>(char const (&) [9], char const (&) [1], wallet::DatabaseOptions&, bool&&) /home/fedora/ci_scratch/ci/scratch/msan/build/include/c++/v1/__memory/unique_ptr.h:686:30
    46    [#11](/bitcoin-bitcoin/11/) 0xaaaab7bcaab4 in wallet::CreateMockWalletDatabase(wallet::DatabaseOptions&) src/wallet/walletdb.cpp:1264:16
    47    [#12](/bitcoin-bitcoin/12/) 0xaaaab7bcaab4 in wallet::CreateMockWalletDatabase() src/wallet/walletdb.cpp:1278:12
    48    [#13](/bitcoin-bitcoin/13/) 0xaaaab6789c44 in wallet::WalletTestingSetup::WalletTestingSetup(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&) src/wallet/test/wallet_test_fixture.cpp:13:40
    49    [#14](/bitcoin-bitcoin/14/) 0xaaaab77ba048 in wallet::wallet_tests::ComputeTimeSmart::ComputeTimeSmart() src/wallet/test/wallet_tests.cpp:407:1
    50    [#15](/bitcoin-bitcoin/15/) 0xaaaab77ba048 in wallet::wallet_tests::ComputeTimeSmart_invoker() src/wallet/test/wallet_tests.cpp:407:1
    51    [#16](/bitcoin-bitcoin/16/) 0xaaaab6852558 in boost::detail::function::void_function_invoker0<void (*)(), void>::invoke(boost::detail::function::function_buffer&) /home/fedora/ci_scratch/depends/aarch64-unknown-linux-gnu/include/boost/function/function_template.hpp:117:11
    52    [#17](/bitcoin-bitcoin/17/) 0xaaaab677be68 in boost::function0<void>::operator()() const /home/fedora/ci_scratch/depends/aarch64-unknown-linux-gnu/include/boost/function/function_template.hpp:763:14
    53    [#18](/bitcoin-bitcoin/18/) 0xaaaab677be68 in boost::detail::forward::operator()() /home/fedora/ci_scratch/depends/aarch64-unknown-linux-gnu/include/boost/test/impl/execution_monitor.ipp:1388:32
    54    [#19](/bitcoin-bitcoin/19/) 0xaaaab677be68 in boost::detail::function::function_obj_invoker0<boost::detail::forward, int>::invoke(boost::detail::function::function_buffer&) /home/fedora/ci_scratch/depends/aarch64-unknown-linux-gnu/include/boost/function/function_template.hpp:137:18
    55    [#20](/bitcoin-bitcoin/20/) 0xaaaab6685144 in boost::function0<int>::operator()() const /home/fedora/ci_scratch/depends/aarch64-unknown-linux-gnu/include/boost/function/function_template.hpp:763:14
    56    [#21](/bitcoin-bitcoin/21/) 0xaaaab6685144 in int boost::detail::do_invoke<boost::shared_ptr<boost::detail::translator_holder_base>, boost::function<int ()>>(boost::shared_ptr<boost::detail::translator_holder_base> const&, boost::function<int ()> const&) /home/fedora/ci_scratch/depends/aarch64-unknown-linux-gnu/include/boost/test/impl/execution_monitor.ipp:301:30
    57    [#22](/bitcoin-bitcoin/22/) 0xaaaab6685144 in boost::execution_monitor::catch_signals(boost::function<int ()> const&) /home/fedora/ci_scratch/depends/aarch64-unknown-linux-gnu/include/boost/test/impl/execution_monitor.ipp:903:16
    58    [#23](/bitcoin-bitcoin/23/) 0xaaaab66856c8 in boost::execution_monitor::execute(boost::function<int ()> const&) /home/fedora/ci_scratch/depends/aarch64-unknown-linux-gnu/include/boost/test/impl/execution_monitor.ipp:1301:16
    59    [#24](/bitcoin-bitcoin/24/) 0xaaaab667dcc0 in boost::execution_monitor::vexecute(boost::function<void ()> const&) /home/fedora/ci_scratch/depends/aarch64-unknown-linux-gnu/include/boost/test/impl/execution_monitor.ipp:1397:5
    60    [#25](/bitcoin-bitcoin/25/) 0xaaaab667dcc0 in boost::unit_test::unit_test_monitor_t::execute_and_translate(boost::function<void ()> const&, unsigned long) /home/fedora/ci_scratch/depends/aarch64-unknown-linux-gnu/include/boost/test/impl/unit_test_monitor.ipp:49:9
    61    [#26](/bitcoin-bitcoin/26/) 0xaaaab66e2808 in boost::unit_test::framework::state::execute_test_tree(unsigned long, unsigned long, boost::unit_test::framework::state::random_generator_helper const*) /home/fedora/ci_scratch/depends/aarch64-unknown-linux-gnu/include/boost/test/impl/framework.ipp:815:44
    62
    63SUMMARY: MemorySanitizer: use-of-uninitialized-value /home/fedora/ci_scratch/depends/work/build/aarch64-unknown-linux-gnu/sqlite/3380500-b73e7dadeab/sqlite3.c:68556:37 in sqlite3BtreeOpen
    64Exiting
    

    Pushed DEBUG=1 up here to see if it also recreates in the native_msan CI. (cancelled all other tasks).

  13. in ci/test/00_setup_env_native_msan.sh:18 in 1a666d7f61 outdated
    14@@ -15,7 +15,7 @@ export MSAN_AND_LIBCXX_FLAGS="${MSAN_FLAGS} ${LIBCXX_FLAGS}"
    15 export CONTAINER_NAME="ci_native_msan"
    16 export PACKAGES="clang-16 llvm-16 libclang-rt-16-dev cmake"
    17 # BDB generates false-positives and will be removed in future
    18-export DEP_OPTS="NO_BDB=1 NO_QT=1 CC='clang' CXX='clang++' CFLAGS='${MSAN_FLAGS}' CXXFLAGS='${MSAN_AND_LIBCXX_FLAGS}'"
    19+export DEP_OPTS="DEBUG=1 NO_BDB=1 NO_QT=1 CC='clang' CXX='clang++' CFLAGS='${MSAN_FLAGS}' CXXFLAGS='${MSAN_AND_LIBCXX_FLAGS}'"
    


    maflcko commented at 3:39 pm on April 19, 2023:
    Forgot to set this for the fuzz msan task?

    maflcko commented at 3:41 pm on April 19, 2023:
    And given that the CI fails here (c.f. https://cirrus-ci.com/task/5681913176784896?logs=ci#L2667), maybe add it to the msan task in a follow-up and only set it on the fuzz msan task?

    fanquake commented at 3:55 pm on April 19, 2023:

    Forgot to set this for the fuzz msan task?

    I didn’t bother as that isn’t run here, and wouldn’t compile rn (master) in any case.

    maybe add it to the msan task in a follow-up and only set it on the fuzz msan task?

    I think I’d rather defer to adding both, at the same time, in a follow up, if you’re alright with that. Can drop the test commit from this PR.


    fanquake commented at 5:41 pm on April 19, 2023:
    Followed up in #27495.
  14. DrahtBot added the label CI failed on Apr 19, 2023
  15. fanquake force-pushed on Apr 19, 2023
  16. maflcko commented at 4:04 pm on April 19, 2023: member
    lgtm ACK 4de9c2a65f6770405f167c7392cd8371111bc4e8
  17. DrahtBot removed the label CI failed on Apr 19, 2023
  18. fanquake merged this on Apr 19, 2023
  19. fanquake closed this on Apr 19, 2023

  20. fanquake deleted the branch on Apr 19, 2023
  21. fanquake referenced this in commit be262a4136 on Apr 19, 2023
  22. fanquake referenced this in commit 58b2e06dfb on Apr 20, 2023
  23. sidhujag referenced this in commit d3e82cf873 on Apr 21, 2023
  24. fanquake referenced this in commit 7baf961043 on May 17, 2023
  25. achow101 referenced this in commit 07dae9b93f on May 17, 2023
  26. fanquake referenced this in commit 58fb292fcf on Jun 2, 2023
  27. fanquake referenced this in commit d76d66bc8c on Jun 20, 2023
  28. fanquake referenced this in commit 01b9e8500e on Jun 20, 2023
  29. fanquake referenced this in commit fde602a8a9 on Jun 21, 2023
  30. fanquake referenced this in commit b7b9b584e5 on Aug 23, 2023
  31. fanquake referenced this in commit 57d5099ab4 on Sep 11, 2023
  32. fanquake referenced this in commit db9d283542 on Sep 14, 2023
  33. fanquake referenced this in commit 60b4e05656 on Sep 16, 2023
  34. fanquake referenced this in commit 6e57839ddf on Oct 16, 2023
  35. fanquake referenced this in commit ccdbcaaec0 on Oct 16, 2023
  36. fanquake referenced this in commit 4a7e024f57 on Nov 6, 2023
  37. fanquake referenced this in commit 946c547e65 on Nov 6, 2023
  38. fanquake referenced this in commit 9b69b1f20d on Nov 6, 2023
  39. fanquake referenced this in commit f25c6a2dc7 on Nov 6, 2023
  40. fanquake referenced this in commit 9bfae996c5 on Nov 16, 2023
  41. fanquake referenced this in commit 7c8860f6fb on Jan 5, 2024
  42. fanquake referenced this in commit 5af6c14ed7 on Jan 24, 2024
  43. fanquake referenced this in commit c8dfd04974 on Jan 25, 2024
  44. fanquake referenced this in commit 625c3666e1 on Jan 25, 2024
  45. fanquake referenced this in commit 8531e1e731 on Jan 26, 2024
  46. janus referenced this in commit 6c275f1cdb on Apr 6, 2024
  47. bitcoin locked this on Apr 18, 2024

github-metadata-mirror

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: 2024-07-01 10:13 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me