ci: Enable experimental kernel stuff in ASan task #33845

pull maflcko wants to merge 1 commits into bitcoin:master from maflcko:2511-kernel-asan-ubsan changing 2 files +2 −2
  1. maflcko commented at 4:27 pm on November 10, 2025: member

    Base the task on –preset=dev-mode to ensure maximal coverage and add the following:

    0   bitcoin-chainstate (experimental) ... ON
    1   libbitcoinkernel (experimental) ..... ON
    2   kernel-test (experimental) .......... ON
    

    Currently a draft to figure out #33824 (comment)

  2. ci: Enable experimental kernel stuff in ASan task
    Base the task on --preset=dev-mode to ensure maximal coverage and add
    the following:
    
       bitcoin-chainstate (experimental) ... ON
       libbitcoinkernel (experimental) ..... ON
       kernel-test (experimental) .......... ON
    db7a3c1e19
  3. maflcko commented at 4:30 pm on November 10, 2025: member

    Continue from #33824 (comment):

    I was thinking about permitting nullptr when size=0, or even just permitting nullptr for any size, when the data pointer is followed by a size?

    Afaict our de-serialization can handle this case (nullptr when size=0) correctly, but fails when passed a nullptr with non-zero size. Maybe a null check in btck_block_create(...) would be better? What do you think?

    Yes, either should be fine. To clarify I had two alternative suggestions:

    • Remove all non-null attributes for spans (data+size) and replace them with null checks when the size is one or larger.
    • Remove all non-null attributes for spans without replacement.
  4. maflcko commented at 9:04 am on November 11, 2025: member
    I was wondering if the std::span nullptr check was part of the C++26 library hardening, but it seems not (https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2025/p3471r4.html#span-constructors), so I guess if we want it, we’d still have to write it ourselves.
  5. maflcko commented at 2:37 pm on November 11, 2025: member
    Thanks for picking this up! Looks like a simple and small change in your pull request.
  6. maflcko closed this on Nov 11, 2025


maflcko


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: 2025-11-13 00:13 UTC

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