WPT ASan doesn't set lsan_suppressions when run via mach

RESOLVED FIXED in Firefox 66

Status

defect
RESOLVED FIXED
7 months ago
6 months ago

People

(Reporter: mccr8, Assigned: jgraham)

Tracking

(Blocks 1 bug)

Version 3
mozilla66
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox66 fixed)

Details

Attachments

(1 attachment)

In a local ASan build, if I run WPT via mach like this:
  ./mach wpt infrastructure/assumptions/allowed-to-play.html
...then I get a warning message about it not finding lsan_suppressions.txt:
0:04.97 INFO WARNING | runtests.py | LSan suppressions file does not exist! /media/ssd/mc/testing/profiles/lsan_suppressions.txt

Then LSan ends up reporting a lot of leaks, because of the unsuppressed leaks.
James, any ideas?

For now, I can work around this by copying build/sanitizers/lsan_suppressions.txt to testing/profiles/
Flags: needinfo?(james)

In https://searchfox.org/mozilla-central/source/testing/web-platform/tests/tools/wptrunner/wptrunner/browsers/firefox.py#240 we set lsanPath which is later used to read the suppressions file. The value we set there is only correct in automation, so we maybe need an explicit command line argument that can be set locally in testing/web-platform/mach_commands.py and that defaults to prefs_root if no other value is given. Let me know if you want me to make the patch, but I never managed to get an ASAN build to work well locally, so I'm not a great person to test it out.

Flags: needinfo?(james)

Yeah, I'd be happy to test it out if you could please write a patch. I'm not familiar with how all of this is hooked up together so I can't easily write a patch.

Previously we assumed that the path for the lsan_suppressions.txt file was the same as the prefs path,
which is correct in CI but wrong for local builds. This adds a --lsan-dir command line argument and sets
it in mach to the correct value for local builds and uses the prefs directory as a default for backwards
compatibility
Pushed by james@hoppipolla.co.uk:
https://hg.mozilla.org/integration/autoland/rev/f65f0c93a581
Allow LSAN suppressions path to be set from wptrunner command line, r=mccr8
Status: NEW → RESOLVED
Closed: 6 months ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla66
Created web-platform-tests PR https://github.com/web-platform-tests/wpt/pull/15044 for changes under testing/web-platform/tests
You need to log in before you can comment on or make changes to this bug.