gecko-dev/build
Mike Hommey a0b6688faa Bug 1518726 - Apply https://reviews.llvm.org/D56475 to clang. r=froydnj
Firefox uses multiple processes. It has intentional leaks, and when
running with ASAN, we have suppressions to eliminate those. When running
ASAN builds through CI tests, when Firefox exits, each of the processes
(parent and child) exits and goes through its leaks and when there are
(which is a given), the ASAN runtime runs llvm-symbolizer to symbolicate
and match against suppressions. So each process runs llvm-symbolizer. At
the same time.

Some of the addresses to symbolicate are in libxul. Which contains all
DWARF info, making it a ~1GB monster. Oh, and because you're lucky,
things align perfectly such that libxul size is a multiple of the page
size. That makes llvm-symbolizer pread() the file instead of mmap()ing
it. Did I say there are multiple processes? So suddenly you have n
processes simultaneously allocating and filling 1GB of memory each, on
CI machines that have enough memory for the job they usually run, but
not enough for a sudden rush of n GB.

And things go awry. When you're lucky and the OOM killer didn't take
care of killing the CI entirely, symbolication couldn't happen and the
suppressions are not matched, and leaks are reported.

This all turns out it originates in how llvm-symbolicate chooses between
pread() and mmap(), which turns out is just defaults not being made for
binary files.

Differential Revision: https://phabricator.services.mozilla.com/D16010

--HG--
extra : moz-landing-system : lando
2019-01-10 00:18:28 +00:00
..
autoconf Bug 1515595 - Move AR to python configure. r=froydnj 2018-12-21 22:53:53 +00:00
build-clang Bug 1518726 - Apply https://reviews.llvm.org/D56475 to clang. r=froydnj 2019-01-10 00:18:28 +00:00
build-infer Bug 1479401: Include lib directory into the infer tar, and change maintainer. r=andi 2018-07-30 12:45:02 +01:00
clang-plugin Bug 1515314 - Fix the build of Searchfox's indexer with trunk clang and with assertions enabled. r=kats 2018-12-20 04:40:37 +01:00
compare-mozconfig Bug 1471620 - Skip python-tests locally that don't run with python 3 in CI r=davehunt 2018-06-27 11:10:02 -04:00
debian-packages Bug 1513320 - SQLite package backport for Debian 7; r=glandium 2018-12-12 22:11:59 +00:00
docs Bug 1483941: add documentation about build telemetry r=ted 2018-10-10 19:58:47 +00:00
gyp_includes Bug 1480834 - 2. Add x86-64 build support; r=nalexander 2018-09-13 12:09:25 -04:00
macosx Bug 1515604 - Fix artifact builds after bug 1513798. r=nalexander 2018-12-20 18:50:04 +00:00
mobile Bug 1517169 - Ensure Android remote test log is deleted before launching test app; r=bc 2019-01-02 09:50:36 -07:00
moz.configure Bug 1517532 - Extend artifact builds to find and download artifacts from pgo builds when MOZ_PGO is set. r=nalexander 2019-01-08 23:03:27 +00:00
package/mac_osx
pgo Bug 1518170 - Always upload profile run output; r=firefox-build-system-reviewers,chmanchester#firefox-build-system-reviewers 2019-01-08 17:28:36 +00:00
pymake Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
sanitizers Bug 1518045 - Make Servo use a single thread-pool for layout-related tasks per-process. r=jdm 2019-01-07 00:53:04 +01:00
sparse-profiles Bug 1507884 - Add a wrench-deps toolchain to provide a tarball of crates wrench depends on. r=glandium 2018-12-19 19:33:13 +00:00
tests/cram Bug 1411462 - Abort when I/O error seen; r=glandium 2017-11-09 20:44:10 -08:00
unix Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
valgrind Bug 1507340 - Update suppression for bug 966673 to match the libresolv path in the valgrind docker image. r=njn 2018-11-15 01:15:51 +00:00
win32 Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
win64 Bug 1506180 - part 2 - delete VS2015 mozconfigs; r=RyanVM 2018-11-09 14:04:29 -05:00
win64-aarch64 Backed out 2 changesets (bug 1515579) for causing bugs: 1516228, 1516090, 1516253. a=backout 2018-12-25 00:48:43 +02:00
workspace-hack Backed out 4 changesets (bug 1499196) for regression author didn't respond on time, depends on 1501178, requested by igoldan. a=backout 2018-10-29 10:30:22 +02:00
.gdbinit_python.in
.lldbinit.in
__init__.py
appini_header.py Backed out changeset 602bdd9d5a96 (bug 1461851) for linting failures on /checkouts/gecko/build/appini_header.py on a CLOSED TREE 2018-05-30 19:03:50 +03:00
application.ini.in
automation.py.in Bug 1507207 - Improve support for e10s mode testing on Android; r=bc 2018-11-27 09:41:13 -07:00
binary-location.mk
buildconfig.py Bug 1406650 - Make build/*.py and a few other files flake8 compatible and add them to the list of files to check r=chmanchester 2017-10-07 16:45:22 +02:00
cargo-linker
checksums.py Bug 1455143 - Refactor checksumming to occur after upload.py; r=ted 2018-04-18 16:24:03 -07:00
defines.sh
dumbmake-dependencies Bug 1363061 - Rename toolkit/components/jsdownloads to toolkit/components/downloads. r=mak 2018-03-06 17:40:59 +00:00
gecko_templates.mozbuild Backed out changeset d602a2f69ff8 (bug 1475573) on request from truber. a=backout 2018-08-16 17:49:01 +03:00
gen_automation.py Bug 1372381 - Generate automation.py with GENERATED_FILES rather than Makefile.in r=mshal 2018-04-30 11:08:59 -07:00
gen_symverscript.py Bug 1478499 - Move symbol version script generation for js shared library to moz.build. r=mshal 2018-08-01 13:25:38 -07:00
gen_test_backend.py
gen_test_packages_manifest.py Bug 1513570 - Part 4: Back out the jit-tests added in bug 1503012. r=Ms2ger 2018-12-14 18:15:56 +00:00
genrc.sh
gn.mozbuild Backed out 5 changesets (bug 1393119) for bustage on linux in /builds/worker/workspace/build/src/obj-firefox/dist/system_wrappers/alsa/asoundlib.h:3:15: alsa/asoundlib.h missing on a CLOSED TREE 2018-01-24 13:00:42 +02:00
gyp.mozbuild Bug 1478000 - nICEr and nrappkit should use the same warnings under clang-cl as with clang; r=dmajor 2018-07-25 14:02:02 -04:00
gyp_base.mozbuild
mach_bootstrap.py Bug 1513216 - Don't collect build telemetry when 'mach' is ran from hg format-source. r=sheehan 2018-12-13 18:09:03 +00:00
merge_profdata.py Bug 1507344 - Add configure machinery for MOZ_PROFILE_USE and merging profile. r=nalexander 2018-12-21 19:02:11 +00:00
moz-automation.mk Bug 1492526: Don't build mar's as part of the build; r=firefox-build-system-reviewers,mshal,Callek 2018-10-01 18:15:40 +00:00
moz.build Bug 1426176 - Add symbols file for Clang ASan runtime on Windows. r=ted 2018-07-26 11:16:50 +02:00
mozconfig.artifact
mozconfig.artifact.automation Bug 1517532 - Extend artifact builds to find and download artifacts from pgo builds when MOZ_PGO is set. r=nalexander 2019-01-08 23:03:27 +00:00
mozconfig.automation Bug 1492526: Don't build mar's as part of the build; r=firefox-build-system-reviewers,mshal,Callek 2018-10-01 18:15:40 +00:00
mozconfig.cache bug 1490325 - write sccache log directly to artifact directory, make logs slightly more verbose. r=mshal 2018-09-18 20:02:17 +00:00
mozconfig.clang-cl Bug 1486554 - Enable static analysis on normal Windows CI builds r=ted 2018-10-17 22:45:06 +00:00
mozconfig.comm-support Bug 1410475: Add support for detecting whether c-c is topdir in mozconfigs; r=mshal 2017-10-19 13:56:13 -06:00
mozconfig.common Bug 1468362: Remove ADDON_SINGING buildconfig setting. r=aswan 2018-06-12 13:56:58 -04:00
mozconfig.common.override
mozconfig.lld-link Bug 1444429: Add a build/mozconfig.lld-link for automation. r=froydnj DONTBUILD 2018-03-09 12:25:58 -05:00
mozconfig.no-compile Bug 1517882 - Fix x86_64 artifact builds in automation. r=froydnj 2019-01-05 14:34:01 +00:00
mozconfig.node Bug 1478995 - Add node toolchain path to automation mozconfigs, r=gps 2018-06-01 14:59:45 -07:00
mozconfig.rust Bug 1478813 - Auto-generate ServoStyleConsts. r=xidorn,ted 2018-08-17 19:48:23 +02:00
mozconfig.stylo
mozconfig.vs-common
mozconfig.win-common Bug 1492526: Don't build mar's as part of the build; r=firefox-build-system-reviewers,mshal,Callek 2018-10-01 18:15:40 +00:00
qemu-wrap
rebuild-backend.mk
subconfigure.py Bug 1466401 - Re-run configure in js/src based on dependencies generated by python configure. r=mshal 2018-06-07 15:50:06 -07:00
submit_telemetry_data.py Bug 1505086: use `mach python` to submit build telemetry r=ted 2018-11-12 14:57:57 +00:00
templates.mozbuild Backed out 4 changesets (bug 1499196) for regression author didn't respond on time, depends on 1501178, requested by igoldan. a=backout 2018-10-29 10:30:22 +02:00
test_templates.mozbuild
update-settings.ini
upload.py Bug 1455127 - Remove --package from upload.py; r=ted 2018-04-19 09:31:00 -07:00
upload_generated_sources.py Bug 1406650 - Make build/*.py and a few other files flake8 compatible and add them to the list of files to check r=chmanchester 2017-10-07 16:45:22 +02:00
variables.py Bug 1434430 - [flake8] Fix blank 'except' statements r=rwood 2018-01-31 14:32:08 -05:00
virtualenv_packages.txt Backed out 21 changesets (bug 1492664) for breaking cron task for nightlies. a=backout 2018-12-20 12:43:22 +02:00
windows_toolchain.py Backed out 2 changesets (bug 1485224) for perma bc3 failures e.g.: Error getting fileid for Z:\task_1536750533ad] WARNING: NS_ENSURE_TRUE CLOSED TREE 2018-09-12 15:37:19 +03:00