fuzzing: Remove download of existing testcases in seed corpus script
ClusterFuzz already has facilities to minimize testcases daily. It is not necessary to do so in our update script. Bug: dawn:295 Change-Id: I9869d25f657b40f1af1aac90c27200a59f46b9c1 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/14621 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Kai Ninomiya <kainino@chromium.org> Commit-Queue: Austin Eng <enga@chromium.org>
This commit is contained in:
parent
7433023fff
commit
5e98e38744
|
@ -8,7 +8,7 @@ The `dawn_wire_server_and_frontend_fuzzer` sets up Dawn using the Null backend,
|
||||||
|
|
||||||
Using a seed corpus significantly improves the efficiency of fuzzing. Dawn's fuzzers use interesting testcases discovered in previous fuzzing runs to seed future runs. Fuzzing can be further improved by using Dawn tests as a example of API usage which allows the fuzzer to quickly discover and use new API entrypoints and usage patterns.
|
Using a seed corpus significantly improves the efficiency of fuzzing. Dawn's fuzzers use interesting testcases discovered in previous fuzzing runs to seed future runs. Fuzzing can be further improved by using Dawn tests as a example of API usage which allows the fuzzer to quickly discover and use new API entrypoints and usage patterns.
|
||||||
|
|
||||||
The script [update_fuzzer_seed_corpus.sh](../scripts/update_fuzzer_seed_corpus.sh) can be used to capture a trace while running Dawn tests, and merge it with all existing interesting fuzzer inputs.
|
The script [update_fuzzer_seed_corpus.sh](../scripts/update_fuzzer_seed_corpus.sh) can be used to capture a trace while running Dawn tests, and upload it to the existing fuzzzer seed corpus.
|
||||||
|
|
||||||
To run the script:
|
To run the script:
|
||||||
1. Make sure gcloud is installed: https://g3doc.corp.google.com/cloud/sdk/g3doc/index.md?cl=head
|
1. Make sure gcloud is installed: https://g3doc.corp.google.com/cloud/sdk/g3doc/index.md?cl=head
|
||||||
|
|
|
@ -47,9 +47,6 @@ mkdir -p "$testcase_dir"
|
||||||
rm -rf "$minimized_testcase_dir"
|
rm -rf "$minimized_testcase_dir"
|
||||||
mkdir -p "$minimized_testcase_dir"
|
mkdir -p "$minimized_testcase_dir"
|
||||||
|
|
||||||
# Download the existing corpus. First argument is src, second is dst.
|
|
||||||
gsutil -m rsync gs://clusterfuzz-corpus/libfuzzer/${fuzzer_name}/ "$testcase_dir"
|
|
||||||
|
|
||||||
# Build the fuzzer and test
|
# Build the fuzzer and test
|
||||||
autoninja -C $out_dir $fuzzer_name $test_name
|
autoninja -C $out_dir $fuzzer_name $test_name
|
||||||
|
|
||||||
|
@ -82,6 +79,4 @@ Then, run the following command to upload new testcases to the seed corpus:
|
||||||
|
|
||||||
gsutil -m rsync $minimized_testcase_dir gs://clusterfuzz-corpus/libfuzzer/${fuzzer_name}/
|
gsutil -m rsync $minimized_testcase_dir gs://clusterfuzz-corpus/libfuzzer/${fuzzer_name}/
|
||||||
|
|
||||||
WARNING: Add [-d] argument to delete all GCS files that are not also in $minimized_testcase_dir
|
|
||||||
|
|
||||||
EOF
|
EOF
|
||||||
|
|
Loading…
Reference in New Issue