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

305 Коммитов

Автор SHA1 Сообщение Дата
Nika Layzell bf0c416c45 Bug 1915998 - Check for Omnijar::Init failure more consistently, r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D220748
2024-08-30 22:40:25 +00:00
Andrew McCreight 3f93202f63 Bug 1915988, part 2 - Make non-main process NS_InitXPCOM infallible. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D220742
2024-08-30 21:49:36 +00:00
Adam Brouwers-Harries 95b0970844 Bug 1883903 - Try to get a profile when we encounter a hang r=florian,profiler-reviewers,ahal
Differential Revision: https://phabricator.services.mozilla.com/D214842
2024-08-14 12:11:43 +00:00
Iulian Moraru 5c137ce38a Backed out changeset 10913ecf6412 (bug 1883903) for causing xpcshell failures on test_feature_posix_signals.js. 2024-08-05 22:50:15 +03:00
Adam Brouwers-Harries d2b6988818 Bug 1883903 - Try to get a profile when we encounter a hang r=florian,profiler-reviewers,ahal
Differential Revision: https://phabricator.services.mozilla.com/D214842
2024-08-05 17:06:06 +00:00
Tooru Fujisawa da4b1ab361 Bug 1907014 - Make SharedSubResourceCache subclass instance a per-process singleton. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D217709
2024-07-25 14:02:25 +00:00
Jens Stutte 1af8efe5e2 Bug 1471720 - Make Omnijar::Init() fallible during NS_InitXPCOM and do a canary load of a JS component as early as possible in XRE_mainRun. r=xpcom-reviewers,nika
Omnijar::Init can detect corrupted zip files and react accordingly. It
cannot fail if omni.ja is just missing, as we might run in a
configuration where resources are loaded directly from the modules
directory. We thus add also a canary load of the AppConstants
module to XRE_mainRun as soon as we have a JS context.

Differential Revision: https://phabricator.services.mozilla.com/D205026
2024-07-22 19:30:26 +00:00
Paul Adenot 76c0a48045 Bug 1890370 - Remove libtheora integration. r=media-playback-reviewers,karlt
Differential Revision: https://phabricator.services.mozilla.com/D215396
2024-07-15 14:20:37 +00:00
Cristian Tuns 022adcf065 Backed out changeset 7403e6b18b71 (bug 1883903) for causing build bustages in platform.cpp CLOSED TREE 2024-07-09 20:43:18 -04:00
Adam Brouwers-Harries 23454e353d Bug 1883903 - Try to get a profile when we encounter a hang r=florian,profiler-reviewers,ahal
Differential Revision: https://phabricator.services.mozilla.com/D214842
2024-07-10 00:22:54 +00:00
Adam Brouwers-Harries 13528596ec Bug 1865930: Add support for stopping the profiler using UNIX signals r=canaltinova,profiler-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D203146
2024-04-04 17:40:14 +00:00
Iulian Moraru 1a829b521b Backed out changeset 1f4dc2487e0e (bug 1865930) for causing xpcshell failures on test_feature_posix_signals.js. 2024-04-03 03:55:28 +03:00
Adam Brouwers-Harries 8df870d509 Bug 1865930: Add support for stopping the profiler using UNIX signals r=canaltinova,profiler-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D203146
2024-04-02 18:35:50 +00:00
Cristian Tuns 351e7b526a Backed out changeset 33f1358c77ca (bug 1865930) for causing build bustages in platform.cpp CLOSED TREE 2024-04-02 11:05:10 -04:00
Adam Brouwers-Harries 7a432e75e6 Bug 1865930: Add support for stopping the profiler using UNIX signals r=canaltinova,profiler-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D203146
2024-04-02 14:27:17 +00:00
Nika Layzell 5c6cb3e502 Bug 1883457 - Part 1: Disable jit compilation within the parent process on iOS, r=jandem
This adds a pref to disable jit compilation by calling JS::DisableJitBackend in
the parent process. This will be used on iOS, where the jit entitlements are
only available for sandboxed content processes.

Differential Revision: https://phabricator.services.mozilla.com/D203498
2024-03-25 17:12:53 +00:00
pstanciu 8bbd9e9ed6 Backed out 2 changesets (bug 1883457) for causing build bustages on StaticPrefList.yaml CLOSED TREE
Backed out changeset 2dbe5fbe8f16 (bug 1883457)
Backed out changeset f608ec3ab50e (bug 1883457)
2024-03-23 04:06:12 +02:00
Nika Layzell a8741bf73e Bug 1883457 - Part 1: Disable jit compilation within the parent process on iOS, r=jandem
This adds a pref to disable jit compilation by calling JS::DisableJitBackend in
the parent process. This will be used on iOS, where the jit entitlements are
only available for sandboxed content processes.

Differential Revision: https://phabricator.services.mozilla.com/D203498
2024-03-22 19:47:48 +00:00
Jan de Mooij 8366c1d2b2 Bug 1877193 part 18 - Assert startup prefs are set before JS_Init*. r=mgaudet,necko-reviewers,valentin
Looking at bug 1877605 made me realize we should define better when (startup) prefs
are set exactly.

This patch adds assertions to check startup prefs can only be set before `JS_Init` and
also fixes the embeddings to follow this new rule. This makes the JS shell and browser
behavior more consistent, and makes it possible to rely on pref values during startup.

Differential Revision: https://phabricator.services.mozilla.com/D200148
2024-02-06 12:51:34 +00:00
Jens Stutte 3bc5d595aa Bug 1861252 - Anticipate servo thread pool shutdown in leak checking builds. r=xpcom-reviewers,emilio
Differential Revision: https://phabricator.services.mozilla.com/D195098
2023-11-30 15:28:39 +00:00
Makoto Kato afd374a967 Bug 1856084 - Destroy nsLanguageAtomService even if nsLayoutStatics isn't destroyed. r=platform-i18n-reviewers,dminor
When looking pernos debug session, since `nsLayoutStatics` isn't destroyed,
`nsLanguageAtomService` isn't destroyed. It seems to be some objects are
leaked according to stdout and stderr on debug build.

So we should destroy this service to avoid other debug assertion even if
`nsLayoutStatics` isn't destroyed.

Differential Revision: https://phabricator.services.mozilla.com/D192607
2023-11-03 03:56:41 +00:00
Dan Minor 73de873f4c Bug 1858496 - Crash on OOM in ICU; r=jandem,platform-i18n-reviewers,gregtatum
This has been on Nightly for several cycles without serious problems, I think
it makes sense to let it ride the trains, and continue to keep an eye on
crash reports.

Differential Revision: https://phabricator.services.mozilla.com/D191892
2023-10-27 12:29:43 +00:00
Paul Bone cda96811f8 Bug 1814798 - pt 2. Add a PHCManager component to control PHC r=glandium,emilio
This change adds the PHCManager class which observes a pref to control PHC.
The pref can be changed at runtime and will affect the parent and content
processes.

Differential Revision: https://phabricator.services.mozilla.com/D178754
2023-09-18 06:48:06 +00:00
Stanca Serban 6d490604c6 Backed out 2 changesets (bug 1814798) for multiple phc related failures.
Backed out changeset 50b72ab948b2 (bug 1814798)
Backed out changeset bf7d386ad43a (bug 1814798)
2023-09-12 07:54:18 +03:00
Paul Bone 8f391e64c7 Bug 1814798 - pt 2. Add a PHCManager component to control PHC r=glandium,emilio
This change adds the PHCManager class which observes a pref to control PHC.
The pref can be changed at runtime and will affect the parent and content
processes.

Differential Revision: https://phabricator.services.mozilla.com/D178754
2023-09-12 04:03:16 +00:00
Dan Minor 2a1cba56aa Bug 1552900 - Crash on OOM in ICU on Nightly builds; r=jandem,platform-i18n-reviewers
We're seeing inconsistent handling of OOMs in the ICU library. This
patch changes the behaviour to crash on OOM rather than allowing
ICU to handle the allocation failure. The inconsistent handling in ICU
could lead to ICU being in an inconsistent state which could in turn
cause security problems. The safer alternative is to crash, but it's
possible this will lead to too high of crash rate. For now, we'll try
this on Nightly only and monitor crash reports to see what impact this
change has.

Differential Revision: https://phabricator.services.mozilla.com/D186226
2023-08-15 19:03:15 +00:00
Jed Davis 2ad421aaf8 Bug 1840515 - Step 1: Use -greomni/-appomni for content processes. r=nika,mhowell
Currently, each content process re-derives the path(s) of the omnijar
file(s).  We used to pass it down as a command-line argument, but
those args were also accepted by the parent process and there were
issues with that (CVE-2020-6799) such that they were completely removed
(bug 1531475).  However, content processes can generally trust their
arguments; note that they currently accept `-appDir`.

We were already using `-gredir` for this on Android (it has a unified
omnijar, so there's no `-appdir` in that case); this patch subsumes the
content-process case of that, but not the parent process (which consumes
basically a fake argv constructed in Java code).

Note that only the parent process and content processes use the
omnijars; every other process type uses either minimal XPCOM, which
doesn't include them, or no XPCOM at all (e.g., GMP before bug 1845946).

The end goal of this patch series is to use those flags with the fork
server (so that it can preload the files without needing any XPCOM), but
this patch changes only the case of content processes.

Differential Revision: https://phabricator.services.mozilla.com/D182510
2023-08-09 21:35:49 +00:00
Makoto Kato e10181029f Bug 1834278 - Get rid of nsIMessageLoop. r=emilio
This is unused now.

Differential Revision: https://phabricator.services.mozilla.com/D185039
2023-08-01 13:15:50 +00:00
Mike Hommey 1903893346 Bug 1836890 - Remove uses of chromium's OS_* macros in Gecko code. r=nika,media-playback-reviewers,keeler,gfx-reviewers,emilio,necko-reviewers,kershaw,karlt,jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D180039
2023-06-06 20:00:47 +00:00
Jens Stutte f933869f5f Bug 1768581 - Part 4: Postpone main nsThread destruction after full XPCOM shutdown. r=xpcom-reviewers,nika
Some debug infrastructure like MOZ_WEAKPTR_INIT_THREAD_SAFETY_CHECK  that can apparently be triggered by nsComponentManagerImpl::gComponentManager->FreeService() seem to rely on the existence of a serial event target even if they do not post any events. So it seems sound to keep a representation of the main thread as nsThread object until after final XPCOM shutdown.
But nsThreadManager::ShutdownMainThread() does more, it processes the last round of events, removes the thread's observer  and closes down the background event target. We do not want to move these operations to happen later than before, such that we split the nsThread release into a separate function and move that together with AbstractThread::ShutdownMainThread() behind FreeService().

Depends on D160628

Differential Revision: https://phabricator.services.mozilla.com/D162497
2022-12-12 15:21:28 +00:00
Jens Stutte 1a706a942e Bug 1709184 - Part 1: Process pending MT events before advancing the shutdown phase. r=xpcom-reviewers,nika,kmag
Differential Revision: https://phabricator.services.mozilla.com/D160176
2022-12-12 15:21:26 +00:00
Butkovits Atila 65e34f4628 Backed out 4 changesets (bug 1768581, bug 1709184) for causing high frequency Xpcshell failures at test_bug1274685_unowned_list.js. CLOSED TREE
Backed out changeset 6bae0f16eae9 (bug 1768581)
Backed out changeset 1f111f5b8baf (bug 1768581)
Backed out changeset a3d89b2ef44a (bug 1709184)
Backed out changeset 98f1dc6f0123 (bug 1709184)
2022-11-23 22:09:33 +02:00
Jens Stutte 218fbd6c78 Bug 1768581 - Part 13: Postpone main nsThread destruction after full XPCOM shutdown. r=xpcom-reviewers,nika
Some debug infrastructure like MOZ_WEAKPTR_INIT_THREAD_SAFETY_CHECK  that can apparently be triggered by nsComponentManagerImpl::gComponentManager->FreeService() seem to rely on the existence of a serial event target even if they do not post any events. So it seems sound to keep a representation of the main thread as nsThread object until after final XPCOM shutdown.
But nsThreadManager::ShutdownMainThread() does more, it processes the last round of events, removes the thread's observer  and closes down the background event target. We do not want to move these operations to happen later than before, such that we split the nsThread release into a separate function and move that together with AbstractThread::ShutdownMainThread() behind FreeService().

Depends on D160628

Differential Revision: https://phabricator.services.mozilla.com/D162497
2022-11-23 16:03:18 +00:00
Jens Stutte b2a17869b6 Bug 1709184 - Part 10: Process pending MT events before advancing the shutdown phase. r=xpcom-reviewers,nika,kmag
Differential Revision: https://phabricator.services.mozilla.com/D160176
2022-11-23 16:03:17 +00:00
Cristian Tuns c8caa32fbd Backed out 3 changesets (bug 1709184, bug 1768581) for causing xpcshell failures CLOSED TREE
Backed out changeset bd3bc1478107 (bug 1768581)
Backed out changeset c7465ec6154e (bug 1709184)
Backed out changeset 032bf39acabb (bug 1709184)
2022-11-19 06:31:59 -05:00
Jens Stutte d30ecf51ea Bug 1709184 - Part 10: Process pending MT events before advancing the shutdown phase. r=xpcom-reviewers,nika,kmag
Depends on D160627

Differential Revision: https://phabricator.services.mozilla.com/D160176
2022-11-19 10:15:31 +00:00
Marian-Vasile Laza 1b3edb2b0b Backed out 3 changesets (bug 1768581, bug 1709184) for causing mochitest failures on LateWriteChecks.cpp. CLOSED TREE
Backed out changeset c49173f72e0d (bug 1768581)
Backed out changeset a4c2b2d0b63a (bug 1709184)
Backed out changeset 1181bdcde598 (bug 1709184)
2022-11-18 12:34:22 +02:00
Jens Stutte 1d3931be05 Bug 1709184 - Part 10: Process pending MT events before advancing the shutdown phase. r=xpcom-reviewers,nika,kmag
Depends on D160627

Differential Revision: https://phabricator.services.mozilla.com/D160176
2022-11-18 09:22:25 +00:00
Csoregi Natalia 66dbc65ccb Backed out 2 changesets (bug 1709184) for xpcshell failures. CLOSED TREE
Backed out changeset 46d7864a45df (bug 1709184)
Backed out changeset ac48b4d61b39 (bug 1709184)
2022-11-17 16:43:59 +02:00
Jens Stutte b4bf71a425 Bug 1709184 - Part 10: Process pending MT events before advancing the shutdown phase. r=xpcom-reviewers,nika,kmag
Depends on D160627

Differential Revision: https://phabricator.services.mozilla.com/D160176
2022-11-17 10:07:13 +00:00
Jens Stutte 941061692d Bug 1797688 - Part 9: Make gXPCOMThreadsShutDown DEBUG only. r=xpcom-reviewers,mccr8
`gXPCOMThreadsShutDown` is needed for the assertion in `ThreadEventTarget::Dispatch` but we do not want other shutdown checks to rely on it, as it is too specific for this case. If we ever would really need this checkpoint in time during runtime in release we should consider to make it become a new `ShutdownPhase` in between.

We move the state to `ThreadEventTarget` and have a `DEBUG` only method to prime that assertion over there.

Differential Revision: https://phabricator.services.mozilla.com/D160627
2022-11-01 14:08:46 +00:00
Mike Hommey 056763e84d Bug 1776463 - Use C++17 inline variable for CountingAllocatorBase::sAmount. r=xpcom-reviewers,nika
Differential Revision: https://phabricator.services.mozilla.com/D159360
2022-10-17 21:54:12 +00:00
Alexandre Poirot 8d2a615b2d Bug 1790383 - [devtools] Allow loading ESMs in a distinct loader specific to DevTools. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D157618
2022-10-03 07:28:09 +00:00
Kris Maglione a8a76125b8 Bug 1773770: Part 4 - Migrate INI parser factory to static component registration. r=xpcom-reviewers,nika
Differential Revision: https://phabricator.services.mozilla.com/D149432
2022-06-30 09:12:16 +00:00
Noemi Erli ff26b8a5d0 Backed out 11 changesets (bug 1773770) because shouldn't have been landed during a soft freeze CLOSED TREE
Backed out changeset ede55d570d1e (bug 1773770)
Backed out changeset d5374ef362c2 (bug 1773770)
Backed out changeset 26e47956508b (bug 1773770)
Backed out changeset c78f0c4c8f3f (bug 1773770)
Backed out changeset 9089a97bcb26 (bug 1773770)
Backed out changeset 17894f5b3b41 (bug 1773770)
Backed out changeset 986a64a9e6b4 (bug 1773770)
Backed out changeset 7a63d8676bf0 (bug 1773770)
Backed out changeset 38e7b99ffbed (bug 1773770)
Backed out changeset e9ad07c96ab2 (bug 1773770)
Backed out changeset 2a8f65417b66 (bug 1773770)
2022-06-24 20:03:43 +03:00
Kris Maglione 4bd7eb42a2 Bug 1773770: Part 4 - Migrate INI parser factory to static component registration. r=xpcom-reviewers,nika
Differential Revision: https://phabricator.services.mozilla.com/D149432
2022-06-24 07:10:16 +00:00
criss 6abc242b8d Backed out 11 changesets (bug 1773770) for causing mochitest failures on test_bug466599.xhtml. CLOSED TREE
Backed out changeset d35762c3242d (bug 1773770)
Backed out changeset 0501c85d3f58 (bug 1773770)
Backed out changeset cdd28e0e3434 (bug 1773770)
Backed out changeset a48829529dd0 (bug 1773770)
Backed out changeset c3fcdd7e88e5 (bug 1773770)
Backed out changeset 8f334c5dc0cd (bug 1773770)
Backed out changeset 337e76b67647 (bug 1773770)
Backed out changeset 71f539b482ba (bug 1773770)
Backed out changeset b996cbbbc2f5 (bug 1773770)
Backed out changeset a6ddc3cdc9ba (bug 1773770)
Backed out changeset c8d7da3cf2ac (bug 1773770)
2022-06-24 08:12:40 +03:00
Kris Maglione 36eea502fb Bug 1773770: Part 4 - Migrate INI parser factory to static component registration. r=xpcom-reviewers,nika
Differential Revision: https://phabricator.services.mozilla.com/D149432
2022-06-24 00:47:43 +00:00
Marian-Vasile Laza 7dd26a3f65 Backed out 11 changesets (bug 1773770) for causing bc failures on browser_xpcom_graph_wait.js. CLOSED TREE
Backed out changeset 72ace9ee39ae (bug 1773770)
Backed out changeset e8a3a040b4c4 (bug 1773770)
Backed out changeset 4ff5f4f0f5d1 (bug 1773770)
Backed out changeset f96e9664168d (bug 1773770)
Backed out changeset b6a696897ca8 (bug 1773770)
Backed out changeset 1b8ad6be2dce (bug 1773770)
Backed out changeset 7e3a1a32a88d (bug 1773770)
Backed out changeset 6dbe5fa1ad4f (bug 1773770)
Backed out changeset 86e09dcdadde (bug 1773770)
Backed out changeset 1ee8d852d9d5 (bug 1773770)
Backed out changeset c99e93023059 (bug 1773770)
2022-06-24 03:25:34 +03:00
Kris Maglione 56cbf4f676 Bug 1773770: Part 4 - Migrate INI parser factory to static component registration. r=xpcom-reviewers,nika
Differential Revision: https://phabricator.services.mozilla.com/D149432
2022-06-23 23:05:35 +00:00