SkASSERT shouldn't crash, but operate in logging mode with dcheck_is_configurable=true |
||||||||||
Issue descriptionSee 0% on skia_image_filter_proto_converter.cc in https://chromium-coverage.appspot.com/reports/561573/linux/chromium/src/testing/libfuzzer/proto/report.html (before - 92% see https://chromium-coverage.appspot.com/reports/561047/linux/chromium/src/testing/libfuzzer/proto/report.html) This started happening when we enabled dcheck_is_configurable. Previously it worked fine. This can be reproduced using gn gen //out/coverage --args='use_goma=true goma_dir="/build/goma" is_clang=true use_libfuzzer=true use_clang_coverage=true is_component_build=false pdf_enable_xfa=true proprietary_codecs=true ffmpeg_branding="ChromeOS" strip_absolute_paths_from_debug_symbols=true is_debug=false dcheck_is_configurable=true' ninja -C out/coverage skia_image_filter_converter Result: Target should be built, and it isn't At first, i thought this is related to https://cs.chromium.org/chromium/src/testing/libfuzzer/proto/BUILD.gn?rcl=560f859dd3973c36a4e4633dc30560c51600f3fe&l=59 but no, since you should be still able to build using ninja. Jonathan, Kevin - any idea why ?
,
May 25 2018
Removing skia folks since this doesn't look like a skia issue
,
May 25 2018
Sorry i had the wrong target name, it should have been skia_image_filter_proto_fuzzer So, the issue seems to be assertion are becoming crashes. dcheck_is_configurable should be causing warnings. e.g. see https://chromium-coverage.appspot.com/reports/561573/linux/metadata/skia_image_filter_proto_fuzzer.log https://chromium-coverage.appspot.com/reports/561573/linux/metadata/skia_path_fuzzer.log https://chromium-coverage.appspot.com/reports/561573/linux/metadata/skia_pathop_fuzzer.log
,
May 25 2018
Chatted with Jonathan offline, there are 2 bugs. Lets use this one to track c#3. This is a skia issue. Skia needs to support dcheck in logging mode (purpose of dcheck_is_configurable). this helps to get code coverage reports to work. Note that code coverage is not captured if we get a crash, that is why we operate with dcheck_is_configurable.
,
May 25 2018
,
May 25 2018
,
May 25 2018
,
May 25 2018
See this code for explanation https://cs.chromium.org/chromium/src/base/logging.cc?rcl=d3433075a470b4c7a4e50ff33b6485989799f7cc&l=391
,
May 25 2018
SkASSERT is used in skia sometimes to mean we-can't-continue-at-all, and sometimes just to affirm some internal consistency check. In general, we probably can't always "continues" without crash soon afterwards. Is this what you are asking for?
,
May 25 2018
In Release mode, we disable SkAssert and things work with "continue". Think of this as like code coverage working in Release mode just wants to know it covered the line with SkAssert (and not show red), but it should not crash.
,
Aug 2
,
Jan 16
(6 days ago)
|
||||||||||
►
Sign in to add a comment |
||||||||||
Comment 1 by metzman@chromium.org
, May 25 2018