Граф коммитов

2137 Коммитов

Автор SHA1 Сообщение Дата
Mike Hommey 311e167747 Bug 1654994 - Switch full symbols archive to tar.zst. r=firefox-build-system-reviewers,rstewart,tomprince
Differential Revision: https://phabricator.services.mozilla.com/D85252
2020-07-30 22:21:28 +00:00
Mike Hommey 0ecfde84be Bug 1654994 - Allow upload_symbols to handle .tar.zst symbols archives. r=firefox-build-system-reviewers,rstewart,mhentges
Because the symbols server can only handle the .zip format for the
symbols archives, we make upload_symbols itself munge what it takes from
builds if they are .tar.zst, so that the symbols server is happy.

Eventually, the symbols server will be able to deal with those archives
on its own.

It is worth noting that this conversion is actually taking more time
than builds spend for the same archive because nothing is parallelized,
while in builds the compression of e.g. libxul.so and libxul-gtest
happen in parallel.

However, overall, we'll still gain from switching to this new code path
because builds currently always compress the debug info, even when it's
not going to be uploaded to the symbols server.

Differential Revision: https://phabricator.services.mozilla.com/D85250
2020-07-30 22:14:56 +00:00
Nathan Froyd 0239315113 Bug 1576748 - make symbolstore.py complain loudly if expected output isn't found; r=nalexander
This change surfaces errors faster, and ensures that we don't silently
end up with empty crashreporter symbols if `dump_syms` can't run for
some reason.

Differential Revision: https://phabricator.services.mozilla.com/D43520
2020-07-28 18:42:55 +00:00
Andrew Halberstadt d0fbcca0b6 Bug 985141 - [mozbuild] Remove leading underscore from MozbuildObject._activate_virtualenv, r=firefox-build-system-reviewers,perftest-reviewers,andi,AlexandruIonescu,rstewart
This function is used all across the tree and should be considered a public API.

Differential Revision: https://phabricator.services.mozilla.com/D85045
2020-07-28 16:06:10 +00:00
Nathan Froyd 0b00157be6 Bug 1654845 - teach symbolstore.py to use the new-style dump-syms for Mac; r=gsvelto
The new `dump_syms` is smart enough to merge information gathered from the
dsymbundle and the primary file without any special calling out which is
which.

Depends on D84727

Differential Revision: https://phabricator.services.mozilla.com/D84728
2020-07-23 22:15:04 +00:00
Nathan Froyd 771fedd16a Bug 1654359 - build slightly less crashreporter stuff if we have DUMP_SYMS; r=gsvelto
Compiling less stuff is always nice, especially when some of it is Rust.

Differential Revision: https://phabricator.services.mozilla.com/D84413
2020-07-22 07:00:05 +00:00
Nathan Froyd 05bded91a1 Bug 1654568 - make the check for using DUMP_SYMS more general in unit-symbolstore.py; r=gsvelto
Broader testing is more better.

Differential Revision: https://phabricator.services.mozilla.com/D84536
2020-07-22 20:29:31 +00:00
Nathan Froyd 318d708888 Bug 1652865 - mask off cpusubtype bits before determining Mach-O identifiers; r=gsvelto
If we don't do this, we run into problems when walking over the Mach-O load
commands, where we *do* mask off cpusubtype bits.

Differential Revision: https://phabricator.services.mozilla.com/D84356
2020-07-22 06:57:20 +00:00
Csoregi Natalia aec7461c96 Backed out 4 changesets (bug 1635494) for failures on test_process_kill.js. CLOSED TREE
Backed out changeset 67a16c6149f7 (bug 1635494)
Backed out changeset 862a5dcbe7a5 (bug 1635494)
Backed out changeset 36e670cd1653 (bug 1635494)
Backed out changeset 19c4d55874d9 (bug 1635494)
2020-07-22 14:07:01 +03:00
David Teller c74fd2537a Bug 1635494 - Test that nsIProcessToolsService::kill doesn't cause crash reports;r=gsvelto
nsIProcessToolsService::kill is designed to kill without causing crash reports.
Let's make sure it does not cause crash reports.

Differential Revision: https://phabricator.services.mozilla.com/D82553
2020-07-22 10:05:12 +00:00
Cameron McCormack dd61f595eb Bug 1620467 - Part 4: Change internal uses of -moz-appearance to appearance and -moz-default-appearance. r=emilio,webcompat-reviewers,geckoview-reviewers,preferences-reviewers,ntim,agi,miketaylr
Uses of `-moz-appearance: none` are changed to `appearance: none`.

Uses of other values that are simply reverting the appearance back to
its default are changed to `appearance: auto`.

Uses of values in UA sheets that are defining the inherent appearance of
widgets are changed to:

  appearance: auto;
  -moz-default-appearance: <value>;

since those values are either no longer supported on (-moz-)appearance,
or are still supported but only in some limited form.

There are some uses of `-moz-appearance: textfield` on <input
type=number> elements that are renamed to `appearance: textfield`.

Differential Revision: https://phabricator.services.mozilla.com/D83430
2020-07-16 22:04:14 +00:00
Gabriele Svelto 607f4a838e Bug 1633052 - Generate minidumps when encountering heap corruption exceptions on Windows r=dmajor
This patch adds a vectored exception handler to catch STATUS_HEAP_CORRUPTION
exceptions on Windows. Previously these crashes would terimnate the affected
process without generating a minidump. For child process crashes the user would
be notified of the crash but could not report them. Main process crashes on the
other hand would close Firefox abruptly without any sort of feedback to the
user.

Note that this type of exceptions are originated from Windows default memory
allocator which we replace with jemalloc. As such they're unlikely to be thrown
from our code, but are frequently encountered when dealing with injected DLLs
and other external components.

Differential Revision: https://phabricator.services.mozilla.com/D83753
2020-07-16 21:48:17 +00:00
Ricky Stewart bfb4566c24 Bug 1652803 - Retry symbol uploading a couple additional times r=bpitts
Differential Revision: https://phabricator.services.mozilla.com/D83802
2020-07-16 15:58:56 +00:00
Nika Layzell f0b027c089 Bug 1650204 - Part 2: Add dummy AutoAnnotateCrashReport definitions, r=gsvelto
It appears as though I missed these in the first step, and didn't catch the bug
on try.

Differential Revision: https://phabricator.services.mozilla.com/D82649
2020-07-08 16:32:41 +00:00
Mike Hommey 6b2fc90663 Bug 689178 - Remove crash-reporter hooks to externally provide library mappings. r=gsvelto
This is a rebase of a 7-year-old patch that was r=ted. The hooks are not
used as of bug 725231.

Differential Revision: https://phabricator.services.mozilla.com/D81026
2020-06-25 08:43:23 +00:00
Nika Layzell 54a0686fe2 Bug 1650204 - Add an AutoAnnotateCrashReport RAII helper, r=gsvelto
Differential Revision: https://phabricator.services.mozilla.com/D82099
2020-07-06 13:26:51 +00:00
Gabriele Svelto 30236882af Bug 1649443 - When assembling a crash ping only store the modules that are referenced by the stack trace r=KrisWright
Differential Revision: https://phabricator.services.mozilla.com/D81706
2020-07-02 06:57:30 +00:00
Simon Giesecke cd8b8939b9 Bug 1648010 - Replace uses of NS_LITERAL_STRING/NS_LITERAL_CSTRING macros by _ns literals. r=geckoview-reviewers,jgilbert,agi,hsivonen,froydnj
Differential Revision: https://phabricator.services.mozilla.com/D80860
2020-07-01 08:29:29 +00:00
Sylvestre Ledru 68e6f06c65 Bug 1649071 - Replace the DISALLOW_COPY_AND_ASSIGN & DISALLOW_EVIL_CONSTRUCTORS macros with = delete; r=froydnj
Generated with:
./mach static-analysis check --checks="-*, modernize-replace-disallow-copy-and-assign-macro" --fix -j 10 <file>
and
./mach clang-format -p <file>
(as clang-apply-replacement doesn't reformat the change)

(with ~/.mozbuild/clang-tools/clang-tidy/bin/clang-tidy pointing to clang-tidy 11)

Differential Revision: https://phabricator.services.mozilla.com/D81489
2020-06-29 14:37:56 +00:00
Jared Wein 58d7169b20 Bug 1644544 - Annotate crash-stats reports with the enabled experimental features. r=gsvelto,Gijs,preferences-reviewers,mstriemer
Differential Revision: https://phabricator.services.mozilla.com/D80007
2020-06-26 06:03:09 +00:00
Dorel Luca 8118a1f339 Backed out 4 changesets (bug 1646423, bug 1644544, bug 1646178, bug 1648223) for browser-chrome failures in browser/components/preferences/tests/browser_basic_rebuild_fonts_test.js
Backed out changeset 48790fe7990a (bug 1648223)
Backed out changeset 2d52e80dd321 (bug 1646178)
Backed out changeset 5186e66006a4 (bug 1646423)
Backed out changeset 28d0dc323af8 (bug 1644544)
2020-06-26 08:59:45 +03:00
Jared Wein e23dc1af7e Bug 1644544 - Annotate crash-stats reports with the enabled experimental features. r=gsvelto,Gijs,preferences-reviewers,mstriemer
Differential Revision: https://phabricator.services.mozilla.com/D80007
2020-06-26 03:44:51 +00:00
Gabriele Svelto cbadcd16da Bug 1632080 - Stop sending orphaned crash reports with synthesized crash annotations r=mconley
We originally added this functionality in bug 1566855 because we were
seeing a significant amount of orphaned crashes not being submitted.
Notably some of these were early content process startup crashes and
missing them made us unaware of severe issues that would affect our
users. In the meantime we've addressed most of the cases where a crash
would be orphaned. Since the crashes submitted this way have a buildid
that does not match the version of Firefox that actually crashed they
can be confusing during crash triage.

Given the above we can safely remove this functionality. This patch
reverts most of the changes from bug 1566855 but leaves the test
refactorings in place.

Differential Revision: https://phabricator.services.mozilla.com/D78219
2020-06-05 06:32:24 +00:00
Roger Yang c524d44aa8 Bug 1635932 - Add Breadcrumbs annotation to a crash report. r=gsvelto
Differential Revision: https://phabricator.services.mozilla.com/D76182
2020-05-20 21:04:14 +00:00
Gabriele Svelto 06a240a0f3 Bug 1628399 - Make sure that the main process can't access a crash report before it's fully populated r=KrisWright
In bug 1614933 we changed the order in which the crash annotations are sent
from a crashed content process to the main process in order to prevent a
deadlock that would arise if the child process would block writing into the
pipe used to sent the annotations.

This unfortunately introduced a race that I had missed. Here's the sequence of
event when generating a crash in the child process:

1) The child process enters the exception handler
2) It requests a dump from the main process and wait
3) Once the dump is written, the child process wakes up again and writes out
   the crash annotations
4) The child process quits

One the main process side it looks like this:

1) The crash generation thread receives a request to generate a dump
2) The dump is written out, the crash generation thread notifies the content
   process that it can resume execution. During this step the finished
   minidump is recorded in the `OnChildProcessDumpRequested()` callback.
3) The crash generation thread reads the crash annotations sent by the content
   process and finalizes the crash report
4) The main process grabs the finalized crash report

The key issue here is that the main process in step 4 is woken up when the
content process dies. Notice how there's no synchronization between the crash
generation thread and the main thread in the main process: if the crash
generation thread takes too long reading the crash annotations the main thread
might see an incomplete or missing crash report; that's because the event that
wakes it up - the content process ending execution - can happen in parallel
with step 3.

This is an issue that was accidentally introduced in Windows by bug 1614933
but was already present in both Linux and macOS. It was just very unlikely to
happen.

This patch fixes the issue by splitting step 3 in the main process in two
different stages: in the main process we grab the generated minidump in
`OnChildProcessDumpRequested()`, Breakpad then unblocks the child process and
we read the annotations in `OnChildProcessDumpWritten()`. We grab the
`dumpMapLock` Mutex in the latter and release it in the former to ensure that
the main process will have to wait for the crash report to be finalized when
`TakeCrashedChildProcess()` is called. This might appear somewhat confusing
and even causes debug builds to spit a harmless warning (we don't want Mutexes
to be taken and released from different scopes if we can help it).

To implement the above behavior in Breakpad a new callback was introduced in
Windows, an existing one was used under macOS and an unused one was used under
Linux. This accounts for the different way in which minidumps are generated on
the three platforms.

Differential Revision: https://phabricator.services.mozilla.com/D74496
2020-05-18 20:34:48 +00:00
Nicklas Boman 4f2fa0cfa7 Bug 1515419 - fixing ToNewCString (and ToNewUnicode as well) xpcom/string/nsReadableUtils.cpp r=froydnj,necko-reviewers,valentin
Differential Revision: https://phabricator.services.mozilla.com/D17411
2020-05-17 06:58:48 +00:00
Greg V e65e9412b0 Bug 1634205 - Support Gecko Profiler and Base Profiler on FreeBSD r=mstange
- supports amd64 and arm64 (aarch64)
- uses LUL for stack walking

Differential Revision: https://phabricator.services.mozilla.com/D73162
2020-05-06 17:44:19 +00:00
Ian Moody 011b59d595 Bug 1536556 - Replace raw thrown Cr.ERRORs with Components.Exception. r=mossop,remote-protocol-reviewers,marionette-reviewers,whimboo,necko-reviewers,geckoview-reviewers,valentin,agi
Raw Cr.ERROR don't get stack information, same as throwing JS literals instead
of `new Error()`s.

This was done automatically with a new eslint rule that will be introduced in
the next commit.  One instance of a raw Cr.ERROR was not replaced since it is
used in a test that specifically checks the preservation of raw Cr values in
XPCJS.  The rule will be disabled for that instance.

Differential Revision: https://phabricator.services.mozilla.com/D28073
2020-05-05 17:41:36 +00:00
Gabriele Svelto a5afe43f02 Bug 1498706 - Prevent the Breakpad exception handler from hanging a process instead of terminating it r=dmajor
This changes the way filter callbacks work in Breakpad so that the
Gecko-provided exception handler can instruct breakpad to just consider an
exception handled and terminate the process without further work. This change
is needed because when two threads enter the exception handler at the same
time the second can get stuck. The logic behind this is convoluted: when the
filter callback "accepts" an exception Breakpad will request minidump
generation and then notify Windows exception search mechanism that the
exception was handled. The process will terminate at this point. However if
a second thread enters the exception handler before this happens it will also
try to handle the exception, either by generating a minidump (prior to my fix
for bug 1434933) or by simply ignoring it (after bug 1434933). However under
both conditions Breakpad will consider the exception not handled and inform
Windows exception search logic to look for another handler. But we're already
at the top-level handler so Windows will try it again, and again, and again
... hanging the process instead of terminating it.

With this patch applied the first time we hit the exception handler we'll
request minidump generation and report the exception as handled. If we hit the
exception handler again we will not request minidump generation but we will
also report the exception as handled so that Windows can terminate the process
right away.

Differential Revision: https://phabricator.services.mozilla.com/D72493
2020-04-29 21:17:50 +00:00
Gijs Kruitbosch 3e3ce6cc06 Bug 1632264 - DONTBUILD really fix comment in browser_aboutCrashesResubmit.js
Differential Revision: https://phabricator.services.mozilla.com/D72811
2020-04-28 10:42:50 +00:00
Gijs Kruitbosch f2ee31dd92 Bug 1632264 - DONTBUILD fix comments in browser_aboutCrashesResubmit.js, r=mconley
Differential Revision: https://phabricator.services.mozilla.com/D72389
2020-04-27 20:36:32 +00:00
Andreea Pavel bb95dd40d7 Backed out changeset 22a9a0e02e69 (bug 1632264) on request on a CLOSED TREE DONTBUILD 2020-04-27 23:33:23 +03:00
Gijs Kruitbosch cddf5c0218 Bug 1632264 - fix comments in browser_aboutCrashesResubmit.js, r=mconley
Differential Revision: https://phabricator.services.mozilla.com/D72389
2020-04-27 20:07:32 +00:00
Stephen A Pohl 4be18f0f0e Bug 1578917: Force macOS Aqua appearance on for content processes, crash reporter and updater. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D70783
2020-04-24 18:37:57 +00:00
Gijs Kruitbosch 1c0a1c9f3e Bug 1631358 - remove traces of CPOWs from browser/, testing/ and toolkit/, r=mconley
Differential Revision: https://phabricator.services.mozilla.com/D71510
2020-04-21 14:05:35 +00:00
Gabriele Svelto a4daa08935 Bug 1434933 - Generate only one minidump for a crashing child process even when multiple threads trigger the exception handler (almost) at the same time r=KrisWright
This patch modifies exception handling in child processes so that no more than
one minidump will be requested in case of a crash - even when multiple threads
enter the exception handler almost simultaneously.

The fix is implemented by introducing an atomic flag that is set once we first
decide that the exception is a crashing one. All following threads entering
the exception handler will find the flag already set and give up.

This logic was added to the child process exception filters - callbacks that
breakpad invokes within the exception handler to decide whether to generate a
minidump or not. I factored out some of the affected code trying to make it a
bit more readable and a little bit less redundant than before.

Differential Revision: https://phabricator.services.mozilla.com/D71108
2020-04-17 20:08:59 +00:00
David Teller 03537d0231 Bug 1605209 - Annotate JSWindowActor's message exchanges to determine which actor is on the stack of a crash;r=gsvelto,nika
Differential Revision: https://phabricator.services.mozilla.com/D69993
2020-04-17 10:56:21 +00:00
Daniel Varga ca80197a2f Backed out 4 changesets (bug 1605209) for causing browser-chrome failures at dom/ipc/tests/JSWindowActor/browser_crash_report.js
CLOSED TREE

Backed out changeset 6eb1cc169dbf (bug 1605209)
Backed out changeset d81b566ad94f (bug 1605209)
Backed out changeset e0e6dbf1d48d (bug 1605209)
Backed out changeset 289f5bbac1ae (bug 1605209)
2020-04-17 13:49:04 +03:00
sumagnadas 74de3ae4a1 Bug 1622687 - toolkit/crashreporter/: Make it flake8 compliant r=gsvelto,rstewart
Made the files in toolkit/crashreporter flake8 compliant
And some finishing touches in the symbolstore.py file for readability

Differential Revision: https://phabricator.services.mozilla.com/D68691
2020-04-16 14:40:31 +00:00
David Teller a6bda985ed Bug 1605209 - Annotate JSWindowActor's message exchanges to determine which actor is on the stack of a crash;r=gsvelto,nika
Differential Revision: https://phabricator.services.mozilla.com/D69993
2020-04-16 08:27:01 +00:00
Jan Beich 25e565834b Bug 1629300 - Add back CreateNotificationPipeForChild for Tier3 after bug 1623961. r=KrisWright
Differential Revision: https://phabricator.services.mozilla.com/D70614

--HG--
extra : moz-landing-system : lando
2020-04-13 21:38:51 +00:00
Mike Hommey 0e36d45b8a Bug 1628927 - Convert symbolstore.py to python 3. r=rstewart
Differential Revision: https://phabricator.services.mozilla.com/D70467

--HG--
extra : moz-landing-system : lando
2020-04-12 00:03:54 +00:00
Csoregi Natalia 8ed108064b Backed out changeset 789cef4e9c6d (bug 1628927) for symbol related bustage. CLOSED TREE 2020-04-11 04:31:34 +03:00
Mike Hommey e62d5e9a93 Bug 1628927 - Convert symbolstore.py to python 3. r=rstewart
Differential Revision: https://phabricator.services.mozilla.com/D70467

--HG--
extra : moz-landing-system : lando
2020-04-10 21:42:18 +00:00
Gabriele Svelto 500082602d Bug 1627367 - Remove the content process crash annotation blacklist r=KrisWright
Differential Revision: https://phabricator.services.mozilla.com/D70101

--HG--
extra : moz-landing-system : lando
2020-04-08 22:59:15 +00:00
Gabriele Svelto 969e685d94 Bug 1596210 - Prevent breakpad from spamming the log with error messages r=KrisWright
Setting breakpad minimum log severity level to CRITICAL should be enough to
quiet it completely since there are no statements in the code using it, the
"highest" I could find all use the ERROR level.

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

--HG--
extra : moz-landing-system : lando
2020-04-08 20:28:14 +00:00
Gabriele Svelto 958361a3fb Bug 1614933 - Fix a deadlock in Breakpad crash generation on Windows; r=KrisWright
On Windows content process minidump generation goes through the following
steps:

* The child process exception handler invokes the `filter` callback. This is the
  `ChildFPEFilter()` function in nsExceptionHandler.cpp.
* If this callback returns true then the child process sends a request to the
  crash generation server living in the main process and then waits.
* The main process generates a minidump in response to this message.
* Once the minidump has been generated the crash generation server calls the
  `dump_callback` callback with the minidump filename. This is the
  `OnChildProcessDumpRequested()` function in nsExceptionHandler.cpp.
* Once this callback returns the main process signals the child process that
  it has finished generating the dump.
* The child process resumes execution in the exception handler and then
  terminates.

During this process we send crash annotations via a pipe from the child
process to the main process. The function responsible for this is
`PrepareChildExceptionTimeAnnotations()` in nsExceptionHandler.cpp and it's
called within `ChildFPEFilter()`. Because pipe writes are blocking if we send
enough annotations to fill the pipe buffer then the child process will get
stuck in `ChildFPEFilter()` and never request a dump from the main process. Thus
the content process will never shut down and the main process will never see
that it has crashed, it will only appear indefinitely stuck.

To solve this issue a few changes are necessary:

* The crash annotations are not sent from the `filter` callback, they are sent
  from the `minidump` callback which we did not use before. This callback is
  executed in the child process **after** signaling the main process.
* This is not enough to prevent the deadlock though, because the content
  process will still wait before the parent process has responded before
  invoking this new callback. The parent process on the other hand will
  generate the minidump and then call `OnChildProcessDumpRequest()` which will
  wait to read the annotations sent by the child process. Thus both processes
  would be stuck. To solve this other issue we change the order in which the
  parent process responds: instead of invoking the `dump_callback` first and
  then signaling the child process it does the opposite.

I've also added a new test that covers two separate issues solved by this
patch-set: that we don't deadlock when writing too much data (this issue) and
that we don't fail to send an annotation if it's too large (previously the
shared memory buffer was 16KiB in size so this annotation wouldn't fit).

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

--HG--
extra : moz-landing-system : lando
2020-04-08 06:55:41 +00:00
Gabriele Svelto 2bc88d71e0 Bug 1614933 - Gather content processes' crash annotations at exception time instead of using IPC; r=froydnj
Crash annotations in content processes are currently sent over IPC via
shared memory buffers. To pave the way for the Rust rewrite of the exception
handler we are removing this code and gathering all the crash annotations
within the content processes themselves. This patch causes annotations to be
stored in the global table of each content process. They are then streamed
out to the parent process by the exception handler together with the
exception-time annotations.

This has a number of benefits:

* we have one less channel to exchange data between content processes and
  the parent process
* we save memory because we don't need to allocate the shared memory buffers
* annotations are faster because we don't stream them all out every time one
  changes
* we won't truncate annotations anymore if we run out of space in the shared
  segment.
* we don't need delayed annotations anymore, so we can get rid of the
  associated machinery

As I refactored the code I tried to adjust all the obsolete comments,
consolidate shared code and remove the redundant steps that were sometimes
present. In many places we had two entire crash annotation tables we merged to
change just a couple; that comes from the fact that historically we loaded
them from disk. Now it doesn't matter anymore and we can just go ahead and
change the ones we care about.

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

--HG--
extra : moz-landing-system : lando
2020-04-08 06:55:40 +00:00
Chris Peterson d6d50e8392 Bug 1627496 - Replace MOZ_MUST_USE with [[nodiscard]] in toolkit/crashreporter. r=gsvelto
Differential Revision: https://phabricator.services.mozilla.com/D69740

--HG--
extra : moz-landing-system : lando
2020-04-05 06:45:04 +00:00
Gabriele Svelto 76c8b67932 Bug 1627360 - Document and fix the serialization of the SubmittedFromInfobar crash annotation r=mconley
Differential Revision: https://phabricator.services.mozilla.com/D69638

--HG--
extra : moz-landing-system : lando
2020-04-06 16:33:32 +00:00
Gabriele Svelto 87ab689c3c Bug 1616195 - Improve the Linux distribution version information included in crash reports r=KrisWright
We previously only included the contents of the /etc/lsb-release file, however
this file is not present in RedHat-based distributions which use
/etc/os-release instead. This patch will read the latter if the former is not
present.

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

--HG--
extra : moz-landing-system : lando
2020-03-31 15:57:15 +00:00
Stephen A Pohl b955a31d60 Bug 1625354: Two more switches to a non-deprecated API to load .nib files. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D68486

--HG--
extra : moz-landing-system : lando
2020-03-30 23:17:27 +00:00
Barret Rennie a179f89b61 Bug 1602918 - Report DOMFissionEnabled in crash pings r=nika
Differential Revision: https://phabricator.services.mozilla.com/D68660

--HG--
extra : moz-landing-system : lando
2020-03-30 16:24:30 +00:00
Daniel Varga 3a42a4012c Backed out changeset 78a429af0ec5 (bug 1622687) for build bustage
CLOSED TREE
2020-03-30 23:32:19 +03:00
sumagnadas dc9c74f709 Bug 1622687 - Fixed files in toolkit/crashreporter to make it flake8 compliant. r=froydnj
Changed .flake8 file to include the changes for flake8 compliance

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

--HG--
extra : moz-landing-system : lando
2020-03-30 16:10:03 +00:00
André Bargull 14ca007916 Bug 1625138 - Part 41: Remove no longer needed includes for mozilla/TypeTraits. r=froydnj
Also adds missing includes in some files, these were previously only transivitely
included through mozilla/TypeTraits.h.

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

--HG--
extra : moz-landing-system : lando
2020-03-28 16:00:09 +00:00
Nicholas Nethercote 0d565690c2 Bug 1574390 - Implement guard pages in PHC. r=glandium
Each allocation page is now bracketed by a guard page, and allocations are put
at the end of their page so that bounds violations trigger a crash.

Various operations (realloc(), free(), malloc_usable_size()) now require that
the pointer they are given points to the start of an allocation.

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

--HG--
rename : toolkit/crashreporter/test/unit_ipc/test_content_phc2.js => toolkit/crashreporter/test/unit_ipc/test_content_phc3.js
extra : moz-landing-system : lando
2020-03-27 00:14:53 +00:00
Gabriele Svelto 1974b2ed47 Bug 1622316 - Add buffering to the PlatformWriter to reduce the number of syscalls required to write the .extra file r=KrisWright
Differential Revision: https://phabricator.services.mozilla.com/D67588

--HG--
extra : moz-landing-system : lando
2020-03-24 11:17:23 +00:00
Brindusan Cristian 4646c1f41f Backed out 2 changesets (bug 1614933) for bc failures at browser_tabicon_after_bg_tab_crash.js.
Backed out changeset 59503d3a702f (bug 1614933)
Backed out changeset 578c8ba9598f (bug 1614933)
2020-03-22 17:30:07 +02:00
Gabriele Svelto 322404bebb Bug 1614933 - Gather content processes' crash annotations at exception time instead of using IPC; r=froydnj
Crash annotations in content processes are currently sent over IPC via
shared memory buffers. To pave the way for the Rust rewrite of the exception
handler we are removing this code and gathering all the crash annotations
within the content processes themselves. This patch causes annotations to be
stored in the global table of each content process. They are then streamed
out to the parent process by the exception handler together with the
exception-time annotations.

This has a number of benefits:

* we have one less channel to exchange data between content processes and
  the parent process
* we save memory because we don't need to allocate the shared memory buffers
* annotations are faster because we don't stream them all out every time one
  changes
* we won't truncate annotations anymore if we run out of space in the shared
  segment.
* we don't need delayed annotations anymore, so we can get rid of the
  associated machinery

As I refactored the code I tried to adjust all the obsolete comments,
consolidate shared code and remove the redundant steps that were sometimes
present. In many places we had two entire crash annotation tables we merged to
change just a couple; that comes from the fact that historically we loaded
them from disk. Now it doesn't matter anymore and we can just go ahead and
change the ones we care about.

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

--HG--
extra : moz-landing-system : lando
2020-03-21 17:13:08 +00:00
Gabriele Svelto 9046efc64e Bug 1623961 - Adjust the dummy crash reporter to reflect the new prototype for SetRemoteExceptionHandler() r=froydnj,kats
Differential Revision: https://phabricator.services.mozilla.com/D67675

--HG--
extra : moz-landing-system : lando
2020-03-20 20:56:41 +00:00
Michael Forney 48e9b9c824 Bug 1615713 - Update breakpad to upstream revision 5bba75bfd6ec386b8e3af0b91332388a378135bf r=gsvelto
This includes several fixes required to build against musl libc.

Conflicts were resolved in 00-arm-exidx-rollup.patch and
10-json-upload.patch. 08-dont-add-sp-to-clobber-list.patch was
applied upstream and is no longer needed. The others applied cleanly.

breakpad_getcontext.S is now built conditionally based upon the
available of getcontext() from libc, rather than only on Android.
The profiler was updated to reflect this change.

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

--HG--
rename : toolkit/crashreporter/breakpad-patches/09-gnu-alt-form-minimal-support.patch => toolkit/crashreporter/breakpad-patches/08-gnu-alt-form-minimal-support.patch
rename : toolkit/crashreporter/breakpad-patches/10-json-upload.patch => toolkit/crashreporter/breakpad-patches/09-json-upload.patch
rename : toolkit/crashreporter/google-breakpad/src/common/android/breakpad_getcontext.S => toolkit/crashreporter/google-breakpad/src/common/linux/breakpad_getcontext.S
rename : toolkit/crashreporter/google-breakpad/src/common/android/breakpad_getcontext_unittest.cc => toolkit/crashreporter/google-breakpad/src/common/linux/breakpad_getcontext_unittest.cc
extra : moz-landing-system : lando
2020-03-19 22:52:26 +00:00
Gabriele Svelto d3eaf3858d Bug 1622452 - Remove the remote exception handler when a content process shuts down r=froydnj
This works on all platforms with the exception of Linux where we remove the
exception handler only if the sandbox is disabled. With the sandbox enabled we
would have to whitelist sigaltstack() which breakpad uses to remove the
alternate signal stack which is not worth the fuss.

Besides this patch refactors the code that sets and unsets the exception
handler, cutting down on the duplication:

* The XRE_UnsetRemoteExceptionHandler() call is removed from XULAppAPI.h since it
  was no longer used
* The duplicate checks for the special strings used to disable the remote exception
  handler have been removed from CrashReporter::UnsetRemoteExceptionHandler()
  leaving them in the calling code
* The SetRemoteExceptionHandler() function was consolidated into only one
  piece of code with only one non-platform-specific shared prototype
* Some additional code was factored out to improve the readability

These changes pave the way both for bug 1614933 and for the oxidation of the
exception handler code.

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

--HG--
extra : moz-landing-system : lando
2020-03-19 14:06:31 +00:00
Mike Hommey 646579d57d Bug 1618781 - Use the taskcluster artifact for pdbstr on both Windows native and cross builds. r=froydnj
And make it an explicit dependency of the build system.

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

--HG--
extra : moz-landing-system : lando
2020-03-18 04:21:18 +00:00
Ciure Andrei 19d8351b5f Backed out 2 changesets (bug 1618781) for toolchain bustages CLOSED TREE
Backed out changeset 83026834b242 (bug 1618781)
Backed out changeset ac168e956e3a (bug 1618781)
2020-03-18 05:32:00 +02:00
Mike Hommey 570134e4a8 Bug 1618781 - Use the taskcluster artifact for pdbstr on both Windows native and cross builds. r=froydnj
And make it an explicit dependency of the build system.

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

--HG--
extra : moz-landing-system : lando
2020-03-17 14:01:46 +00:00
Ed Lee acb960676c Bug 1620556 - Automatic code fixes for Prettier 1.19.1 upgrade. r=Standard8,remote-protocol-reviewers,marionette-reviewers,webcompat-reviewers,perftest-reviewers,sparky,whimboo,denschub
Differential Revision: https://phabricator.services.mozilla.com/D66128

--HG--
extra : moz-landing-system : lando
2020-03-13 23:38:52 +00:00
Jason Adler f7585987c9 Bug 1609823 Make about:crashes an HTML file r=ntim
Differential Revision: https://phabricator.services.mozilla.com/D66253

--HG--
rename : toolkit/crashreporter/content/crashes.xhtml => toolkit/crashreporter/content/crashes.html
extra : moz-landing-system : lando
2020-03-11 19:15:12 +00:00
Bogdan Tara fb2b3d4e41 Backed out 2 changesets (bug 1614933) for busages complaining about IdleSchedulerChild.cpp CLOSED TREE
Backed out changeset ff92f800a74e (bug 1614933)
Backed out changeset 5cee8f603ae4 (bug 1614933)
2020-03-10 17:21:55 +02:00
Gabriele Svelto 9336e8143b Bug 1614933 - Gather content processes' crash annotations at exception time instead of using IPC; r=froydnj
Crash annotations in content processes are currently sent over IPC via
shared memory buffers. To pave the way for the Rust rewrite of the exception
handler we are removing this code and gathering all the crash annotations
within the content processes themselves. This patch causes annotations to be
stored in the global table of each content process. They are then streamed
out to the parent process by the exception handler together with the
exception-time annotations.

This has a number of benefits:

* we have one less channel to exchange data between content processes and
  the parent process
* we save memory because we don't need to allocate the shared memory buffers
* annotations are faster because we don't stream them all out every time one
  changes
* we won't truncate annotations anymore if we run out of space in the shared
  segment.
* we don't need delayed annotations anymore, so we can get rid of the
  associated machinery

As I refactored the code I tried to adjust all the obsolete comments,
consolidate shared code and remove the redundant steps that were sometimes
present. In many places we had two entire crash annotation tables we merged to
change just a couple; that comes from the fact that historically we loaded
them from disk. Now it doesn't matter anymore and we can just go ahead and
change the ones we care about.

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

--HG--
extra : moz-landing-system : lando
2020-03-10 14:59:22 +00:00
Simon Giesecke 8ad76c7e47 Bug 1613985 - Use default for equivalent-to-default constructors/destructors in toolkit. r=mossop
Depends on D66008

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

--HG--
extra : moz-landing-system : lando
2020-03-10 08:48:24 +00:00
Gabriele Svelto 7e978643d5 Bug 1618879 - Do not send the telemetry session ID along with crash reports r=mconley
The telemetry session ID annotation is only used to correlate crash pings with
main pings, it does not need to be sent along with crash reports as we have no
use for it there.

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

--HG--
extra : moz-landing-system : lando
2020-03-05 16:00:43 +00:00
Simon Giesecke 69b996524d Bug 1618165 - Provide BaseAutoLock and BaseAutoUnlock deduction guides for Mutex references. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D64359

--HG--
extra : moz-landing-system : lando
2020-02-28 07:59:30 +00:00
Andrew McCreight 4babb2b5ab Bug 1609815 - Remove Web Replay C++ implementation. r=jgilbert,jandem,gbrown
Patch by bhackett and jlaster. Also reviewed by mccr8.

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

--HG--
extra : moz-landing-system : lando
2020-02-27 17:39:15 +00:00
Ciure Andrei 00dd87f6f4 Backed out changeset d407a28318e6 (bug 1609815) for causing windows ming bustages CLOSED TREE
--HG--
extra : histedit_source : b2c748e31e0f6ba8fcf9960a336e0bbd361b07e6
2020-02-27 07:05:19 +02:00
Mike Hommey d747b65211 Bug 1617794 - Wrap Windows tools with Wine on cross builds. r=dmajor
Windows programs run via Wine don't like Unix absolute paths (they look
like command line arguments), so we need to use relative paths.

Mingw already run fxc2 via wine, but for some reason it doesn't care
about the Unix absolute paths. genshaders does need some adjustements to
run properly with the real fxc.

Now, on actual Windows, because the temporary directory where
tempfile.NamedTemporaryFile creates files by default is not necessarily
on the same drive as where the command runs from, a relative path can't
be constructed. So we also force the temporary file to be created in the
current (obj) directory.

There is no similar concern for other files because we only go from
objdir to srcdir, and the build system already doesn't support both
being on a separate drive.

While here, flush stdout when the genshared script writes to it, so that
the messages are printed out immediately rather than randomly, later,
after output from subprocesses.

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

--HG--
extra : moz-landing-system : lando
2020-02-27 04:42:57 +00:00
Andrew McCreight b197e1f783 Bug 1609815 - Remove Web Replay C++ implementation. r=jgilbert,jandem,gbrown
Patch by bhackett and jlaster. Also reviewed by mccr8.

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

--HG--
extra : moz-landing-system : lando
2020-02-27 04:43:48 +00:00
Gabriele Svelto 978898caaa Bug 1617202 - Handle TelemetrySessionId like a regular crash annotation r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D63687

--HG--
extra : moz-landing-system : lando
2020-02-25 07:25:20 +00:00
Sylvestre Ledru 767a63976f Bug 1617369 - Reformat toolkit/crashreporter/ & toolkit/library/rust/ using rustfmt r=gsvelto
Depends on D63952

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

--HG--
extra : moz-landing-system : lando
2020-02-25 07:44:53 +00:00
Eric Rahm b224a7461c Bug 1617334 - Remove nsAutoPtr usage from toolkit. r=gsvelto
Differential Revision: https://phabricator.services.mozilla.com/D63746

--HG--
extra : moz-landing-system : lando
2020-02-22 14:50:52 +00:00
Arnaud Renevier 9d7abb9383 Bug 1607364 - CrashReporting API r=baku
Implement Crash Report for Reporting API.

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

--HG--
extra : moz-landing-system : lando
2020-02-21 17:40:30 +00:00
Mike Shal c8abdd68c2 Bug 1616630 - Use py3_action for GENERATED_FILES that already support it; r=firefox-build-system-reviewers,kvark,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D63438

--HG--
extra : moz-landing-system : lando
2020-02-21 00:05:17 +00:00
Csoregi Natalia 6360b24e80 Backed out 2 changesets (bug 1616630) for Android bustage. CLOSED TREE
Backed out changeset 15016546c954 (bug 1616630)
Backed out changeset dcb7dc51633b (bug 1616630)
2020-02-20 21:24:11 +02:00
Mike Shal 39492660f4 Bug 1616630 - Use py3_action for GENERATED_FILES that already support it; r=firefox-build-system-reviewers,kvark,rstewart
Depends on D63437

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

--HG--
extra : moz-landing-system : lando
2020-02-20 16:21:55 +00:00
Mike Shal d8e4653d19 Bug 1611326 - Default to py3_action, and add a py2 attribute to GENERATED_FILES; r=firefox-build-system-reviewers,rstewart
GENERATED_FILES now defaults to python3 unless py2=True is specified as
an argument. All existing GENERATED_FILES scripts and GeneratedFile
templates have the py2=True attribute added, so this patch should
effectively be a no-op.

Going forward, individual scripts can be converted to python3 and their
corresponding py2=True attribute can be deleted. In effect, this patch
will be backed out in pieces until all scripts run in python3, at which
point the py2 attribute itself can be removed.

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

--HG--
extra : moz-landing-system : lando
2020-02-14 13:22:46 +00:00
Cosmin Sabou ff39f9206d Backed out 2 changesets (bug 1613263, bug 1611326) for presummably causing l10n langpack bustages. a=backout
Backed out changeset 77e54e76848a (bug 1611326)
Backed out changeset 36ba18ac3a68 (bug 1613263)
2020-02-14 15:02:21 +02:00
Mike Shal ad0c283ab2 Bug 1611326 - Default to py3_action, and add a py2 attribute to GENERATED_FILES; r=firefox-build-system-reviewers,rstewart
GENERATED_FILES now defaults to python3 unless py2=True is specified as
an argument. All existing GENERATED_FILES scripts and GeneratedFile
templates have the py2=True attribute added, so this patch should
effectively be a no-op.

Going forward, individual scripts can be converted to python3 and their
corresponding py2=True attribute can be deleted. In effect, this patch
will be backed out in pieces until all scripts run in python3, at which
point the py2 attribute itself can be removed.

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

--HG--
extra : moz-landing-system : lando
2020-02-13 23:07:04 +00:00
Brindusan Cristian e2fb6b8344 Backed out changeset 7fefed11f117 (bug 1611326) for build bustages at update-1.xpi.stub. CLOSED TREE 2020-02-13 23:33:34 +02:00
Mike Shal e6464dd404 Bug 1611326 - Default to py3_action, and add a py2 attribute to GENERATED_FILES; r=firefox-build-system-reviewers,rstewart
GENERATED_FILES now defaults to python3 unless py2=True is specified as
an argument. All existing GENERATED_FILES scripts and GeneratedFile
templates have the py2=True attribute added, so this patch should
effectively be a no-op.

Going forward, individual scripts can be converted to python3 and their
corresponding py2=True attribute can be deleted. In effect, this patch
will be backed out in pieces until all scripts run in python3, at which
point the py2 attribute itself can be removed.

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

--HG--
extra : moz-landing-system : lando
2020-02-13 20:31:50 +00:00
Kristen Wright cc862d2d30 Bug 1539944 - Get rid of NS_NewThread r=froydnj
Gets rid of `NS_NewThread`. Where it was used in testing, I gave the new named threads names relevant to their tests.

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

--HG--
extra : source : 541b98270c9985c5bd3569ff3ff8bc6c3d3c650a
2020-02-11 21:01:56 +00:00
Ciure Andrei 0ddf5384e0 Backed out changeset 541b98270c99 (bug 1539944) for causing bc leaks CLOSED TREE 2020-02-12 03:23:15 +02:00
Kristen Wright e40c296db4 Bug 1539944 - Get rid of NS_NewThread r=froydnj
Gets rid of `NS_NewThread`. Where it was used in testing, I gave the new named threads names relevant to their tests.

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

--HG--
extra : moz-landing-system : lando
2020-02-11 21:01:56 +00:00
Andrew Osmond 215f13488a Bug 1602819 - Expose desktop environment (e.g. GNOME, KDE) on Linux. r=jrmuizel,fluent-reviewers
This patch also exposes the desktop environment and window protocol on
the gfx blocklist, allowing us more control over feature deployment.
This will help with the slow rollout of WebRender to release channels.

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

--HG--
extra : moz-landing-system : lando
2020-02-10 14:21:30 +00:00
Razvan Maries 23b0b10a14 Backed out changeset 8ddc0a160da1 (bug 1602819) for Mochitest perma failures on Linux. CLOSED TREE 2020-02-10 14:52:27 +02:00
Andrew Osmond b2a444ebe9 Bug 1602819 - Expose desktop environment (e.g. GNOME, KDE) on Linux. r=jrmuizel,fluent-reviewers
This patch also exposes the desktop environment and window protocol on
the gfx blocklist, allowing us more control over feature deployment.
This will help with the slow rollout of WebRender to release channels.

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

--HG--
extra : moz-landing-system : lando
2020-02-07 18:57:51 +00:00
Calixte Denizet 99c6342b1a Bug 1603988 - Part 1: Avoid to fail system-symbols-mac-upload-symbols when no symbols to upload r=marco,gsvelto
Currently, when task system-symbols-mac doesn't produce artifacts because of no data, then the task system-symbols-mac-upload-symbols is failing too.
So this patch aims to not fail the task in such a case.

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

--HG--
extra : moz-landing-system : lando
2020-02-04 10:06:07 +00:00
Gabriele Svelto ae593b8545 Bug 1612899 - Close the pipe used to send crash annotations to the parent process only once r=froydnj
The issue was caused by us making a copy of the platform writer thus
triggering the destructor twice.

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

--HG--
extra : moz-landing-system : lando
2020-02-03 16:08:30 +00:00
Brian Grinstead 3d2d2d0ea7 Bug 1608281 - Automated rewrite away from reading properties on the global `this` in JSM files - round 1 r=mossop
This patch was generated with a script. It doesn't include all files:

- Files that use the preprocessor or fail to parse are skipped
- Files that are loaded as JSMs but don't use the .jsm extension are skipped (those will be renamed in Bug 1609269)

It was generated with the following command using d855222aa2/no-this-property-read.js:

```
hg revert --all &&
cp .gitignore .rgignore &&
rg --files-without-match -g '*.jsm' '^#endif|^#include|^#filter' | jscodeshift --stdin --transform ~/Code/jsm-rewrites/no-this-property-read.js --ignore-pattern ./mobile/android/modules/Sanitizer.jsm --ignore-pattern ./js/xpconnect/tests/unit/syntax_error.jsm &&
./mach eslint `hg st | rg '^M ' | sed 's/^M //'`
```

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

--HG--
extra : moz-landing-system : lando
2020-01-29 21:50:04 +00:00
Michael Forney fafd525cc9 Bug 1612025 - Avoid conflict with pread64/pwrite64 defined by libc r=gsvelto
musl libc defines these to pread and pwrite respectively, since its
off_t is always 64-bit. This causes unintended macro replacement
when defining the pread64/pwrite64 wrappers.

To prevent this, save the macro definitions at the start of the
header and restore them at the end. This is what is already done
to work around the same issue on Android NDK.

This is a cherry-pick of the following upstream change:
https://chromium.googlesource.com/linux-syscall-support/+/f70e2f1641e280e777edfdad7f73a2cfa38139c7%5E%21/

This change was also applied to google-breakpad here:
647158232b%5E%21/

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

--HG--
extra : moz-landing-system : lando
2020-01-29 07:05:44 +00:00
Razvan Maries 0801935dae Backed out changeset 228931ff1d49 (bug 1607364) for mochitest failures. CLOSED TREE 2020-01-28 22:03:47 +02:00
Arnaud Renevier 4ba9c81516 Bug 1607364 - CrashReporting API r=baku
Implement Crash Report for Reporting API.

The browser test will force a crash of the renderer and check that a report is
sent to the server. Because of this (intentional) crash, the verification test
fail. So we disable verification test for that test.

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

--HG--
extra : moz-landing-system : lando
2020-01-28 18:06:47 +00:00
Gabriele Svelto 44c60cb145 Bug 1609649 - Strip telemetry annotations from the crashes we submit via Firefox r=chutten
Differential Revision: https://phabricator.services.mozilla.com/D60145

--HG--
extra : moz-landing-system : lando
2020-01-23 21:22:11 +00:00
Gabriele Svelto f40b611e19 Bug 1610566 - Prevent child processes crashing before the exception-handler is in place from triggering an assertion in the parent process r=froydnj
This also adds an explicit warning when this happens so that the child processes don't crash without leaving a trace.

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

--HG--
extra : moz-landing-system : lando
2020-01-23 21:33:37 +00:00
Mihai Alexandru Michis 331926ea06 Backed out changeset c07d1683b9f1 (bug 1609649) for causing failures regarding the Crash Reporter.
CLOSED TREE
2020-01-23 12:37:53 +02:00
Gabriele Svelto 157c39b737 Bug 1609649 - Strip telemetry annotations from the crashes we submit via Firefox r=chutten
Differential Revision: https://phabricator.services.mozilla.com/D60145

--HG--
extra : moz-landing-system : lando
2020-01-22 19:23:18 +00:00
Ciure Andrei 95103073f2 Backed out changeset 41a9a81b0127 (bug 1607364) for RustMozCrash related crashes CLOSED TREE 2020-01-23 02:50:36 +02:00
Arnaud Renevier 80b1e692e0 Bug 1607364 - CrashReporting API r=baku
Implement Crash Report for Reporting API.

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

--HG--
extra : moz-landing-system : lando
2020-01-22 22:38:00 +00:00
Gabriele Svelto a0a320eab0 Bug 1610778 - Prevent garbage from being printed out together with a process PID r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D60651

--HG--
extra : moz-landing-system : lando
2020-01-22 14:40:39 +00:00
Csoregi Natalia a80826ff4b Backed out changeset f2cdc99085f6 (bug 1607364) for bustage on BrowserParent.cpp. CLOSED TREE 2020-01-21 22:36:18 +02:00
Arnaud Renevier 18693a1c1f Bug 1607364 - CrashReporting API r=baku
Implement Crash Report for Reporting API.

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

--HG--
extra : moz-landing-system : lando
2020-01-21 19:31:26 +00:00
Nika Layzell bf4ed5643e Bug 1608158 - Include MainThreadRunnableName in crash reports, r=chutten,gsvelto
While this information is often included in crash stacks, there are a few
situations where this probe can give us better information:

* Sometimes we get absolute garbage for part of the stack, and having
  information off to the side could help clarify things.
* Sometimes many different runnables get their Run() method merged through code
  folding, and so the Run() you see in the stack is very much not what you would
  expect to see. Having the runnable name be available could help clarify things.
* This data may be easier to work with in bulk as it is a separate,
  well-defined, field.

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

--HG--
extra : moz-landing-system : lando
2020-01-20 18:23:48 +00:00
Cosmin Sabou ba4af43bea Backed out changeset 93624f390bb7 (bug 1608158) for causing build bustages on nsExceptionHandler.cpp. CLOSED TREE 2020-01-20 19:20:23 +02:00
Nika Layzell 445a7841a6 Bug 1608158 - Include MainThreadRunnableName in crash reports, r=chutten,gsvelto
While this information is often included in crash stacks, there are a few
situations where this probe can give us better information:

* Sometimes we get absolute garbage for part of the stack, and having
  information off to the side could help clarify things.
* Sometimes many different runnables get their Run() method merged through code
  folding, and so the Run() you see in the stack is very much not what you would
  expect to see. Having the runnable name be available could help clarify things.
* This data may be easier to work with in bulk as it is a separate,
  well-defined, field.

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

--HG--
extra : moz-landing-system : lando
2020-01-16 18:32:43 +00:00
Gabriele Svelto 96a70684f4 Bug 1588538 - Use the new Windows dump_syms tool to dump symbols in local builds r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D57094

--HG--
extra : moz-landing-system : lando
2020-01-16 14:14:13 +00:00
Cosmin Sabou fd80827e67 Backed out changeset 2c381bb89f53 (bug 1603988) for causing symbols build bustages. a=backout
--HG--
extra : amend_source : 2329559c13c730897b86c9caa2105efed26016d9
2020-01-15 08:34:56 +02:00
Calixte Denizet 22303869f8 Bug 1603988 - Avoid to fail system-symbols-mac-upload-symbols when no symbols to upload r=marco
Currently, when task system-symbols-mac doesn't produce artifacts because of no data, then the task system-symbols-mac-upload-symbols is failing too.
So this patch aims to not fail the task in such a case.

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

--HG--
extra : moz-landing-system : lando
2020-01-14 12:25:46 +00:00
Csoregi Natalia 57eb78c63c Backed out changeset 5d0b75e5f795 (bug 1588538) for DUMP_SYMS bustage. CLOSED TREE 2020-01-14 13:53:54 +02:00
Gabriele Svelto e62e144c3c Bug 1588538 - Use the new Windows dump_syms tool to dump symbols in local builds r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D57094

--HG--
extra : moz-landing-system : lando
2020-01-14 10:08:52 +00:00
Marco Castelluccio 7643b85df7 Bug 1608146 - Disable testSymbolstore on code coverage builds. r=gsvelto
Differential Revision: https://phabricator.services.mozilla.com/D59707

--HG--
extra : moz-landing-system : lando
2020-01-13 18:06:44 +00:00
Gabriele Svelto dc8c1764a9 Bug 1607804 - Store ModuleSignatureInfo as stringified JSON instead of as an actual JSON object r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D59429

--HG--
extra : moz-landing-system : lando
2020-01-13 14:07:09 +00:00
Gabriele Svelto d0cceca41d Bug 1596737 - Properly remove additional minidumps when submitting a crash report r=mconley
Differential Revision: https://phabricator.services.mozilla.com/D58616

--HG--
extra : moz-landing-system : lando
2020-01-08 19:38:38 +00:00
David Teller 80532f722f Bug 1587722 - Move crash memory statistics to the parent process;r=gsvelto
Depends on D55933

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

--HG--
extra : moz-landing-system : lando
2020-01-07 10:07:51 +00:00
David Teller e8dd86b0f2 Bug 1587722 - Tests for memory statistics on crashes;r=gsvelto
Depends on D55457

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

--HG--
rename : toolkit/crashreporter/test/unit/test_oom_annotation_windows.js => toolkit/crashreporter/test/unit/test_oom_annotation.js
extra : moz-landing-system : lando
2020-01-07 10:07:23 +00:00
David Teller 208fe7f860 Bug 1587722 - Memory statistics for Linux crashes;r=gsvelto
Depends on D55111

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

--HG--
extra : moz-landing-system : lando
2020-01-07 10:06:55 +00:00
Brian Hackett cef4dfc259 Bug 1598951 Part 1 - Avoid connecting to parent when replaying remotely, r=gsvelto.
Depends on D58436

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

--HG--
extra : moz-landing-system : lando
2020-01-03 16:47:41 +00:00
Brian Hackett a29b8d6b25 Bug 1603856 Part 1 - Specify crashing task explicitly when requesting minidumps, r=gsvelto.
Differential Revision: https://phabricator.services.mozilla.com/D57200

--HG--
extra : moz-landing-system : lando
2020-01-03 16:47:47 +00:00
Dorel Luca 212a51bc09 Backed out 5 changesets (bug 1603856, bug 1606447, bug 1605584, bug 1598951) for build bustages. CLOSED TREE
Backed out changeset cf403935cf9b (bug 1598951)
Backed out changeset af6e8b6be574 (bug 1605584)
Backed out changeset fbfa92bd4ec8 (bug 1603856)
Backed out changeset a6d13450295d (bug 1603856)
Backed out changeset e0b049ff115f (bug 1606447)

--HG--
rename : toolkit/recordreplay/Recording.cpp => toolkit/recordreplay/File.cpp
rename : toolkit/recordreplay/Recording.h => toolkit/recordreplay/File.h
rename : toolkit/recordreplay/ExternalCall.cpp => toolkit/recordreplay/MiddlemanCall.cpp
rename : toolkit/recordreplay/ExternalCall.h => toolkit/recordreplay/MiddlemanCall.h
2020-01-03 18:43:40 +02:00
Brian Hackett 8dc52ffa8f Bug 1598951 Part 1 - Avoid connecting to parent when replaying remotely, r=gsvelto.
Depends on D58436

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

--HG--
extra : moz-landing-system : lando
2020-01-02 16:27:35 +00:00
Brian Hackett 3bb2a00122 Bug 1603856 Part 1 - Specify crashing task explicitly when requesting minidumps, r=gsvelto.
Differential Revision: https://phabricator.services.mozilla.com/D57200

--HG--
extra : moz-landing-system : lando
2019-12-31 16:10:29 +00:00
Arthur Iakab f26446fbad Backed out 3 changesets (bug 1587722) for causing xpcshell failures on test_crashreporter_crash.js CLOSED TREE
Backed out changeset 6aad53d9e447 (bug 1587722)
Backed out changeset 7d664635c1dc (bug 1587722)
Backed out changeset c9dbcfa6a938 (bug 1587722)

--HG--
rename : toolkit/crashreporter/test/unit/test_oom_annotation.js => toolkit/crashreporter/test/unit/test_oom_annotation_windows.js
2019-12-30 17:28:31 +02:00
David Teller 0cfbf029b3 Bug 1587722 - Move crash memory statistics to the parent process;r=gsvelto
Depends on D55933

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

--HG--
extra : moz-landing-system : lando
2019-12-30 09:39:24 +00:00
David Teller ea6ba5c884 Bug 1587722 - Tests for memory statistics on crashes;r=gsvelto
Depends on D55457

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

--HG--
rename : toolkit/crashreporter/test/unit/test_oom_annotation_windows.js => toolkit/crashreporter/test/unit/test_oom_annotation.js
extra : moz-landing-system : lando
2019-12-26 15:33:24 +00:00
David Teller dc16c9a990 Bug 1587722 - Memory statistics for Linux crashes;r=gsvelto
Depends on D55111

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

--HG--
extra : moz-landing-system : lando
2019-12-12 16:06:53 +00:00
Manish Giri 6807abcb49 Bug 1604606 - Remove redundant function declaration in cpp file. r=sylvestre
Depends on D58228

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

--HG--
extra : moz-landing-system : lando
2019-12-26 08:39:12 +00:00
Aaron Klotz 1771877250 Bug 1603714: Backed out changeset 44b14e9e661f as this information is no longer needed;
Differential Revision: https://phabricator.services.mozilla.com/D58046

--HG--
extra : moz-landing-system : lando
2019-12-20 21:06:32 +00:00
Gabriele Svelto ca8ae39a56 Bug 1544147 - Ensure orphaned crashes are properly notified to the rest of the system r=froydnj
When a content or plug-in process crashes too early we haven't initialized the
CrashReporterHost for that process. This will cause the crash to be orphaned,
i.e. to miss most of its crash annotations. We added code to finalize those
crashes in bug 1282776 so that we wouldn't miss them entirely. This ensured
that crash reports would have both their .dmp and .extra files but the patch
failed to modify the code that notified various listeners about the crash
report's presence.

This changes always send the crash ID alongside the crash notifications, even
for orphaned crashes, so that listeners such as the content crash handler or
the test harnesses can always find the minidump and .extra file. Additionally
orphaned crashes are recorded in the CrashManager and in telemetry just like
normal crashes.

This also re-enables dom/ipc/tests/process_error.xul which failed frequently
because of this bug.

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

--HG--
extra : moz-landing-system : lando
2019-12-20 17:50:45 +00:00
Aaron Klotz 0b62b4b5ac Bug 1603714: Add temporary, Nightly-only crash annotations to UntrustedModulesData and dependencies to determine failure location; r=handyman
Differential Revision: https://phabricator.services.mozilla.com/D57558

--HG--
extra : moz-landing-system : lando
2019-12-18 15:23:02 +00:00
inspiro 3769a834f6 Bug 1516279 - Add "Submit All" button to about:crashes r=gsvelto,fluent-reviewers
Bug 151627 - Add "Submit All" button to about:crashes to submit all pending crashes with single click.

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

--HG--
extra : moz-landing-system : lando
2019-12-17 15:33:09 +00:00
Kris Maglione 9853440599 Bug 1596918: Part 3b - Run code formatters on files changed by previous patch. r=mccr8,remote-protocol-reviewers,ato
Differential Revision: https://phabricator.services.mozilla.com/D53741

--HG--
extra : moz-landing-system : lando
2019-12-13 20:36:24 +00:00
Kris Maglione 94e3b0bd8d Bug 1596918: Part 3a - Scripted rewrite of most ContentTask.spawn calls to SpecialPowers.spawn calls. r=mccr8,remote-protocol-reviewers,ato
This is generally pretty straightforward, and rewrites nearly all calls. It
skips the ones that it can detect using frame script globals like
`sendAsyncMessage`, though.

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

--HG--
extra : moz-landing-system : lando
2019-12-13 20:36:16 +00:00
shindli 91924fedc7 Backed out 9 changesets (bug 1596918) for causing mochitest permafailures in toolkit/content/tests/chrome/test_findbar_events.xhtml CLOSED TREE
Backed out changeset 45a1c42118f2 (bug 1596918)
Backed out changeset db09910ffa56 (bug 1596918)
Backed out changeset 5c9d9f141c10 (bug 1596918)
Backed out changeset 6a135670d603 (bug 1596918)
Backed out changeset 3a0184e0df72 (bug 1596918)
Backed out changeset 2f0036486823 (bug 1596918)
Backed out changeset a770c6d08d52 (bug 1596918)
Backed out changeset ef062eb7a6ee (bug 1596918)
Backed out changeset a6ea596e98db (bug 1596918)
2019-12-11 03:09:26 +02:00
Kris Maglione 3ca78ce8e3 Bug 1596918: Part 3b - Run code formatters on files changed by previous patch. r=mccr8,remote-protocol-reviewers,ato
Differential Revision: https://phabricator.services.mozilla.com/D53741

--HG--
extra : moz-landing-system : lando
2019-12-10 23:07:21 +00:00
Kris Maglione 16a9b29848 Bug 1596918: Part 3a - Scripted rewrite of most ContentTask.spawn calls to SpecialPowers.spawn calls. r=mccr8,remote-protocol-reviewers,ato
This is generally pretty straightforward, and rewrites nearly all calls. It
skips the ones that it can detect using frame script globals like
`sendAsyncMessage`, though.

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

--HG--
extra : moz-landing-system : lando
2019-12-10 23:07:13 +00:00
Noemi Erli 7c58b57c69 Backed out 2 changesets (bug 1587722) for causing Linux browser-chrome failures CLOSED TREE
Backed out changeset c8e7456abc5b (bug 1587722)
Backed out changeset 19ffd117ebbd (bug 1587722)

--HG--
rename : toolkit/crashreporter/test/unit/test_oom_annotation.js => toolkit/crashreporter/test/unit/test_oom_annotation_windows.js
2019-12-10 13:06:50 +02:00
David Teller ff689ffe19 Bug 1587722 - Tests for memory statistics on crashes;r=gsvelto
Depends on D55457

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

--HG--
rename : toolkit/crashreporter/test/unit/test_oom_annotation_windows.js => toolkit/crashreporter/test/unit/test_oom_annotation.js
extra : moz-landing-system : lando
2019-12-10 08:44:26 +00:00
David Teller 5175676550 Bug 1587722 - Memory statistics for Linux crashes;r=gsvelto
Depends on D55111

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

--HG--
extra : moz-landing-system : lando
2019-12-10 10:11:09 +00:00
Noemi Erli 82d41a33b2 Backed out 9 changesets (bug 1596918) for causing multiple browser-chrome failures
Backed out changeset 415007efd8c9 (bug 1596918)
Backed out changeset 011eb5ce927b (bug 1596918)
Backed out changeset e5fd3ee22ea1 (bug 1596918)
Backed out changeset 0bca4de31d40 (bug 1596918)
Backed out changeset 11ec4393f23d (bug 1596918)
Backed out changeset c5404a7c286d (bug 1596918)
Backed out changeset 7e9304405a46 (bug 1596918)
Backed out changeset fa0f0aeabf99 (bug 1596918)
Backed out changeset de196b077000 (bug 1596918)
2019-12-07 22:26:43 +02:00
Kris Maglione fa3556c3fc Bug 1596918: Part 3b - Run code formatters on files changed by previous patch. r=mccr8,remote-protocol-reviewers,ato
Differential Revision: https://phabricator.services.mozilla.com/D53741

--HG--
extra : moz-landing-system : lando
2019-12-07 18:44:34 +00:00
Kris Maglione 910eab35d2 Bug 1596918: Part 3a - Scripted rewrite of most ContentTask.spawn calls to SpecialPowers.spawn calls. r=mccr8,remote-protocol-reviewers,ato
This is generally pretty straightforward, and rewrites nearly all calls. It
skips the ones that it can detect using frame script globals like
`sendAsyncMessage`, though.

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

--HG--
extra : moz-landing-system : lando
2019-12-07 19:11:58 +00:00
Daniel Varga 84a601a6d4 Backed out 17 changesets (bug 1596918) for multiple browser-chrome and dev-tools failures. On a CLOSED TREE
Backed out changeset ab87d2c1afae (bug 1596918)
Backed out changeset 775f3b06a687 (bug 1596918)
Backed out changeset 67cc63ef5d7f (bug 1596918)
Backed out changeset 7d290bcd2067 (bug 1596918)
Backed out changeset 048db9f4db7c (bug 1596918)
Backed out changeset 96a79d2ba614 (bug 1596918)
Backed out changeset be770d112dd8 (bug 1596918)
Backed out changeset 302c8ab8391c (bug 1596918)
Backed out changeset 44ef8f20732e (bug 1596918)
Backed out changeset 38c11ebfb8ff (bug 1596918)
Backed out changeset b586fc081374 (bug 1596918)
Backed out changeset 12283166716f (bug 1596918)
Backed out changeset 99b0421015d8 (bug 1596918)
Backed out changeset 97ec49dbbbf3 (bug 1596918)
Backed out changeset ec79478f58f1 (bug 1596918)
Backed out changeset c6d356833bb8 (bug 1596918)
Backed out changeset 5ef6026806c8 (bug 1596918)
2019-12-07 03:12:07 +02:00
Kris Maglione b5238224ba Bug 1596918: Part 3b - Run code formatters on files changed by previous patch. r=mccr8,remote-protocol-reviewers,ato
Differential Revision: https://phabricator.services.mozilla.com/D53741

--HG--
extra : moz-landing-system : lando
2019-12-06 22:14:22 +00:00
Kris Maglione 20da940e14 Bug 1596918: Part 3a - Scripted rewrite of most ContentTask.spawn calls to SpecialPowers.spawn calls. r=mccr8,remote-protocol-reviewers,ato
This is generally pretty straightforward, and rewrites nearly all calls. It
skips the ones that it can detect using frame script globals like
`sendAsyncMessage`, though.

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

--HG--
extra : moz-landing-system : lando
2019-12-06 22:14:14 +00:00
Gabriele Svelto 4e2db3a3b5 Bug 1280561 - Wait for crashes to be registered by the crash manager before submitting them r=mconley
We wait for the crash to be recorded in the crash manager only for the
submission that will also be recorded. This is required because those crashes
are either content or plug-in crashes and the crash manager is aware of them.
Crash reports submitted from about:crashes are not recorded because they are
not known to the crash manager and thus we shouldn't wait for them.

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

--HG--
extra : moz-landing-system : lando
2019-12-06 17:56:46 +00:00
Gabriele Svelto 5dc21d568c Bug 1600545 - Remove useless inclusions of header files generated from IDL files in modules/, netwerk/, parser/, security/, startupcache/, storage/, toolkit/, tools/, uriloader/, widget/, xpcom/ and xpfe/ r=Ehsan
The inclusions were removed with the following very crude script and the
resulting breakage was fixed up by hand. The manual fixups did either
revert the changes done by the script, replace a generic header with a more
specific one or replace a header with a forward declaration.

find . -name "*.idl" | grep -v web-platform | grep -v third_party | while read path; do
    interfaces=$(grep "^\(class\|interface\).*:.*" "$path" | cut -d' ' -f2)
    if [ -n "$interfaces" ]; then
        if [[ "$interfaces" == *$'\n'* ]]; then
          regexp="\("
          for i in $interfaces; do regexp="$regexp$i\|"; done
          regexp="${regexp%%\\\|}\)"
        else
          regexp="$interfaces"
        fi
        interface=$(basename "$path")
        rg -l "#include.*${interface%%.idl}.h" . | while read path2; do
            hits=$(grep -v "#include.*${interface%%.idl}.h" "$path2" | grep -c "$regexp" )
            if [ $hits -eq 0 ]; then
                echo "Removing ${interface} from ${path2}"
                grep -v "#include.*${interface%%.idl}.h" "$path2" > "$path2".tmp
                mv -f "$path2".tmp "$path2"
            fi
        done
    fi
done

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

--HG--
extra : moz-landing-system : lando
2019-12-06 09:17:57 +00:00
David Teller 43bf0f8688 Bug 1587721 - Memory statistics for crashes under macOS;r=gsvelto
Differential Revision: https://phabricator.services.mozilla.com/D55111

--HG--
extra : moz-landing-system : lando
2019-12-03 11:53:45 +00:00
Ciure Andrei 313f24f785 Backed out changeset 71af6290f436 (bug 1587721) for causing nsExceptionHandler.cpp bustages CLOSED TREE 2019-12-02 17:45:17 +02:00
David Teller b533e8f9a7 Bug 1587721 - Memory statistics for crashes under macOS;r=gsvelto
Differential Revision: https://phabricator.services.mozilla.com/D55111

--HG--
extra : moz-landing-system : lando
2019-12-02 15:21:14 +00:00
Gabriele Svelto d0e4d2c6c2 Bug 1420363 - Write crash annotations as JSON r=froydnj,agi
This patch rolls up all the required changes for this purpose. Since the
whole crash reporting flow must understand the new format it's not possible
to land this as separate patches as individually they would be broken. This
patch includes the following changes:

* Changes to the crash reporting machinery to write out annotations as JSON,
  these includes changes to the DLL blocklist code that must be run at crash
  time.
* Modifications to the crash reporter client so that it can read and
  submit the new format; this includes platform-specific changes to the
  Breakpad libraries it uses for submitting crashes.
* Modifications to the minidump-analyzer to understand and process the new
  format correctly.
* Modifications to the crash manager to understand and process the new format
  correctly.
* Modifications to GeckoView's crash handler to understand and submit the
  new format correctly.
* Added new tests to cover the new format and modified existing ones to
  accomodate the new one.

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

--HG--
extra : moz-landing-system : lando
2019-12-02 13:18:35 +00:00
qiaopengcheng 5209b0b401 Bug 1403893 - Make Breakpad print out the MIPS floating point registers correctly. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D54730

--HG--
extra : moz-landing-system : lando
2019-11-26 14:52:55 +00:00
Gabriele Svelto f8581fc656 Bug 1599449 - Add bug 1371390 to the breakpad patches we apply locally to prevent updates from clobbering it r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D54728

--HG--
extra : moz-landing-system : lando
2019-11-26 14:42:24 +00:00
kriswright 10c317e37e Bug 1593847 - Increase the buffer size for reading in /proc/cpuinfo entries r=gsvelto
On some linux machines, the cpu flags exceed the max buffer size of 512 characters. Doubling the buffer size makes room for these flags, so the minidump writer doesn't exit after reading the first `flags` entry, which falsely interprets the highest cpu id as 0.

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

--HG--
extra : moz-landing-system : lando
2019-11-25 23:58:28 +00:00
Arthur Iakab 4d19458ecd Backed out changeset 92fa0186cb81 (bug 1576748) for build bustage on symbolstore.py CLOSED TREE 2019-11-25 16:55:58 +02:00
Nathan Froyd e513689df3 Bug 1576748 - make symbolstore.py complain loudly if expected output isn't found; r=nalexander
This change surfaces errors faster, and ensures that we don't silently
end up with empty crashreporter symbols if `dump_syms` can't run for
some reason.

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

--HG--
extra : moz-landing-system : lando
2019-11-25 14:13:07 +00:00
Gabriele Svelto 6157086d55 Bug 1598288 - Modernize code still using deprecated jsoncpp classes r=daoshengmu,chutten
Differential Revision: https://phabricator.services.mozilla.com/D54124

--HG--
extra : moz-landing-system : lando
2019-11-22 18:03:28 +00:00
Steven Michaud ed48f3e76f Bug 1371390 - Pay attention to macho images' cpusubtype when creating minidumps (revised). r=gsvelto
Differential Revision: https://phabricator.services.mozilla.com/D53820

--HG--
extra : moz-landing-system : lando
2019-11-19 21:42:37 +00:00
Marco Castelluccio 94c95262e2 Bug 1593230 - Retry uploading symbols on 429 too. r=tomprince
Differential Revision: https://phabricator.services.mozilla.com/D53715

--HG--
extra : moz-landing-system : lando
2019-11-19 19:14:03 +00:00
Andreea Pavel da1f003596 Backed out changeset da61ebbdb3a5 (bug 1371390) as requested by :smichaud a=backout 2019-11-17 18:22:54 +02:00
Razvan Maries b90bde90fc Backed out changeset 1603f5abc56e (bug 1420363) for perma fails on test_busy_hang.xul. CLOSED TREE
--HG--
extra : rebase_source : 02c0d2f9f92f0a01ef57e4f9b38a008f6bc0eb50
2019-11-16 13:00:43 +02:00
Gabriele Svelto fb2b45f492 Bug 1420363 - Write crash annotations as JSON r=froydnj,agi
This patch rolls up all the required changes for this purpose. Since the
whole crash reporting flow must understand the new format it's not possible
to land this as separate patches as individually they would be broken. This
patch includes the following changes:

* Changes to the crash reporting machinery to write out annotations as JSON,
  these includes changes to the DLL blocklist code that must be run at crash
  time.
* Modifications to the crash reporter client so that it can read and
  submit the new format; this includes platform-specific changes to the
  Breakpad libraries it uses for submitting crashes.
* Modifications to the minidump-analyzer to understand and process the new
  format correctly.
* Modifications to the crash manager to understand and process the new format
  correctly.
* Modifications to GeckoView's crash handler to understand and submit the
  new format correctly.
* Added new tests to cover the new format and modified existing ones to
  accomodate the new one.

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

--HG--
extra : moz-landing-system : lando
2019-11-16 08:29:07 +00:00
Steven Michaud ce2c616fee Bug 1371390 - Pay attention to macho images' cpusubtype when creating minidumps. r=gsvelto
Differential Revision: https://phabricator.services.mozilla.com/D53211

--HG--
extra : moz-landing-system : lando
2019-11-15 15:49:30 +00:00
Gabriele Svelto 6b843a1e9c Bug 838896 - Increase the crash reporter client comment size limit to 10000 characters; r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D53154

--HG--
extra : moz-landing-system : lando
2019-11-15 13:49:55 +00:00
Gabriele Svelto 6ff1e8b815 Bug 1516367 - Move the minidump-analyzer out of the crash reporter application bundle r=spohl,dmajor
The minidump-analyzer tool was originally conceived to be used from the crash
report client and as such was installed in the crash reporter client
application bundle on macOS. It was later adapted to work from Firefox itself
but this caused linking problems when invoked from the Firefox app bundle.
This patch moves the minidump-analyzer into the Firefox app bundle and adapts
the relevant code to find it there.

The minidump-analyzer was also not signed like the rest of our executables and
this patch addresses that issue too.

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

--HG--
extra : moz-landing-system : lando
2019-11-14 21:11:59 +00:00
Nicholas Nethercote 928e9e1d00 Bug 1594598 - Use uint8_t* to avoid a bunch of casts. r=glandium
Currently the PHC code uses char* and uintptr_t in various address
computations. This patch changes it to use uint8_t* instead, which is clearer
than char* and avoids the need for various casts.

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

--HG--
extra : moz-landing-system : lando
2019-11-06 23:56:48 +00:00
Gabriele Svelto 96c0bb0ae5 Bug 1593972 - Make the update-breakpad.sh script work with python3 r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D51802

--HG--
extra : moz-landing-system : lando
2019-11-06 15:56:27 +00:00
Gabriele Svelto 07eecc7380 Bug 1593966 - Add minimal support for the DW_FORM_GNU_ref_alt and DW_FORM_GNU_strp_alt operand forms in dump_syms r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D51801

--HG--
extra : moz-landing-system : lando
2019-11-05 17:45:58 +00:00
Noemi Erli 35873cfc31 Backed out changeset 9fccb38453a4 (bug 1586236) for causing mass devtools failures 2019-11-03 05:17:02 +02:00
Gabriele Svelto f34ffda7e2 Bug 1586236 - Use memory resource notifications to detect low memory scenarios on Windows; r=dmajor
This patch uses the low memory resource notification facility to detect
scenarios where physical memory is running low without polling. This is a
significant change compared to the previous behavior which measured both
available virtual memory (only on 32-bit builds) and available commit space.

Since we're not trying to avoid OOMs anymore we don't save memory reports
anymore when hitting a low-memory condition.

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

--HG--
extra : moz-landing-system : lando
2019-11-01 23:08:59 +00:00
Gurzau Raul ce19d94b67 Backed out changeset 60cccadbeaf0 (bug 1586236) for failures at test_memoryReporters.xul on a CLOSED TREE. 2019-11-01 10:21:05 +02:00
Gabriele Svelto 0d648247a1 Bug 1586236 - Use memory resource notifications to detect low memory scenarios on Windows; r=dmajor
This patch uses the low memory resource notification facility to detect
scenarios where physical memory is running low without polling. This is a
significant change compared to the previous behavior which measured both
available virtual memory (only on 32-bit builds) and available commit space.

Since we're not trying to avoid OOMs anymore we don't save memory reports
anymore when hitting a low-memory condition.

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

--HG--
extra : moz-landing-system : lando
2019-10-31 13:55:42 +00:00
Ricky Stewart c010710916 Bug 1586358 - Replace existing instances of GENERATED_FILES with references to the GeneratedFile template r=firefox-build-system-reviewers,mshal
(Same content as bad revision https://phabricator.services.mozilla.com/D48230, but with a very small change to config/external/icu/data/moz.build to fix the build breakage.)

Try push: https://treeherder.mozilla.org/#/jobs?repo=try&revision=833f6a69fcac689488a640b43e8e0bdaa086a56c

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

--HG--
extra : moz-landing-system : lando
2019-10-07 21:15:19 +00:00
Daniel Varga 052ef806b5 Backed out changeset 8d95f2c8867b (bug 1586358) for build bustage with FATAL ERROR PROCESSING MOZBUILD FILE. On a CLOSED TREE
--HG--
extra : rebase_source : 325fbad2455afc7f693087e75fa57dba79f4d86b
2019-10-07 20:22:08 +03:00
Ricky Stewart 940d91af38 Bug 1586358 - Replace existing instances of GENERATED_FILES with references to the GeneratedFile template r=nalexander
This patch doesn't remove all references to GENERATED_FILES, but does remove most of them, leaving only those which can't be trivially translated to the new template.

Try push: https://treeherder.mozilla.org/#/jobs?repo=try&revision=e4a25230c3992b9c5519ceb351fb37f6b2bf605e

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

--HG--
extra : moz-landing-system : lando
2019-10-07 15:31:05 +00:00
Calixte Denizet 1ed4302759 Bug 1585993 - Resolve symlinks when generating file paths for breakpad symbol file r=gsvelto
Some paths contain symlinks and Python normpath doesn't resolve them.
So it results on having wrong paths in generated breakpad file.

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

--HG--
extra : moz-landing-system : lando
2019-10-03 19:32:02 +00:00
Jan Varga ae7651951f Bug 1584323 - Add more object properties to IndexedDBShutdownTimeout and LocalStorageShutdownTimeout crash annotations; r=asuth, dr=chutten
Differential Revision: https://phabricator.services.mozilla.com/D47341

--HG--
extra : moz-landing-system : lando
2019-10-02 04:28:23 +00:00
Gabriele Svelto 549248a28a Bug 1585305 - Add bug 1524194 to the breakpad patches we apply locally to prevent updates from clobbering it r=sylvestre
Differential Revision: https://phabricator.services.mozilla.com/D47766

--HG--
extra : moz-landing-system : lando
2019-10-01 17:47:53 +00:00
Anny Gakhokidze f1c694e18f Bug 1582531 - Update fission annotations for skipped tests that are now passing succesfully, r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D47347

--HG--
extra : moz-landing-system : lando
2019-09-27 14:25:10 +00:00
Christoph Kerschbaumer 30285b4a58 Bug 1499354: Add object-src 'none' to the CSP of all about: pages. r=freddyb
Differential Revision: https://phabricator.services.mozilla.com/D46950

--HG--
extra : moz-landing-system : lando
2019-09-26 16:22:41 +00:00
Aaron Klotz fccd6eb9ba Bug 1542830: Part 4 - Modify mozglue to use new untrusted modules interfaces; r=mhowell
* At this point our DLL blocking infra is complicated enough that I decided to
  bite the bullet and move all of this code out of `mozglue/build` and into its
  own subdirectory, `mozglue/dllservices`.
* We delete the original `UntrustedDllsHandler` code which is now obsolete.
* We implement mozglue's `LoaderObserver`:
** When this observer registers itself with the launcher process API, it
   receives a vector containing all saved records of loaded DLLs that happened
   until that moment.
** This code handles profiler labels and stackwalking suppression.
** Once a load has completed, we either pass the load on to XUL for further
   processing, or save it for later if XUL is not initialized yet.
* mozglue has its own `ModuleLoadFrame` implementation for the legacy blocklist.
* `DllServicesBase` is updated to support the new interfaces.
* We implement `FallbackLoaderAPI` for `plugin-container`, `xpcshell`, and
  any other non-`firefox` processes that do not have a launcher process
  providing a loader API.
* We add some wide to UTF8 conversion functions.

Depends on D43157

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

--HG--
rename : mozglue/build/Authenticode.cpp => mozglue/dllservices/Authenticode.cpp
rename : mozglue/build/Authenticode.h => mozglue/dllservices/Authenticode.h
rename : browser/app/winlauncher/freestanding/LoaderAPIInterfaces.h => mozglue/dllservices/LoaderAPIInterfaces.h
rename : browser/app/winlauncher/freestanding/ModuleLoadInfo.h => mozglue/dllservices/ModuleLoadInfo.h
rename : browser/app/winlauncher/NtLoaderAPI.h => mozglue/dllservices/NtLoaderAPI.h
rename : mozglue/build/WindowsDllBlocklist.cpp => mozglue/dllservices/WindowsDllBlocklist.cpp
rename : mozglue/build/WindowsDllBlocklist.h => mozglue/dllservices/WindowsDllBlocklist.h
rename : mozglue/build/WindowsDllBlocklistCommon.h => mozglue/dllservices/WindowsDllBlocklistCommon.h
rename : mozglue/build/WindowsDllBlocklistDefs.in => mozglue/dllservices/WindowsDllBlocklistDefs.in
rename : mozglue/build/WindowsDllServices.h => mozglue/dllservices/WindowsDllServices.h
rename : mozglue/build/gen_dll_blocklist_defs.py => mozglue/dllservices/gen_dll_blocklist_defs.py
rename : mozglue/build/moz.build => mozglue/dllservices/moz.build
rename : mozglue/build/MozglueUtils.h => mozglue/misc/WinUtils.h
extra : moz-landing-system : lando
2019-09-23 20:18:41 +00:00
Brindusan Cristian 125c934a04 Backed out 8 changesets (bug 1542830) for causing Nightly bustages. a=backout
Backed out changeset 6fcb417f7ff4 (bug 1542830)
Backed out changeset 1aa253e6604a (bug 1542830)
Backed out changeset 73ec288886cd (bug 1542830)
Backed out changeset 84b903e60dc9 (bug 1542830)
Backed out changeset 8e2da9ff5f5a (bug 1542830)
Backed out changeset c4e547a6a039 (bug 1542830)
Backed out changeset 919f1af7c135 (bug 1542830)
Backed out changeset da7e775c4051 (bug 1542830)

--HG--
rename : browser/app/winlauncher/freestanding/DllBlocklist.cpp => browser/app/winlauncher/DllBlocklistWin.cpp
rename : browser/app/winlauncher/freestanding/DllBlocklist.h => browser/app/winlauncher/DllBlocklistWin.h
rename : mozglue/dllservices/Authenticode.cpp => mozglue/build/Authenticode.cpp
rename : mozglue/dllservices/Authenticode.h => mozglue/build/Authenticode.h
rename : mozglue/misc/WinUtils.h => mozglue/build/MozglueUtils.h
rename : mozglue/dllservices/WindowsDllBlocklist.cpp => mozglue/build/WindowsDllBlocklist.cpp
rename : mozglue/dllservices/WindowsDllBlocklist.h => mozglue/build/WindowsDllBlocklist.h
rename : mozglue/dllservices/WindowsDllBlocklistCommon.h => mozglue/build/WindowsDllBlocklistCommon.h
rename : mozglue/dllservices/WindowsDllBlocklistDefs.in => mozglue/build/WindowsDllBlocklistDefs.in
rename : mozglue/dllservices/WindowsDllServices.h => mozglue/build/WindowsDllServices.h
rename : mozglue/dllservices/gen_dll_blocklist_defs.py => mozglue/build/gen_dll_blocklist_defs.py
rename : toolkit/components/telemetry/docs/data/third-party-modules-ping.rst => toolkit/components/telemetry/docs/data/untrusted-modules-ping.rst
rename : toolkit/components/telemetry/tests/unit/test_ThirdPartyModulesPing.js => toolkit/components/telemetry/tests/unit/test_UntrustedModulesPing.js
rename : toolkit/xre/UntrustedModulesProcessor.cpp => toolkit/xre/ModuleEvaluator_windows.cpp
rename : toolkit/xre/UntrustedModulesProcessor.h => toolkit/xre/ModuleEvaluator_windows.h
rename : toolkit/xre/ModuleVersionInfo.cpp => toolkit/xre/ModuleVersionInfo_windows.cpp
rename : toolkit/xre/ModuleVersionInfo.h => toolkit/xre/ModuleVersionInfo_windows.h
2019-09-22 00:01:01 +03:00
Aaron Klotz 8d1be668f6 Bug 1542830: Part 4 - Modify mozglue to use new untrusted modules interfaces; r=mhowell
* At this point our DLL blocking infra is complicated enough that I decided to
  bite the bullet and move all of this code out of `mozglue/build` and into its
  own subdirectory, `mozglue/dllservices`.
* We delete the original `UntrustedDllsHandler` code which is now obsolete.
* We implement mozglue's `LoaderObserver`:
** When this observer registers itself with the launcher process API, it
   receives a vector containing all saved records of loaded DLLs that happened
   until that moment.
** This code handles profiler labels and stackwalking suppression.
** Once a load has completed, we either pass the load on to XUL for further
   processing, or save it for later if XUL is not initialized yet.
* mozglue has its own `ModuleLoadFrame` implementation for the legacy blocklist.
* `DllServicesBase` is updated to support the new interfaces.
* We implement `FallbackLoaderAPI` for `plugin-container`, `xpcshell`, and
  any other non-`firefox` processes that do not have a launcher process
  providing a loader API.
* We add some wide to UTF8 conversion functions.

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

--HG--
rename : mozglue/build/Authenticode.cpp => mozglue/dllservices/Authenticode.cpp
rename : mozglue/build/Authenticode.h => mozglue/dllservices/Authenticode.h
rename : mozglue/build/WindowsDllBlocklist.cpp => mozglue/dllservices/WindowsDllBlocklist.cpp
rename : mozglue/build/WindowsDllBlocklist.h => mozglue/dllservices/WindowsDllBlocklist.h
rename : mozglue/build/WindowsDllBlocklistCommon.h => mozglue/dllservices/WindowsDllBlocklistCommon.h
rename : mozglue/build/WindowsDllBlocklistDefs.in => mozglue/dllservices/WindowsDllBlocklistDefs.in
rename : mozglue/build/WindowsDllServices.h => mozglue/dllservices/WindowsDllServices.h
rename : mozglue/build/gen_dll_blocklist_defs.py => mozglue/dllservices/gen_dll_blocklist_defs.py
rename : mozglue/build/moz.build => mozglue/dllservices/moz.build
rename : mozglue/build/MozglueUtils.h => mozglue/misc/WinUtils.h
extra : moz-landing-system : lando
2019-09-20 19:43:33 +00:00
Ciure Andrei 7db4ad5d80 Backed out 8 changesets (bug 1542830) for causing spidermonkey bustages CLOSED TREE
Backed out changeset b9f7fc8d0172 (bug 1542830)
Backed out changeset b85f58fd5bbd (bug 1542830)
Backed out changeset 0a9169ab2623 (bug 1542830)
Backed out changeset 39a7c05d54ef (bug 1542830)
Backed out changeset 7a3cbd2f59f0 (bug 1542830)
Backed out changeset 268530552281 (bug 1542830)
Backed out changeset df658ffb8599 (bug 1542830)
Backed out changeset e7bef6486a38 (bug 1542830)

--HG--
rename : browser/app/winlauncher/freestanding/DllBlocklist.cpp => browser/app/winlauncher/DllBlocklistWin.cpp
rename : browser/app/winlauncher/freestanding/DllBlocklist.h => browser/app/winlauncher/DllBlocklistWin.h
rename : mozglue/dllservices/Authenticode.cpp => mozglue/build/Authenticode.cpp
rename : mozglue/dllservices/Authenticode.h => mozglue/build/Authenticode.h
rename : mozglue/misc/WinUtils.h => mozglue/build/MozglueUtils.h
rename : mozglue/dllservices/WindowsDllBlocklist.cpp => mozglue/build/WindowsDllBlocklist.cpp
rename : mozglue/dllservices/WindowsDllBlocklist.h => mozglue/build/WindowsDllBlocklist.h
rename : mozglue/dllservices/WindowsDllBlocklistCommon.h => mozglue/build/WindowsDllBlocklistCommon.h
rename : mozglue/dllservices/WindowsDllBlocklistDefs.in => mozglue/build/WindowsDllBlocklistDefs.in
rename : mozglue/dllservices/WindowsDllServices.h => mozglue/build/WindowsDllServices.h
rename : mozglue/dllservices/gen_dll_blocklist_defs.py => mozglue/build/gen_dll_blocklist_defs.py
rename : toolkit/components/telemetry/docs/data/third-party-modules-ping.rst => toolkit/components/telemetry/docs/data/untrusted-modules-ping.rst
rename : toolkit/components/telemetry/tests/unit/test_ThirdPartyModulesPing.js => toolkit/components/telemetry/tests/unit/test_UntrustedModulesPing.js
rename : toolkit/xre/UntrustedModulesProcessor.cpp => toolkit/xre/ModuleEvaluator_windows.cpp
rename : toolkit/xre/UntrustedModulesProcessor.h => toolkit/xre/ModuleEvaluator_windows.h
rename : toolkit/xre/ModuleVersionInfo.cpp => toolkit/xre/ModuleVersionInfo_windows.cpp
rename : toolkit/xre/ModuleVersionInfo.h => toolkit/xre/ModuleVersionInfo_windows.h
2019-09-20 21:21:39 +03:00
Aaron Klotz 12843d81e9 Bug 1542830: Part 4 - Modify mozglue to use new untrusted modules interfaces; r=mhowell
* At this point our DLL blocking infra is complicated enough that I decided to
  bite the bullet and move all of this code out of `mozglue/build` and into its
  own subdirectory, `mozglue/dllservices`.
* We delete the original `UntrustedDllsHandler` code which is now obsolete.
* We implement mozglue's `LoaderObserver`:
** When this observer registers itself with the launcher process API, it
   receives a vector containing all saved records of loaded DLLs that happened
   until that moment.
** This code handles profiler labels and stackwalking suppression.
** Once a load has completed, we either pass the load on to XUL for further
   processing, or save it for later if XUL is not initialized yet.
* mozglue has its own `ModuleLoadFrame` implementation for the legacy blocklist.
* `DllServicesBase` is updated to support the new interfaces.
* We implement `FallbackLoaderAPI` for `plugin-container`, `xpcshell`, and
  any other non-`firefox` processes that do not have a launcher process
  providing a loader API.
* We add some wide to UTF8 conversion functions.

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

--HG--
rename : mozglue/build/Authenticode.cpp => mozglue/dllservices/Authenticode.cpp
rename : mozglue/build/Authenticode.h => mozglue/dllservices/Authenticode.h
rename : mozglue/build/WindowsDllBlocklist.cpp => mozglue/dllservices/WindowsDllBlocklist.cpp
rename : mozglue/build/WindowsDllBlocklist.h => mozglue/dllservices/WindowsDllBlocklist.h
rename : mozglue/build/WindowsDllBlocklistCommon.h => mozglue/dllservices/WindowsDllBlocklistCommon.h
rename : mozglue/build/WindowsDllBlocklistDefs.in => mozglue/dllservices/WindowsDllBlocklistDefs.in
rename : mozglue/build/WindowsDllServices.h => mozglue/dllservices/WindowsDllServices.h
rename : mozglue/build/gen_dll_blocklist_defs.py => mozglue/dllservices/gen_dll_blocklist_defs.py
rename : mozglue/build/moz.build => mozglue/dllservices/moz.build
rename : mozglue/build/MozglueUtils.h => mozglue/misc/WinUtils.h
extra : moz-landing-system : lando
2019-09-20 17:00:14 +00:00
Andreea Pavel 31d9596a28 Backed out 8 changesets (bug 1542830) for gecko decision failure on a CLOSED TREE
DONTBUILD

Backed out changeset 4f72161be496 (bug 1542830)
Backed out changeset 7ee12138946d (bug 1542830)
Backed out changeset 9e90ee4981c6 (bug 1542830)
Backed out changeset 363039c98534 (bug 1542830)
Backed out changeset 70ffff30551a (bug 1542830)
Backed out changeset c25b7bf354d9 (bug 1542830)
Backed out changeset d156dc595b69 (bug 1542830)
Backed out changeset 9f5dbd1b2959 (bug 1542830)

--HG--
rename : browser/app/winlauncher/freestanding/DllBlocklist.cpp => browser/app/winlauncher/DllBlocklistWin.cpp
rename : browser/app/winlauncher/freestanding/DllBlocklist.h => browser/app/winlauncher/DllBlocklistWin.h
rename : mozglue/dllservices/Authenticode.cpp => mozglue/build/Authenticode.cpp
rename : mozglue/dllservices/Authenticode.h => mozglue/build/Authenticode.h
rename : mozglue/misc/WinUtils.h => mozglue/build/MozglueUtils.h
rename : mozglue/dllservices/WindowsDllBlocklist.cpp => mozglue/build/WindowsDllBlocklist.cpp
rename : mozglue/dllservices/WindowsDllBlocklist.h => mozglue/build/WindowsDllBlocklist.h
rename : mozglue/dllservices/WindowsDllBlocklistCommon.h => mozglue/build/WindowsDllBlocklistCommon.h
rename : mozglue/dllservices/WindowsDllBlocklistDefs.in => mozglue/build/WindowsDllBlocklistDefs.in
rename : mozglue/dllservices/WindowsDllServices.h => mozglue/build/WindowsDllServices.h
rename : mozglue/dllservices/gen_dll_blocklist_defs.py => mozglue/build/gen_dll_blocklist_defs.py
rename : toolkit/components/telemetry/docs/data/third-party-modules-ping.rst => toolkit/components/telemetry/docs/data/untrusted-modules-ping.rst
rename : toolkit/components/telemetry/tests/unit/test_ThirdPartyModulesPing.js => toolkit/components/telemetry/tests/unit/test_UntrustedModulesPing.js
rename : toolkit/xre/UntrustedModulesProcessor.cpp => toolkit/xre/ModuleEvaluator_windows.cpp
rename : toolkit/xre/UntrustedModulesProcessor.h => toolkit/xre/ModuleEvaluator_windows.h
rename : toolkit/xre/ModuleVersionInfo.cpp => toolkit/xre/ModuleVersionInfo_windows.cpp
rename : toolkit/xre/ModuleVersionInfo.h => toolkit/xre/ModuleVersionInfo_windows.h
2019-09-20 19:49:27 +03:00
Aaron Klotz 6c7b43b9c8 Bug 1542830: Part 4 - Modify mozglue to use new untrusted modules interfaces; r=mhowell
* At this point our DLL blocking infra is complicated enough that I decided to
  bite the bullet and move all of this code out of `mozglue/build` and into its
  own subdirectory, `mozglue/dllservices`.
* We delete the original `UntrustedDllsHandler` code which is now obsolete.
* We implement mozglue's `LoaderObserver`:
** When this observer registers itself with the launcher process API, it
   receives a vector containing all saved records of loaded DLLs that happened
   until that moment.
** This code handles profiler labels and stackwalking suppression.
** Once a load has completed, we either pass the load on to XUL for further
   processing, or save it for later if XUL is not initialized yet.
* mozglue has its own `ModuleLoadFrame` implementation for the legacy blocklist.
* `DllServicesBase` is updated to support the new interfaces.
* We implement `FallbackLoaderAPI` for `plugin-container`, `xpcshell`, and
  any other non-`firefox` processes that do not have a launcher process
  providing a loader API.
* We add some wide to UTF8 conversion functions.

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

--HG--
rename : mozglue/build/Authenticode.cpp => mozglue/dllservices/Authenticode.cpp
rename : mozglue/build/Authenticode.h => mozglue/dllservices/Authenticode.h
rename : mozglue/build/WindowsDllBlocklist.cpp => mozglue/dllservices/WindowsDllBlocklist.cpp
rename : mozglue/build/WindowsDllBlocklist.h => mozglue/dllservices/WindowsDllBlocklist.h
rename : mozglue/build/WindowsDllBlocklistCommon.h => mozglue/dllservices/WindowsDllBlocklistCommon.h
rename : mozglue/build/WindowsDllBlocklistDefs.in => mozglue/dllservices/WindowsDllBlocklistDefs.in
rename : mozglue/build/WindowsDllServices.h => mozglue/dllservices/WindowsDllServices.h
rename : mozglue/build/gen_dll_blocklist_defs.py => mozglue/dllservices/gen_dll_blocklist_defs.py
rename : mozglue/build/moz.build => mozglue/dllservices/moz.build
rename : mozglue/build/MozglueUtils.h => mozglue/misc/WinUtils.h
extra : moz-landing-system : lando
2019-09-20 00:09:41 +00:00
monikamaheshwari 9d60e0d578 Bug 1578683 Turn on ESLint rule prefer-boolean-length-check for toolkit and browser r=Standard8
Differential Revision: https://phabricator.services.mozilla.com/D45629

--HG--
extra : moz-landing-system : lando
2019-09-14 09:39:26 +00:00
Makoto Kato 0330a15cd4 Bug 1577411 - Don't build breakpad host tools on Windows host when building GeckoView. r=firefox-build-system-reviewers,chmanchester
Bug 1558372 allows to build crash reporter for Android even if host isn't
Linux. But when using Windows host, it is still broken.

Host libraries and tools in `toolkit/crashreporter/google-breakpad/src/common`
is only for Linux host and macOS host. So if using Windows host, it isn't
buildable.  So I would like to exclude this if host is windows.

Also, `toolkit/crashreporter/google-breakpad/src/tools/linux/dump_syms` is
only for Linux host.

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

--HG--
extra : moz-landing-system : lando
2019-09-04 17:58:35 +00:00
Cosmin Sabou 62c067e92f Bug 1578037 - Disable tests that cause leaks on fission. r=johannh
Differential Revision: https://phabricator.services.mozilla.com//D44599
2019-09-04 07:18:42 +03:00
Nathan Froyd ab3b2432a1 Bug 1578531 - be even more careful about success when running dsymutil; r=nalexander
Even if we don't see error messages from `llvm-dsymutil`, we can still
generate dSYM bundles that `dump_syms` completely falls over on.  Let's
implement a super-careful check that actually examines the debug
information produced to ensure that `dump_syms` will accept our bundle.

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

--HG--
extra : moz-landing-system : lando
2019-09-03 20:46:43 +00:00
Itiel cd710e0a58 Bug 1578145 - Fix submit/view buttons position in about:crashes for RTL r=gsvelto,ntim
Differential Revision: https://phabricator.services.mozilla.com/D44407

--HG--
extra : moz-landing-system : lando
2019-09-03 18:41:12 +00:00
Noemi Erli 92241d2f48 Backed out changeset 97ec7ec089c4 (bug 1576748) for bustage in symbolstore.py 2019-09-01 15:08:20 +03:00