< dhruvm>
If I run FUZZ=process_message src/test/fuzz/fuzz qa-assets/fuzz_seed_corpus/process_message and it creates a new file in qa-assets/fuzz_seed_corpus/process_message/..., does that mean this run uncovered an input that can increase converage?
< sipa>
dhruvm: or a shorter input than an existing one with the same coverage
< dhruvm>
so they are always worth contributing back to the corpus?
< dhruvm>
also, reg the line that starts with "INITED": does that mean all the seeds in the corpus were tried, and now, the fuzzer will mutate them to try and increase coverage?
< sipa>
yes
< dhruvm>
perfect, thanks.
< phantomcircuit>
sipa, are all the fuzzing targets in the same binary again?
< sipa>
phantomcircuit: yes
< sipa>
env variable to select which fuzz target you want
< sipa>
FUZZ=txrequest ./src/test/fuzz/fuzz
< phantomcircuit>
sipa, iirc that significantly reduces the effectiveness of the fuzzing, wasn't it broken out before?
< phantomcircuit>
(i know the original was not, but i thought that was fixed)
< sipa>
phantomcircuit: we benchmarked it, and it doesn't really affect it
< sipa>
what does affect fuzzing effectively is taking the fuzz target from the _input_
< sipa>
but we don't do that now; it's taking the target from an env var
< phantomcircuit>
sipa, oh interesting
< phantomcircuit>
i wouldn't have expected that
< sipa>
the problem is that if the fuzz target is taken from the input, it'll try to cross-pollinate inputs across targets
< phantomcircuit>
the docs say pretty clearly that reducing the number of branches will make the actual fuzzing not necessarily faster, but better since there will be fewer collisions in the uh ... branch marking things
< phantomcircuit>
but it's probably not that significant with the targets we're fuzzing
< sipa>
yeah, and many fuzz targets link in large amounts of the codebase anyway
< sipa>
which means there isn't too much difference between the amount of reachable branches in the code
< phantomcircuit>
sipa, makes sense
< sipa>
(and without -flto and -ffunction-sections it probably doesn't matter at all, as tons of unreachable branches will stay in the binary)
< fanquake>
Don't see the issue with Clang 9. Haven't tested with 8.
< fanquake>
Clang 8 also fine.
< fanquake>
phantomcircuit: I don't understand why you don't see issues building normally, as that option would be present in both builds.
< fanquake>
I've just built bitcoin-cli and see the same linking issue.
< phantomcircuit>
fanquake, i guess because normal builds aren't using clang but gcc?
< fanquake>
Right. I assumed you were using Clang all the time.
< bitcoin-git>
[bitcoin] fanquake opened pull request #20720: build: more robustly check for fcf-protection support (master...more_robust_fcf_protection) https://github.com/bitcoin/bitcoin/pull/20720
< fanquake>
phantomcircuit ^
< bitcoin-git>
[bitcoin] hebasto closed pull request #20717: ci: Fix COMMIT_RANGE variable value for cloned repos (master...201218-clone) https://github.com/bitcoin/bitcoin/pull/20717
< bitcoin-git>
[bitcoin] hebasto reopened pull request #20717: ci: Fix COMMIT_RANGE variable value for cloned repos (master...201218-clone) https://github.com/bitcoin/bitcoin/pull/20717
< bitcoin-git>
[bitcoin] MarcoFalke closed pull request #20717: ci: Fix COMMIT_RANGE variable value for cloned repos (master...201218-clone) https://github.com/bitcoin/bitcoin/pull/20717
< bitcoin-git>
[bitcoin] MarcoFalke reopened pull request #20717: ci: Fix COMMIT_RANGE variable value for cloned repos (master...201218-clone) https://github.com/bitcoin/bitcoin/pull/20717
< bitcoin-git>
[bitcoin] laanwj closed pull request #20678: Add on autoconf as a dependency when building on macOS (master...autoconf-dependency) https://github.com/bitcoin/bitcoin/pull/20678
< jonatack>
fuzzing with latest debian and clang version 9.0.1-15 is working for me
< bitcoin-git>
[bitcoin] jonatack opened pull request #20723: p2p: improve logging in EvictExtraOutboundPeers() (master...improve-EvictExtraOutboundPeers-logging) https://github.com/bitcoin/bitcoin/pull/20723
< bitcoin-git>
[bitcoin] hebasto closed pull request #20206: wallet, refactor: Include headers instead of function declarations (master...201020-headers) https://github.com/bitcoin/bitcoin/pull/20206