Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1072)

Issue 2144273002: Add minimal LLVM sanity coverage (sancov) reporting for unittests. (Closed)

Created:
4 years, 5 months ago by johan
Modified:
4 years, 5 months ago
CC:
webrtc-reviews_webrtc.org, tterriberry_mozilla.com, qiang.lu, niklas.enbom, yujie_mao (webrtc), peah-webrtc
Base URL:
https://chromium.googlesource.com/external/webrtc.git@master
Target Ref:
refs/pending/heads/master
Project:
webrtc
Visibility:
Public.

Description

Add minimal LLVM sanity coverage (sancov) reporting for unittests. This CL enables generating *.sancov data. Blacklist for sancov tool is provided, too. Sancov tool for report generation needs to be build from llvm compiler-rt sources (llvm 3.9.0 or newer). See http://clang.llvm.org/docs/SanitizerCoverage.html . BUG=webrtc:6136 R=phoglund@webrtc.org TBR=kjellander@webrtc.org Committed: https://crrev.com/9ddac18d1c04f3cd2afcebf1c5c295895f9c0d53 Cr-Commit-Position: refs/heads/master@{#13506}

Patch Set 1 #

Total comments: 2

Patch Set 2 : Add minimal LLVM sanity coverage (sancov) reporting for unittests. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+63 lines, -0 lines) Patch
A tools/sancov/README View 1 chunk +9 lines, -0 lines 0 comments Download
A tools/sancov/blacklist.txt View 1 chunk +21 lines, -0 lines 0 comments Download
M webrtc/BUILD.gn View 1 2 chunks +8 lines, -0 lines 0 comments Download
M webrtc/build/common.gypi View 1 2 chunks +18 lines, -0 lines 0 comments Download
M webrtc/build/webrtc.gni View 1 1 chunk +7 lines, -0 lines 0 comments Download

Messages

Total messages: 26 (12 generated)
phoglund
I'm terribly sorry, I missed this review. Feel free to ping if I don't respond ...
4 years, 5 months ago (2016-07-19 19:07:00 UTC) #3
phoglund
https://codereview.webrtc.org/2144273002/diff/1/webrtc/build/common.gypi File webrtc/build/common.gypi (right): https://codereview.webrtc.org/2144273002/diff/1/webrtc/build/common.gypi#newcode106 webrtc/build/common.gypi:106: 'webrtc_sanitize_coverage%': "", We need to have parity between gn ...
4 years, 5 months ago (2016-07-19 19:12:40 UTC) #4
johan
https://codereview.webrtc.org/2144273002/diff/1/webrtc/build/common.gypi File webrtc/build/common.gypi (right): https://codereview.webrtc.org/2144273002/diff/1/webrtc/build/common.gypi#newcode106 webrtc/build/common.gypi:106: 'webrtc_sanitize_coverage%': "", Done, gn files use name pattern "rtc_.*" ...
4 years, 5 months ago (2016-07-21 12:33:22 UTC) #5
phoglund
lgtm. Please file a bug (type feature, title "Make it possible to report coverage in ...
4 years, 5 months ago (2016-07-21 12:49:33 UTC) #6
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.webrtc.org/2144273002/20001
4 years, 5 months ago (2016-07-21 13:41:12 UTC) #10
commit-bot: I haz the power
Try jobs failed on following builders: linux_libfuzzer_rel on master.tryserver.webrtc (JOB_FAILED, http://build.chromium.org/p/tryserver.webrtc/builders/linux_libfuzzer_rel/builds/3995)
4 years, 5 months ago (2016-07-21 13:45:53 UTC) #12
johan
Bug created and linked. Presubmit hook complains on missing lgtm from owner of webrtc/BUILD.gn and ...
4 years, 5 months ago (2016-07-21 14:51:13 UTC) #13
phoglund
No, add a TBR=kjellander@webrtc.org to CL desc and land; he's out this and next week. ...
4 years, 5 months ago (2016-07-21 15:11:17 UTC) #14
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.webrtc.org/2144273002/20001
4 years, 5 months ago (2016-07-22 06:42:55 UTC) #17
commit-bot: I haz the power
Try jobs failed on following builders: linux_libfuzzer_rel on master.tryserver.webrtc (JOB_FAILED, http://build.chromium.org/p/tryserver.webrtc/builders/linux_libfuzzer_rel/builds/4010)
4 years, 5 months ago (2016-07-22 06:45:06 UTC) #19
commit-bot: I haz the power
Patchset 2 (id:??) landed as https://crrev.com/9ddac18d1c04f3cd2afcebf1c5c295895f9c0d53 Cr-Commit-Position: refs/heads/master@{#13506}
4 years, 5 months ago (2016-07-22 06:57:44 UTC) #22
johan
Committed patchset #2 (id:20001) manually as 9ddac18d1c04f3cd2afcebf1c5c295895f9c0d53 (presubmit successful).
4 years, 5 months ago (2016-07-22 06:57:45 UTC) #23
kjellander_webrtc
lgtm but I'd appreciate if machenbach@ could give input as well.
4 years, 5 months ago (2016-07-23 15:11:32 UTC) #25
Michael Achenbach
4 years, 5 months ago (2016-07-23 20:29:02 UTC) #26
Message was sent while issue was closed.
The CL looks consistent. I know too little about the webrtc test runner (I
assume gtest?). Some thoughts:
- It might be prudent to allow specifying the directory where the sancov files
will end up. Otherwise I think it's in the CWD (might be harder to clean up in
the end). This dir is passed as a runtime option in e.g. the UBSAN_OPTIONS.
- In v8 we ran into the max_pid boundary. E.g. in one test runner execution we
might get more processes in total than linux' max_pid limit. Since sancov spits
out files called exe_name.pid.sancov, you risk a name clash as pid will rotate
after reaching the max.
- You can follow the work on our prototype here
https://bugs.chromium.org/p/chromium/issues/detail?id=568949 - first gcov, later
sancov
- Note that we don't use the sancov exe, just the python script

Powered by Google App Engine
This is Rietveld 408576698