google / fuzztest

Other
731 stars 74 forks source link

MBErr: Builder group name "chromium.fuzz" not found in "/opt/chromium/src/tools/mb/mb_config.pyl" #874

Open thealberto opened 10 months ago

thealberto commented 10 months ago

HI all, I'm following this tutorial and I have noticed that chrome.fuzz isn't usable anymore.

Which group name should we use now? At least, which options were set by it?

I would also like to understand how to build and run the fuzzer. I have with

# Build the fuzz target.
autoninja -C chrome/browser/ash:create_fnmatch_query_fuzzer
# Run the fuzz target.
./out/libfuzzer/create_fnmatch_query_fuzzer

But with no luck.

➜  src git:(ccbeb246d2) autoninja -C chrome/browser/ash:create_fnmatch_query_fuzzer
ninja: Entering directory `chrome/browser/ash:create_fnmatch_query_fuzzer'
ninja: fatal: chdir to 'chrome/browser/ash:create_fnmatch_query_fuzzer' - No such file or directory
➜  src git:(ccbeb246d2) 

Thanks

ArtAlee commented 10 months ago

Same problem. Any good news?

shhnjk commented 10 months ago

It was likely removed in this CL.

Adding back the following lines in tools/mb/mb_config.pyl worked for me.

'chromium.fuzz': {
      'ASAN Debug': 'asan_lsan_debug_bot_reclient',
      'ASAN Release': 'asan_lsan_fuzzer_v8_heap_release_bot_reclient',
      'ASAN Release Media': 'asan_lsan_fuzzer_v8_heap_chromeos_codecs_release_bot_reclient',
      'ASan Debug (32-bit x86 with V8-ARM)': 'asan_v8_heap_debug_bot_hybrid_reclient',
      'ASan Release (32-bit x86 with V8-ARM)': 'asan_fuzzer_v8_heap_release_bot_hybrid_reclient',
      'ASan Release Media (32-bit x86 with V8-ARM)': 'asan_fuzzer_v8_heap_chromeos_codecs_release_bot_hybrid_reclient',
      'Centipede Upload Linux ASan': 'centipede_asan_shared_release_bot_reclient',
      'ChromiumOS ASAN Release': 'chromeos_asan_lsan_fuzzer_v8_heap_release_bot_reclient',
      'Libfuzzer Local Chrome OS ASan': 'libfuzzer_chromeos_asan_local',
      'Libfuzzer Local Linux ASan': 'libfuzzer_asan_local',
      'Libfuzzer Local Mac ASan': 'libfuzzer_mac_asan_local',
      'Libfuzzer Local Windows ASan': 'libfuzzer_windows_asan_local',
      'Libfuzzer Upload Chrome OS ASan': 'libfuzzer_chromeos_asan_release_bot_reclient',
      'Libfuzzer Upload Linux ASan': 'libfuzzer_asan_release_bot_reclient',
      'Libfuzzer Upload Linux ASan Debug': 'libfuzzer_asan_debug_bot_reclient',
      'Libfuzzer Upload Linux MSan': 'libfuzzer_msan_release_bot_reclient',
      'Libfuzzer Upload Linux UBSan': 'libfuzzer_ubsan_release_bot_reclient',
      'Libfuzzer Upload Linux V8-ARM64 ASan': 'libfuzzer_asan_release_bot_v8_arm64_reclient',
      'Libfuzzer Upload Linux V8-ARM64 ASan Debug': 'libfuzzer_asan_debug_bot_v8_arm64_reclient',
      'Libfuzzer Upload Linux32 ASan': 'libfuzzer_asan_release_bot_x86_reclient',
      'Libfuzzer Upload Linux32 V8-ARM ASan': 'libfuzzer_asan_release_bot_x86_v8_arm_reclient',
      'Libfuzzer Upload Linux32 V8-ARM ASan Debug': 'libfuzzer_asan_debug_bot_x86_v8_arm_reclient',
      'Libfuzzer Upload Mac ASan': 'libfuzzer_mac_asan_shared_release_bot_reclient',
      'Libfuzzer Upload Windows ASan': 'libfuzzer_windows_asan_release_bot_reclient',
      'Libfuzzer Upload iOS Catalyst Debug': 'ios_catalyst_debug_static_bot_compile_only_libfuzzer_asan_no_dsyms_no_remoting_reclient',
      'MSAN Release (chained origins)': 'msan_release_bot_reclient',
      'MSAN Release (no origins)': 'msan_no_origins_release_bot_reclient',
      'Mac ASAN Release': 'asan_disable_nacl_fuzzer_v8_heap_release_bot_reclient',
      'Mac ASAN Release Media': 'asan_disable_nacl_fuzzer_v8_heap_chrome_with_codecs_release_bot_reclient',
      'TSAN Debug': 'tsan_disable_nacl_debug_bot_reclient',
      'TSAN Release': 'tsan_disable_nacl_release_bot_reclient',
      'UBSan Release': 'ubsan_release_bot_reclient',
      'UBSan vptr Release': 'ubsan_vptr_release_bot_reclient',
      'Win ASan Release': 'asan_fuzzer_v8_heap_release_bot_reclient',
      'Win ASan Release Media': 'asan_fuzzer_v8_heap_chrome_with_codecs_release_bot_reclient',
    },

and

# Meant for local development of fuzzers where no reclient/goma is needed.
    'libfuzzer_asan_local': [
      'libfuzzer', 'asan', 'release', 'chromeos_codecs', 'pdf_xfa', 'disable_nacl', 'optimize_for_fuzzing', 'mojo_fuzzer', 'no_reclient',
    ],

Note that I was running a fuzzer locally.