Issue 444896 in chromium: Enable ASAN coverage across tools other than ASAN in Chromium

26 views
Skip to first unread message

chro...@googlecode.com

unread,
Dec 23, 2014, 2:10:20 PM12/23/14
to chromi...@chromium.org
Status: Assigned
Owner: gli...@chromium.org
CC: k...@chromium.org
Labels: Type-Bug Pri-2 OS-All

New issue 444896 by infe...@chromium.org: Enable ASAN coverage across tools
other than ASAN in Chromium
https://code.google.com/p/chromium/issues/detail?id=444896

With clang r224464+, coverage is available with MSAN, LSAN. I think in the
near future, it should come with TSAN, UBSAN, too. So, lets add support for
that

What are our options ?
1. Enable asan_coverage=1 in sanitizer_options to enable these by default.
We have to be careful that it does not break on Windows, Mac.
2. Add asan_coverage=1 in lkgr bot configuration. So much painful and poke
troopers on bot restarts, etc. But 0 risk, since it touches a particular
platform configuration.

Any other ideas ?

Also asan_coverage might not a good name (better name might be
sanitizer_coverage). But if we decide to change that, make sure to work
with Clank QA on updating all of their bots (since we just enabled stuff on
kitkat, L bots). I can live with asan_coverage gyp flag name.


--
You received this message because this project is configured to send all
issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings

chro...@googlecode.com

unread,
Dec 23, 2014, 5:57:55 PM12/23/14
to chromi...@chromium.org

Comment #2 on issue 444896 by k...@chromium.org: Enable ASAN coverage across
As for the flag, can we make a flag sanitizer_coverage=N and
treat asan_coverage=N as a deprecated alias of the new flag?

I think we can simply make sanitizer_coverage=1 default on all platforms
For those platforms where the run-time support is not ready, we'll simply
not
enable coverage at run-time.

chro...@googlecode.com

unread,
Dec 23, 2014, 6:03:12 PM12/23/14
to chromi...@chromium.org

Comment #3 on issue 444896 by infe...@chromium.org: Enable ASAN coverage
across tools other than ASAN in Chromium
https://code.google.com/p/chromium/issues/detail?id=444896

Yes sanitizer_coverage=1 default on all platform will be awesome (and I
hope windows, mac builds dont crash on startup due to an unsupported flag).

chro...@googlecode.com

unread,
Jan 2, 2015, 1:20:21 PM1/2/15
to chromi...@chromium.org
Updates:
Labels: -Pri-2 Pri-1

Comment #4 on issue 444896 by infe...@chromium.org: Enable ASAN coverage
across tools other than ASAN in Chromium
https://code.google.com/p/chromium/issues/detail?id=444896

This is Pri-1 for this quarter (as per our sanitizer TODO doc).

chro...@googlecode.com

unread,
Jan 15, 2015, 5:43:44 PM1/15/15
to chromi...@chromium.org

Comment #5 on issue 444896 by infe...@chromium.org: Enable ASAN coverage
across tools other than ASAN in Chromium
https://code.google.com/p/chromium/issues/detail?id=444896

Code coverage on UBSAN works (compile a little slow, not much), needs
https://codereview.chromium.org/837633008/.

chro...@googlecode.com

unread,
Jan 15, 2015, 6:20:05 PM1/15/15
to chromi...@chromium.org
Updates:
Cc: earth...@chromium.org

Comment #6 on issue 444896 by infe...@chromium.org: Enable ASAN coverage
across tools other than ASAN in Chromium
https://code.google.com/p/chromium/issues/detail?id=444896

Couldn't test MSAN becoz of
https://code.google.com/p/chromium/issues/detail?id=449183.

chro...@googlecode.com

unread,
Jan 15, 2015, 10:44:26 PM1/15/15
to chromi...@chromium.org

Comment #9 on issue 444896 by bugdro...@chromium.org: Enable ASAN coverage
across tools other than ASAN in Chromium
https://code.google.com/p/chromium/issues/detail?id=444896#c9

The following revision refers to this bug:

https://chromium.googlesource.com/chromium/src.git/+/bf097790c4535829966f4ad2b2624f48cfd0ef41

commit bf097790c4535829966f4ad2b2624f48cfd0ef41
Author: inferno <inf...@chromium.org>
Date: Fri Jan 16 03:32:50 2015

Hook UBSAN, MSAN to exit handler(s) to give time for coverage data to be
generated.

For context, see https://code.google.com/p/chromium/issues/detail?id=430160

BUG=444896

Review URL: https://codereview.chromium.org/837633008

Cr-Commit-Position: refs/heads/master@{#311832}

[modify]
http://crrev.com/bf097790c4535829966f4ad2b2624f48cfd0ef41/content/browser/child_process_launcher.cc
[modify]
http://crrev.com/bf097790c4535829966f4ad2b2624f48cfd0ef41/content/child/child_thread.cc

chro...@googlecode.com

unread,
Jan 16, 2015, 12:31:19 PM1/16/15
to chromi...@chromium.org

Comment #10 on issue 444896 by infe...@chromium.org: Enable ASAN coverage
across tools other than ASAN in Chromium
https://code.google.com/p/chromium/issues/detail?id=444896

Alex, so the pending work is to change ADDRESS_SANITIZER defines in
https://codereview.chromium.org/280303002 so something common that other
tools MSAN, LSAN, UBSAN can use. Once that is done, then I can test MSAN,
UBSAN working with coverage. After that, we can just enable it by default
or just enable edge-coverage for chromium_builder_asan target.

chro...@googlecode.com

unread,
Jan 17, 2015, 11:12:26 PM1/17/15
to chromi...@chromium.org

Comment #12 on issue 444896 by infe...@chromium.org: Enable ASAN coverage
across tools other than ASAN in Chromium
https://code.google.com/p/chromium/issues/detail?id=444896

ok MSAN fails to write coverage files. i think c#10+c#11 work should fix
it. I would let Alex to add SANITIZER_COVERAGE, i dont know which ifdefs in
https://codereview.chromium.org/280303002 are coverage specific and which
ones are tools specific for enabling stuff in sandbox.

==7== SanitizerCoverage: failed to open /tmp/ct/libpdf.so.7.sancov for
writing
==7== SanitizerCoverage: failed to open /tmp/ct/libc++.so.7.sancov for
writing
==7== SanitizerCoverage: failed to open /tmp/ct/libfreetype.so.6.7.sancov
for writing
==7== SanitizerCoverage: failed to open /tmp/ct/chrome.7.sancov for writing
[32292:32292:0117/200758:ERROR:zygote_host_impl_linux.cc(519)] Failed to
send GetTerminationStatus message to zygote

chro...@googlecode.com

unread,
Jan 24, 2015, 2:33:43 PM1/24/15
to chromi...@chromium.org
Updates:
Blockedon: chromium:444089

Comment #14 on issue 444896 by infe...@chromium.org: Enable ASAN coverage
across tools other than ASAN in Chromium
https://code.google.com/p/chromium/issues/detail?id=444896

(No comment was entered for this change.)

chro...@googlecode.com

unread,
Jan 24, 2015, 2:34:43 PM1/24/15
to chromi...@chromium.org

Comment #15 on issue 444896 by infe...@chromium.org: Enable ASAN coverage
across tools other than ASAN in Chromium
https://code.google.com/p/chromium/issues/detail?id=444896

awesome, Alex has a fix - https://codereview.chromium.org/868893004/

chro...@googlecode.com

unread,
Jan 27, 2015, 6:28:25 AM1/27/15
to chromi...@chromium.org

Comment #16 on issue 444896 by gli...@chromium.org: Enable ASAN coverage
across tools other than ASAN in Chromium
https://code.google.com/p/chromium/issues/detail?id=444896

I'll need to test it, will give it a try this week.

chro...@googlecode.com

unread,
Feb 13, 2015, 1:14:53 PM2/13/15
to chromi...@chromium.org

Comment #17 on issue 444896 by bugdro...@chromium.org: Enable ASAN coverage
across tools other than ASAN in Chromium
https://code.google.com/p/chromium/issues/detail?id=444896#c17

The following revision refers to this bug:

https://chromium.googlesource.com/chromium/src.git/+/ddea13be3be19fd889fb5953470faf154836e973

commit ddea13be3be19fd889fb5953470faf154836e973
Author: glider <gli...@chromium.org>
Date: Fri Feb 13 18:01:30 2015

Replace the asan_coverage GYP flag with sanitizer_coverage which is to be
used with other sanitizers.
Introduce the SANITIZER_COVERAGE define.

BUG=444896
R=eart...@chromium.org
TBR=joc...@chromium.org

Review URL: https://codereview.chromium.org/868893004

Cr-Commit-Position: refs/heads/master@{#316241}

[modify]
http://crrev.com/ddea13be3be19fd889fb5953470faf154836e973/build/common.gypi
[modify]
http://crrev.com/ddea13be3be19fd889fb5953470faf154836e973/content/common/sandbox_linux/sandbox_linux.h
[modify]
http://crrev.com/ddea13be3be19fd889fb5953470faf154836e973/content/gpu/gpu_main.cc
[modify]
http://crrev.com/ddea13be3be19fd889fb5953470faf154836e973/content/zygote/zygote_linux.cc
[modify]
http://crrev.com/ddea13be3be19fd889fb5953470faf154836e973/content/zygote/zygote_main_linux.cc

chro...@googlecode.com

unread,
Mar 6, 2015, 1:12:21 AM3/6/15
to chromi...@chromium.org
Updates:
Status: Fixed

Comment #24 on issue 444896 by infe...@chromium.org: Enable ASAN coverage
across tools other than ASAN in Chromium
https://code.google.com/p/chromium/issues/detail?id=444896

(No comment was entered for this change.)

chro...@googlecode.com

unread,
Apr 16, 2015, 5:25:04 AM4/16/15
to chromi...@chromium.org

Comment #25 on issue 444896 by bugdro...@chromium.org: Enable ASAN coverage
across tools other than ASAN in Chromium
https://code.google.com/p/chromium/issues/detail?id=444896#c25

------------------------------------------------------------------
r294838 | mache...@chromium.org | 2015-04-16T09:09:16.576398Z

Changed paths:
M
http://src.chromium.org/viewvc/chrome/trunk/tools/build/scripts/slave/recipes/chromium.expected/full_client_v8_branches_Chromium_ASAN__symbolized_.json?r1=294838&r2=294837&pathrev=294838
M
http://src.chromium.org/viewvc/chrome/trunk/tools/build/scripts/slave/recipe_modules/chromium/config.py?r1=294838&r2=294837&pathrev=294838

V8 Buildbot: Port recent asan config changes.

Fully port https://codereview.chromium.org/952653003

A change to the extra cflags was missing. The recipe is not
yet used, but will be soon.

BUG=444896,315202
TBR=phajd...@chromium.org

Review URL: https://codereview.chromium.org/1089773002
-----------------------------------------------------------------
Reply all
Reply to author
Forward
0 new messages