Closed ibc closed 7 months ago
NOTE: I'm doing improvements.
Funny thing is that this PR is blocked by https://github.com/versatica/mediasoup/issues/1335 :(
The run-fuzzer.sh
script is much better now and it doesn't wait given "duration" before it checks if fuzzer keeps running or not. It monitor it every minute.
What would you think could be a good duration for this CI? 2 minutes is obviously very little.
What would you think could be a good duration for this CI? 2 minutes is obviously very little.
I think 2 minutes would detect most of the issues indeed.
Really? I thought 2 minutes is too little...
Let me please increase it to 5 minutes.
@ibc, in order to run the fuzzer this must be run:
MESON_ARGS="-Dms_disable_liburing=true -Db_sanitize=address" make fuzzer
make fuzzer-run-all
The b_sanitize
option makes the job adding the required CPP and link args accordingly.
I've read the comments in meson PR. So those args should be added in fuzzer_run_all task in worker/tasks.py right?
Working fine. Merging.
Run
invoke fuzzer-run-all
and wait for 5 minutes. Then check if it was still running. If not it means that it existed due to some (fuzzer) error so CI would fail.NOTE: This was not needed finally but just in case, the fuzzer binary exists with status 77 if a fuzzer issue happened and with status 72 (internally documented) if interrupted via
SIGINT
. Docs: https://llvm.org/docs/LibFuzzer.htmlBonus Track: Fix #1334. Bonus Track: Fix #1335.