Read-only Git mirror of the Mercurial gecko repositories at https://hg.mozilla.org. How to contribute: https://firefox-source-docs.mozilla.org/contributing/contribution_quickref.html
Go to file
Jed Davis 2257145e1c Bug 1635451 - Minimize content processes' connections to the X server. r=jgilbert,stransky,nika
This patch launches content processes with the `MOZ_HEADLESS` env var set
if they're using GTK with an X11 display (and there's no other reason
they'd need GTK).

The goal is to avoid exhausting Xorg's default limit of 256 clients if
there are many content processes due to Fission.  If these conditions
are met, the content process doesn't need to eagerly connect to the X
server.  This does not affect the sandbox policy, and content processes
can still use X if needed for, e.g.,  WebGL.

The boolean pref `dom.ipc.avoid-gtk`, set by default, controls this
feature.  In the future it could also be extended to minimize GTK use
with Wayland displays.

Note that disabling `widget.non-native-theme.enabled`, which is also
enabled by default, will restore the use of X11 in all content processes
even if this pref is set; the alternative is that widgets wouldn't render
in that case.

This change will also save some memory for now-unnecessary instances of
GTK's global state, and improve content process startup time.

Remove also the temp pref dom.ipc.remote-mozIcon because it cannot work
anymore with the content process being headless.

Differential Revision: https://phabricator.services.mozilla.com/D112197
2021-07-06 07:42:42 +00:00
.cargo Bug 1714465 - Add ThreadNamesStream support to minidump_writer_linux. r=gsvelto 2021-06-30 15:03:52 +00:00
.vscode
accessible Bug 1717726 - Remove browser_deck_has_out_of_process_iframe.js. r=tnikkel 2021-07-06 07:38:06 +00:00
browser Bug 1677606: Run browser_searchbar_focus_timing.js to avoid potential conflicts with other tests. r=Standard8 2021-07-05 22:52:22 +00:00
build Bug 1718156 - Avoid some configure tests creating the common virtualenv. r=firefox-build-system-reviewers,mhentges,andi 2021-07-05 22:33:56 +00:00
caps Bug 1654488: Remove pref in CheckLoadURIWIthFlags which allows all UI resources to load r=bholley 2021-06-25 17:28:59 +00:00
chrome
config Bug 1685075 - Part 2: Remove "en-US-posix" locale from ICU data file. r=zbraniecki 2021-06-18 09:22:06 +00:00
devtools Bug 1718279 - [devtools] Rename Descriptor::reloadBrowsingContext to reloadDescriptor r=ochameau,devtools-backward-compat-reviewers 2021-07-06 07:02:31 +00:00
docs Bug 1587022 - Improve documentation for remaining Mozilla specific ESLint rules. r=sylvestre 2021-07-05 11:38:39 +00:00
docshell Bug 1717983 - Improve PresShell active flag handling. r=nika 2021-07-05 17:31:48 +00:00
dom Bug 1635451 - Minimize content processes' connections to the X server. r=jgilbert,stransky,nika 2021-07-06 07:42:42 +00:00
editor Bug 1716863 - Make HTMLEditor::HandleInsertText() climb up the tree when Selection is in elements which cannot have text nodes r=m_kato 2021-07-06 04:55:28 +00:00
extensions Bug 1718607 - Make TextServicesDocument use uint32_t for offset in DOM node r=m_kato 2021-06-30 09:07:35 +00:00
gfx Bug 1635451 - Minimize content processes' connections to the X server. r=jgilbert,stransky,nika 2021-07-06 07:42:42 +00:00
gradle/wrapper
hal
image Bug 1635451 - Minimize content processes' connections to the X server. r=jgilbert,stransky,nika 2021-07-06 07:42:42 +00:00
intl Bug 1715979 - Do not leak ICU objects in mozilla:intl component moves; r=nordzilla 2021-06-29 15:25:44 +00:00
ipc Bug 1635451 - Minimize content processes' connections to the X server. r=jgilbert,stransky,nika 2021-07-06 07:42:42 +00:00
js Bug 1718823 - Disable GC zeal for weakmap-nursery-value.js test r=arai 2021-07-05 12:04:25 +00:00
layout Bug 1717726 - Add a debug-only assertion disallowing remote <browser>s or <iframe>s inside nsDeckFrame. r=tnikkel 2021-07-06 07:38:06 +00:00
media Bug 1700534 - Coalesce RLBox wasmboxed libraries. r=firefox-build-system-reviewers,shravanrn,bholley,andi,mhentges 2021-06-22 05:31:33 +00:00
memory Bug 1717466 - A few minor fixes for block_analyzer.py. r=pbone 2021-06-22 14:17:44 +00:00
mfbt Bug 1717778 - Upgrade some LinkedList asserts to RELEASE_ASSERT, r=glandium 2021-06-25 16:53:39 +00:00
mobile Bug 1718512 - Remove unused BundleEventListener from GeckoNetworkManager. r=geckoview-reviewers,aklotz 2021-07-06 04:10:22 +00:00
modules Bug 1635451 - Minimize content processes' connections to the X server. r=jgilbert,stransky,nika 2021-07-06 07:42:42 +00:00
mozglue Backed out changeset 11d1710e481f (bug 1714212) for Browser-chrome failures in toolkit/xre/test/browser_checkdllblockliststate.js. CLOSED TREE 2021-06-26 09:45:29 +03:00
netwerk No Bug, mozilla-central repo-update HSTS HPKP remote-settings tld-suffixes - a=repo-update r=jcristau 2021-07-05 11:42:50 +00:00
nsprpub Bug 1715584 - Update to NSPR_4_32_RTM (no code change). r=bbeurdouche UPGRADE_NSPR_RELEASE DONTBUILD 2021-07-01 09:07:04 +00:00
other-licenses Bug 1710751: Create LINKS_TO relation to track anchors and their corresponding elements r=eeejay 2021-05-26 21:31:42 +00:00
parser Bug 1713627 - Remove code obsoleted by the replacing the Text Encoding menu with one item. r=jaws,emk 2021-06-21 12:09:01 +00:00
python Bug 1718156 - Avoid some configure tests creating the common virtualenv. r=firefox-build-system-reviewers,mhentges,andi 2021-07-05 22:33:56 +00:00
remote Bug 1693802 - [remote] Refactor Connection module to be used by CDP and WebDriver BiDi. r=webdriver-reviewers,jdescottes 2021-07-06 07:06:51 +00:00
security Bug 1635451 - Attempt to start WebGL even in headless mode. r=jgilbert 2021-07-06 07:42:41 +00:00
services No Bug, mozilla-central repo-update HSTS HPKP remote-settings tld-suffixes - a=repo-update r=jcristau 2021-07-05 11:42:50 +00:00
servo Bug 1717161 - Clamp perspective() values to a minimum of 1px. r=emilio 2021-07-05 05:19:15 +00:00
startupcache
storage
taskcluster Bug 1719207 - Install libstdc++ dev package in sysroots. r=firefox-build-system-reviewers,mhentges 2021-07-05 22:47:18 +00:00
testing Bug 1635451 - Minimize content processes' connections to the X server. r=jgilbert,stransky,nika 2021-07-06 07:42:42 +00:00
third_party Backed out 2 changesets (bug 1719144) for causing build bustages. CLOSED TREE 2021-07-05 21:15:50 +03:00
toolkit Bug 1693069 - Focus the page range field when choosing a custom print range. r=mstriemer 2021-07-05 22:55:55 +00:00
tools Bug 1717909 - Fetch only one file at a time from Microsoft's symbol servers; r=marco,calixte 2021-06-26 06:37:29 +00:00
uriloader Bug 1685737 - Older blocked mixed-content downloads get removed from download-list on restart. r=Gijs 2021-06-24 11:13:49 +00:00
view
widget Bug 1718748 - Ensure that changing browser.theme.toolbar-theme triggers an style/layout update. r=stransky 2021-07-02 07:55:24 +00:00
xpcom Bug 1718262 - Remove duplicated declaration of NS_GetCurrentThread. r=mccr8 2021-06-25 18:35:09 +00:00
xpfe/appshell Bug 1710687, null check mDocShell before using it, r=peterv 2021-05-25 12:25:41 +00:00
.arcconfig
.babel-eslint.rc.js
.clang-format
.clang-format-ignore Bug 1714577 - Part 5 - Add GeckoTraceEvent.h to clang-format-ignore. r=gerald 2021-06-09 15:43:38 +00:00
.cron.yml Bug 1717600 - Add browsertime perf tests for FF built with clang-trunk. r=perftest-reviewers,jmaher,davehunt 2021-06-24 17:15:43 +00:00
.eslintignore Bug 1515695 - Remove Task.jsm. r=florian,jdescottes 2021-06-17 08:28:02 +00:00
.eslintrc.js Bug 1716642 - Replaced calls to GlobalManager.extensionMap.get() with WebExtensionPolicy.getByID(). r=Standard8,kmag,robwu 2021-06-24 15:06:17 +00:00
.flake8 Bug 1714641: Remove usages of vendored "wptserve_py2" library r=jgraham,ahal 2021-06-09 15:48:51 +00:00
.git-blame-ignore-revs
.gitattributes
.gitignore
.hg-annotate-ignore-revs
.hg-format-source
.hgignore
.hgtags No bug - tagging b724ec4440e0fec4dd6e02ac019f43b2e0b32f85 with FIREFOX_NIGHTLY_90_END a=release DONTBUILD CLOSED TREE 2021-05-31 17:00:09 +00:00
.lando.ini Bug 1714470: add .lando.ini file r=zeid DONTBUILD 2021-06-08 12:52:25 +00:00
.lldbinit
.mailmap
.prettierignore
.prettierrc
.taskcluster.yml
.trackerignore
.yamllint
.ycm_extra_conf.py
aclocal.m4
AUTHORS
build.gradle
Cargo.lock Bug 1714465 - Add ThreadNamesStream support to minidump_writer_linux. r=gsvelto 2021-06-30 15:03:52 +00:00
Cargo.toml Bug 1714465 - Add ThreadNamesStream support to minidump_writer_linux. r=gsvelto 2021-06-30 15:03:52 +00:00
client.mk
client.py
CLOBBER Bug 1714933 - Part 7: Updating ICU requires a clobber. r=tcampbell 2021-06-15 07:54:06 +00:00
configure.in
configure.py
GNUmakefile
gradle.properties
gradlew
gradlew.bat
LICENSE
mach Bug 1713173 - Add --profile-command flag for profiling mach commands. r=firefox-build-system-reviewers,mhentges 2021-06-02 21:28:56 +00:00
mach.ps1
Makefile.in
moz.build
moz.configure Bug 1717585 - Switch --enable-bootstrap on by default on central. r=firefox-build-system-reviewers,mhentges 2021-06-22 23:36:28 +00:00
mozilla-config.h.in
old-configure.in Backed out 3 changesets (bug 1709640) for causing android-4-1-armv7 pgo build bustages. 2021-06-08 03:58:27 +03:00
package-lock.json
package.json
README.txt
settings.gradle
substitute-local-geckoview.gradle Backed out 3 changesets (bug 1709640) for causing android-4-1-armv7 pgo build bustages. 2021-06-08 03:58:27 +03:00
test.mozbuild

An explanation of the Firefox Source Code Directory Structure and links to
project pages with documentation can be found at:

    https://firefox-source-docs.mozilla.org/contributing/directory_structure.html

For information on how to build Firefox from the source code and create the patch see:

    https://firefox-source-docs.mozilla.org/contributing/contribution_quickref.html

If you have a question about developing Firefox, and can't find the solution
on https://firefox-source-docs.mozilla.org/, you can try asking your question on Matrix at chat.mozilla.org in `Introduction` (https://chat.mozilla.org/#/room/#introduction:mozilla.org) channel.


Nightly development builds can be downloaded from:

    https://archive.mozilla.org/pub/firefox/nightly/latest-mozilla-central/
            - or -
    https://www.mozilla.org/firefox/channel/desktop/#nightly

Keep in mind that nightly builds, which are used by Firefox developers for
testing, may be buggy.