ci: Bump valgrind tasks to clang-18 #31273

pull maflcko wants to merge 1 commits into bitcoin:master from maflcko:2411-ci-valgrind-18 changing 2 files +7 −7
  1. maflcko commented at 3:57 pm on November 11, 2024: member
    This is the default, see https://packages.ubuntu.com/noble/clang, so likely more widely used. Thus, it seems better to use clang-18, instead of clang-16 in the valgrind CI tasks.
  2. ci: Bump valgrind task to clang-18 faa8ac8e92
  3. DrahtBot commented at 3:58 pm on November 11, 2024: contributor

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

    Code Coverage & Benchmarks

    For details see: https://corecheck.dev/bitcoin/bitcoin/pulls/31273.

    Reviews

    See the guideline for information on the review process. A summary of reviews will appear here.

  4. DrahtBot added the label Tests on Nov 11, 2024
  5. l0rinc commented at 4:08 pm on November 11, 2024: contributor

    better to use clang-18 […] in the valgrind CI tasks

    Why only for valgrind tasks and not e.g. 00_setup_env_native_nowallet_libbitcoinkernel.sh? To have a wider variety of versions?

  6. fanquake commented at 4:09 pm on November 11, 2024: member
    Last time I checked this, this needed additional suppressions (maybe only for aarch64)? Is that no-longer the case?
  7. fanquake commented at 4:10 pm on November 11, 2024: member

    Why only for valgrind tasks and not e.g. 00_setup_env_native_nowallet_libbitcoinkernel.sh?

    Probably because of the reason listed in 00_setup_env_native_nowallet_libbitcoinkernel.sh:

    Use minimum supported python3.10 (or best-effort 3.11) and clang-16, see doc/dependencies.md

  8. maflcko commented at 4:51 pm on November 11, 2024: member

    Ah, I guess that’d be #29635.

    I only found on Debian Trixie: (possibly fixed with valgrind 3.23?)

    0# uname --machine && valgrind --version && clang-19 --version 
    1x86_64
    2valgrind-3.20.0
    3Debian clang version 19.1.3 (1)
    4Target: x86_64-pc-linux-gnu
    5Thread model: posix
    6InstalledDir: /usr/lib/llvm-19/bin
    
     02024-11-11T13:31:48.924322Z [tes==12188== Source and destination overlap in memcpy_chk(0x1ffeffca88, 0x1ffeffca84, 8)
     1==12188==    at 0x484EE22: __memcpy_chk (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
     2==12188==    by 0x518D184: memmove (string_fortified.h:36)
     3==12188==    by 0x518D184: inet_pton6 (inet_pton.c:226)
     4==12188==    by 0x51A13B7: text_to_binary_address (getaddrinfo.c:917)
     5==12188==    by 0x51A13B7: gaih_inet (getaddrinfo.c:1168)
     6==12188==    by 0x51A13B7: getaddrinfo (getaddrinfo.c:2391)
     7==12188==    by 0x1163BD2: WrappedGetAddrInfo(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool) (./netbase.cpp:63)
     8==12188==    by 0x116A79A: __invoke_impl<std::vector<CNetAddr, std::allocator<CNetAddr> >, std::vector<CNetAddr, std::allocator<CNetAddr> > (*&)(const std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > &, bool), const std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > &, bool> (invoke.h:61)
     9==12188==    by 0x116A79A: __invoke_r<std::vector<CNetAddr, std::allocator<CNetAddr> >, std::vector<CNetAddr, std::allocator<CNetAddr> > (*&)(const std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > &, bool), const std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > &, bool> (invoke.h:114)
    10==12188==    by 0x116A79A: std::_Function_handler<std::vector<CNetAddr, std::allocator<CNetAddr> > (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool), std::vector<CNetAddr, std::allocator<CNetAddr> > (*)(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)>::_M_invoke(std::_Any_data const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool&&) (std_function.h:290)
    11==12188==    by 0x11649EB: operator() (std_function.h:591)
    12==12188==    by 0x11649EB: LookupIntern(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int, bool, std::function<std::vector<CNetAddr, std::allocator<CNetAddr> > (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)>) (???:164)
    13==12188==    by 0x116458D: LookupHost(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int, bool, std::function<std::vector<CNetAddr, std::allocator<CNetAddr> > (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)>) (./netbase.cpp:186)
    14==12188==    by 0x1164DBB: LookupHost(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool, std::function<std::vector<CNetAddr, std::allocator<CNetAddr> > (std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)>) (./netbase.cpp:191)
    15==12188==    by 0x5AE734: net_tests::cnetaddr_tostring_canonical_ipv6::test_method() (./test/net_tests.cpp:323)
    16==12188==    by 0x5ADCE6: net_tests::cnetaddr_tostring_canonical_ipv6_invoker() (./test/net_tests.cpp:276)
    17==12188==    by 0x22112F: operator() (function_template.hpp:771)
    18==12188==    by 0x22112F: operator() (execution_monitor.ipp:1395)
    19==12188==    by 0x22112F: boost::detail::function::function_obj_invoker0<boost::detail::forward, int>::invoke(boost::detail::function::function_buffer&) (function_template.hpp:137)
    20==12188==    by 0x1C9738: operator() (function_template.hpp:771)
    21==12188==    by 0x1C9738: do_invoke<boost::shared_ptr<boost::detail::translator_holder_base>, boost::function<int ()> > (execution_monitor.ipp:308)
    22==12188==    by 0x1C9738: boost::execution_monitor::catch_signals(boost::function<int ()> const&) (execution_monitor.ipp:910)
    23==12188== 
    24{
    25   <insert_a_suppression_name_here>
    26   Memcheck:Overlap
    27   fun:__memcpy_chk
    28   fun:memmove
    29   fun:inet_pton6
    30   fun:text_to_binary_address
    31   fun:gaih_inet
    32   fun:getaddrinfo
    33   fun:_Z18WrappedGetAddrInfoRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEb
    34   fun:__invoke_impl<std::vector<CNetAddr, std::allocator<CNetAddr> >, std::vector<CNetAddr, std::allocator<CNetAddr> > (*&)(const std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > &, bool), const std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > &, bool>
    35   fun:__invoke_r<std::vector<CNetAddr, std::allocator<CNetAddr> >, std::vector<CNetAddr, std::allocator<CNetAddr> > (*&)(const std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > &, bool), const std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > &, bool>
    36   fun:_ZNSt17_Function_handlerIFSt6vectorI8CNetAddrSaIS1_EERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEbEPSC_E9_M_invokeERKSt9_Any_dataSB_Ob
    37   fun:operator()
    38   fun:_ZL12LookupInternRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEjbSt8functionIFSt6vectorI8CNetAddrSaIS9_EES6_bEE
    39   fun:_Z10LookupHostRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEjbSt8functionIFSt6vectorI8CNetAddrSaIS9_EES6_bEE
    40   fun:_Z10LookupHostRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEbSt8functionIFSt6vectorI8CNetAddrSaIS9_EES6_bEE
    41   fun:_ZN9net_tests32cnetaddr_tostring_canonical_ipv611test_methodEv
    42   fun:_ZN9net_testsL40cnetaddr_tostring_canonical_ipv6_invokerEv
    43   fun:operator()
    44   fun:operator()
    45   fun:_ZN5boost6detail8function21function_obj_invoker0INS0_7forwardEiE6invokeERNS1_15function_bufferE
    46   fun:operator()
    47   fun:do_invoke<boost::shared_ptr<boost::detail::translator_holder_base>, boost::function<int ()> >
    48   fun:_ZN5boost17execution_monitor13catch_signalsERKNS_8functionIFivEEE
    49}
    
  9. maflcko marked this as a draft on Nov 11, 2024
  10. maflcko commented at 5:01 pm on November 12, 2024: member
    Closing as duplicate of #29635. Lets keep the discussion in one place.
  11. maflcko closed this on Nov 12, 2024

  12. maflcko deleted the branch on Nov 12, 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-12-21 18:12 UTC

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