Commit Graph

758 Commits

Author SHA1 Message Date
Gabriele Svelto
14db2c37b8 Bug 1571711 - Factorize crash handling out of the various process IPC classes r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D41657

--HG--
extra : moz-landing-system : lando
2019-08-15 12:06:51 +00:00
Jed Davis
9a41450b28 Bug 1479960 - Get rid of base::SharedMemory::handle. r=froydnj
Despite the comment saying not to use the "handle" except as an opaque
identifier, it is being used to pass the handle to other OS APIs.  Direct
access to the handle needs to be controlled to make sure freezing is
safe, so this patch replaces that with interfaces that are more explicit
about ownership and lifetime.

Depends on D26739

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

--HG--
extra : moz-landing-system : lando
2019-08-14 22:48:22 +00:00
Bogdan Tara
f326b67e0e Backed out changeset c60ee628dd0e (bug 1571711) for RemoteSandboxBroker related bustages CLOSED TREE 2019-08-15 01:50:01 +03:00
Gabriele Svelto
d888c0a6b5 Bug 1571711 - Factorize crash handling out of the various process IPC classes r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D41657

--HG--
extra : moz-landing-system : lando
2019-08-13 21:43:00 +00:00
Matt Woodrow
9e7b5fae3f Bug 1571341 - Default to using DocumentRelative for the root document being drawn, since callers generally expect coordinates relative to the document. r=rhunt
Differential Revision: https://phabricator.services.mozilla.com/D41728

--HG--
extra : moz-landing-system : lando
2019-08-14 10:23:39 +00:00
Matt Woodrow
f9d2effd9a Bug 1569930 - Handle races in CrossProcessPaint without crashing, and instead report it back to the caller. r=rhunt
Differential Revision: https://phabricator.services.mozilla.com/D41727

--HG--
extra : moz-landing-system : lando
2019-08-14 10:23:34 +00:00
Gabriele Svelto
beb62c4c31 Bug 1282776 - Finalize crash reports for child process crashes happening too early r=froydnj
This changes the way crash reports for child processes happening too early
during the child process' startup. Before bug 1547698 we wrote a partial
.extra file with those crashes that lacked the process type. The user would
not be notified of those crashes until she restarted Firefox and even when
submitted those crashes would be erroneously labeled as browser crashes.

After bug 1547698 we stopped writing .extra files entirely for those crashes
which left orphaned .dmp files among the pending crash reports.

This patch does three things to improve the situation:

* It writes a partial .extra file so that the crashes are detected at the next
  startup. So the user is still not notified directly of these crashes but she
  can report them later.
* It adds the process type to the .extra file so that the crash reporters are
  labelled correctly.
* It fixes a leak in the `pidToMinidump` hash-map. Since the crashes were
  not finalized the `ChildProcessData` strucutre associated with them would
  never be fred.

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

--HG--
extra : moz-landing-system : lando
2019-08-09 14:23:19 +00:00
Nika Layzell
f9fb4fc118 Bug 1570369 - Part 2: Use IPDL refcounted for PAPZInputBridge, r=rhunt
Differential Revision: https://phabricator.services.mozilla.com/D40253

--HG--
extra : moz-landing-system : lando
2019-08-08 16:46:22 +00:00
Matt Woodrow
8a6d6da9ef Bug 1569974 - Don't try to deference an empty Maybe when starting CrossProcessPaint with a rect. r=rhunt
Differential Revision: https://phabricator.services.mozilla.com/D39964

--HG--
extra : moz-landing-system : lando
2019-07-31 19:01:05 +00:00
Jean-Yves Avenard
e41290cb09 Bug 1543359 - P0. Make video range info an enum. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D29639

--HG--
extra : moz-landing-system : lando
2019-07-26 08:45:22 +00:00
Narcis Beleuzu
e84980d8b1 Backed out 15 changesets (bug 1543359) for wrench bustages on image.rs . CLOSED TREE
Backed out changeset 548006270186 (bug 1543359)
Backed out changeset c9585e9d9f3c (bug 1543359)
Backed out changeset 1c7ca95a2a9b (bug 1543359)
Backed out changeset d742d80b892f (bug 1543359)
Backed out changeset 210eee703fd9 (bug 1543359)
Backed out changeset 4eb933d55d88 (bug 1543359)
Backed out changeset fb9b71ed9f4b (bug 1543359)
Backed out changeset 98b968443458 (bug 1543359)
Backed out changeset a85bd4691bea (bug 1543359)
Backed out changeset b576317853e9 (bug 1543359)
Backed out changeset 095bca5c9b1a (bug 1543359)
Backed out changeset 48eb0ebf9f2e (bug 1543359)
Backed out changeset b22b0eb708b8 (bug 1543359)
Backed out changeset 52187d9320b1 (bug 1543359)
Backed out changeset fa6792c1c2e8 (bug 1543359)
2019-07-26 11:40:33 +03:00
Jean-Yves Avenard
4ea329b749 Bug 1543359 - P0. Make video range info an enum. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D29639

--HG--
extra : moz-landing-system : lando
2019-07-26 06:10:30 +00:00
Cosmin Sabou
ae7e8fbf55 Backed out 14 changesets (bug 1543359) for causing build bustages. CLOSED TREE
Backed out changeset 87c99ef85813 (bug 1543359)
Backed out changeset cd0afc5758ba (bug 1543359)
Backed out changeset 101ac87ff017 (bug 1543359)
Backed out changeset 348e748e3451 (bug 1543359)
Backed out changeset d9e937f5caf4 (bug 1543359)
Backed out changeset 2f4eb6501552 (bug 1543359)
Backed out changeset 0d316ef8c668 (bug 1543359)
Backed out changeset bf238b58c694 (bug 1543359)
Backed out changeset 496f206d03d6 (bug 1543359)
Backed out changeset 7c3a1f23baa8 (bug 1543359)
Backed out changeset 90fff717198b (bug 1543359)
Backed out changeset b2ce591ca398 (bug 1543359)
Backed out changeset a63968f077e3 (bug 1543359)
Backed out changeset ca660ab1e0c1 (bug 1543359)
2019-07-26 07:39:11 +03:00
Jean-Yves Avenard
9871202958 Bug 1543359 - P0. Make video range info an enum. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D29639

--HG--
extra : moz-landing-system : lando
2019-07-13 03:25:18 +00:00
Nicholas Nethercote
18fae65f38 Bug 1563139 - Remove StaticPrefs.h. r=glandium
This requires replacing inclusions of it with inclusions of more specific prefs
files.

The exception is that StaticPrefsAll.h, which is equivalent to StaticPrefs.h,
and is used in `Codegen.py` because doing something smarter is tricky and
suitable for a follow-up. As a result, any change to StaticPrefList.yaml will
still trigger recompilation of all the generated DOM bindings files, but that's
still a big improvement over trigger recompilation of every file that uses
static prefs.

Most of the changes in this commit are very boring. The only changes that are
not boring are modules/libpref/*, Codegen.py, and ServoBindings.toml.

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

--HG--
extra : moz-landing-system : lando
2019-07-26 01:10:23 +00:00
Nicholas Nethercote
7974362afd Bug 1567329 - Append _AtStartup to once static pref getters. r=erahm
Currently it's completely unclear at use sites that the getters for `once`
static prefs return the pref value from startup, rather than the current pref
value. (Bugs have been caused by this.) This commit improves things by changing
the getter name to make it clear that the pref value obtained is from startup.

This required changing things within libpref so it distinguishes between the
"base id" (`foo_bar`) and the "full id" (`foo_bar` or
`foo_bar_DoNotUseDirectly` or `foo_bar_AtStartup` or
`foo_bar_AtStartup_DoNotUseDirectly`; the name used depends on the `mirror` and
`do_not_use_directly` values in the YAML definition.) The "full id" is used in
most places, while the "base id" is used for the `GetPrefName_*` and
`GetPrefDefault_*` functions.

(This is a nice demonstration of the benefits of the YAML file, BTW. Making
this change with the old code would have involved adding an entry to every
single pref in StaticPrefList.h.)

The patch also rejigs the comment at the top of StaticPrefList.yaml, to clarify
some things.

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

--HG--
extra : moz-landing-system : lando
2019-07-22 02:10:14 +00:00
Matt Woodrow
1a69639421 Bug 1562722 - Don't apply the background color to anything except the root document when using CrossProcessPaint. r=rhunt
Differential Revision: https://phabricator.services.mozilla.com/D37679

--HG--
extra : moz-landing-system : lando
2019-07-11 14:01:15 +00:00
Ryan Hunt
27bd25767f Bug 1561395 - Move drawSnapshot API to WindowGlobalParent and allow specifying the whole viewport as a rect. r=mattwoodrow,nika
Differential Revision: https://phabricator.services.mozilla.com/D35842

--HG--
extra : moz-landing-system : lando
2019-07-10 16:45:46 +00:00
Barret Rennie
fcbeacbb8c Bug 1289211 - Rename InfallibleTArray to nsTArray in gfx/ipc/ r=kats
Differential Revision: https://phabricator.services.mozilla.com/D36953

--HG--
extra : moz-landing-system : lando
2019-07-10 03:29:05 +00:00
Jeff Muizelaar
bcd10ea75c Bug 1561743. DrawTargetRecording IntRect. r=nical
This lets us record at arbitratry offsets. Without it gfxContext::GetClip()
would break because it uses DrawTarget::GetRect() as the initial rect that it
intersects subsequent clips with. We also can't just use a DrawTargetOffset
because that applies a transform to the inner DrawTarget and will impact the
recorded commands.

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

--HG--
extra : moz-landing-system : lando
2019-07-10 13:49:08 +00:00
sotaro
9950199432 Bug 1564720 - Fallback from WebRender when EGLSurface creation failed in RenderCompositorEGL::BeginFrame() r=nical
Differential Revision: https://phabricator.services.mozilla.com/D37520

--HG--
extra : moz-landing-system : lando
2019-07-10 11:14:40 +00:00
sotaro
1d84883e80 Bug 1562847 - Disable double buffering with compositor when device reset happens r=nical,bas
When double buffering is enable with compositor, DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL is used without DirectComposition. There are some devices that swap chain with DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL does not work well. In this case, device reset happens very often. To avoid the situation, the double buffering needs to be disabled when device reset happens.

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

--HG--
extra : moz-landing-system : lando
2019-07-09 06:37:45 +00:00
Nicholas Nethercote
d839ef58db Bug 1562331 - Make media.* static prefs follow the naming convention. r=KrisWright
This also removes the following prefs, because they're unused:
- media.autoplay.allow-muted pref
- media.autoplay.blackList-override-default

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

--HG--
extra : rebase_source : 0570540496302b3efedadf4d5115ee5422d5c279
2019-06-28 14:09:05 +10:00
shindli
67c134b492 Merge mozilla-central to inbound. a=merge CLOSED TREE 2019-06-29 02:23:28 +03:00
Narcis Beleuzu
a89b67e772 Backed out 15 changesets (bug 1479960, bug 1426526, bug 1534780, bug 1536697) for toolchain bustages on UniquePtrExtensions.h . CLOSED TREE
Backed out changeset a8518ea4b594 (bug 1479960)
Backed out changeset 7172762c4b87 (bug 1536697)
Backed out changeset 2ea5ccb8f3a1 (bug 1426526)
Backed out changeset d892a888fe9c (bug 1426526)
Backed out changeset 2c4d12bdfec3 (bug 1479960)
Backed out changeset 8a322064cf6d (bug 1479960)
Backed out changeset 47d387b6cd4a (bug 1479960)
Backed out changeset 8332565a6943 (bug 1479960)
Backed out changeset 9d7f1835f96f (bug 1479960)
Backed out changeset 0aa8af4965c5 (bug 1479960)
Backed out changeset 036809330a51 (bug 1479960)
Backed out changeset 39e18373e3d3 (bug 1479960)
Backed out changeset 6c2b995a9d30 (bug 1479960)
Backed out changeset 3c2b31744645 (bug 1534780)
Backed out changeset 26bb00a94d5d (bug 1534780)
2019-06-28 22:42:00 +03:00
Nicholas Nethercote
ca8e78069d Bug 1561491 - Make gfx.* static prefs follow the naming convention. r=KrisWright
Differential Revision: https://phabricator.services.mozilla.com/D35975

--HG--
extra : rebase_source : 9090ac828f1da9582510975047d5ad59a228dda5
2019-06-26 10:38:09 +10:00
Nicholas Nethercote
84b32d3654 Bug 1561491 - Make browser.* and dom.vr.* static prefs follow the naming convention. r=KrisWright
The patch also removes the dom.vr.oculus.quit.timeout pref, because it's
unused.

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

--HG--
extra : rebase_source : bd16ed5ff0b7c2b4f8e653e9835610b25b14a39f
2019-06-25 16:32:29 +10:00
Nicholas Nethercote
4008f58653 Bug 1561825 - Make layers.* static prefs follow the naming convention. r=KrisWright
The patch also removes the layers.mlgpu.enable-container-resizing pref, because
it's dead.

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

--HG--
extra : rebase_source : e215d584aed18f865d2e8d00a78e76e9b0323e6e
2019-06-27 14:48:58 +10:00
Jed Davis
3c945a3e99 Bug 1479960 - Get rid of base::SharedMemory::handle. r=froydnj
Despite the comment saying not to use the "handle" except as an opaque
identifier, it is being used to pass the handle to other OS APIs.  Direct
access to the handle needs to be controlled to make sure freezing is
safe, so this patch replaces that with interfaces that are more explicit
about ownership and lifetime.

Depends on D26739

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

--HG--
extra : moz-landing-system : lando
2019-06-20 22:40:19 +00:00
Ciure Andrei
72f3f971fb Backed out 15 changesets (bug 1479960, bug 1426526, bug 1534780, bug 1536697) for causing build bustages CLOSED TREE
Backed out changeset 5645e0cc3915 (bug 1479960)
Backed out changeset a7c09894c6a0 (bug 1536697)
Backed out changeset 510f03381af9 (bug 1426526)
Backed out changeset 7cf4735a088f (bug 1426526)
Backed out changeset 41080844e645 (bug 1479960)
Backed out changeset fdba3c5f8fd0 (bug 1479960)
Backed out changeset 26a8ebcb2db4 (bug 1479960)
Backed out changeset d0d383e5bae1 (bug 1479960)
Backed out changeset c418095bb7b7 (bug 1479960)
Backed out changeset 7b78b1945532 (bug 1479960)
Backed out changeset c47d47d4073d (bug 1479960)
Backed out changeset 71253b62a633 (bug 1479960)
Backed out changeset ae525f20bdbb (bug 1479960)
Backed out changeset 7fba719355d7 (bug 1534780)
Backed out changeset 771db331860a (bug 1534780)
2019-06-20 19:54:57 +03:00
Jed Davis
d1d5748834 Bug 1479960 - Get rid of base::SharedMemory::handle. r=froydnj
Despite the comment saying not to use the "handle" except as an opaque
identifier, it is being used to pass the handle to other OS APIs.  Direct
access to the handle needs to be controlled to make sure freezing is
safe, so this patch replaces that with interfaces that are more explicit
about ownership and lifetime.

Depends on D26739

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

--HG--
extra : moz-landing-system : lando
2019-06-17 02:19:46 +00:00
sotaro
1b3de0879f Bug 1533296 - Make WebRender error as to Fallback to Compositor rendering during disabling WebRender on android r=nical
On android, android's nsWindow creates LayerManaer only in nsWindow::Create(). When WebRender error happened, gecko just stopped rendering by disabling Webrender.
The nsWindow needs to re-create LayerManager during disabling Webrender. Further, during disabling WebRender, All GeckoSurfaceTextures should not be attached to GLContext. It is for preventing a conflict with AttachToGLContext() call in SurfaceTextureHost::EnsureAttached().

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

--HG--
extra : moz-landing-system : lando
2019-06-19 16:14:56 +00:00
Jean-Yves Avenard
139dde3db5 Bug 1559675 - P2. Initialise xpcom earlier in GPU process. r=mattwoodrow
StaticPrefs are fully initialized with Preferences, which is instantiated via XPCOM. It is required as such to initialize xpcom first.

Depends on D35263

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

--HG--
extra : moz-landing-system : lando
2019-06-18 23:03:20 +00:00
Bas Schouten
202c0599be Bug 1553254 - Part 1: Allow low-overhead selective collection of internal performance probes through ChromeUtils. r=brennie,nika
Differential Revision: https://phabricator.services.mozilla.com/D32039

--HG--
extra : rebase_source : 2484b8d3d15495e63b9e02139aafd3e78a710f37
2019-05-21 21:01:31 +02:00
Brindusan Cristian
d957131916 Merge mozilla-central to inbound. a=merge CLOSED TREE 2019-06-11 12:44:12 +03:00
Andrew Osmond
a0903c8fe5 Bug 1558202 - Disable hardware acceleration on Linux if the GPU process becomes disabled. r=rhunt
If the GPU process becomes disabled due to crashes, then we should not
allow Linux to fallback from WebRender to OpenGL compositing in the
parent process. It should instead fallback to software just like
Windows. This is important because we don't support the OpenGL
compositor configuration.

Differential Revision: https://phabricator.services.mozilla.com/D34360
2019-06-10 13:44:30 -04:00
Tarek Ziadé
b18ccf9c4e Bug 1529023 - Enable threads on macOS for GetProcInfo r=jld,mstange
To run task_for_pid() on child processes, we need the child task port for
security reasons. This port can be obtained via a Mach IPC exchange.

This is what GeckoChildProcessHost::GetChildTask() provides, so we use it
in cocoa's version of GetProcInfo()

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

--HG--
extra : moz-landing-system : lando
2019-06-07 19:56:51 +00:00
Sebastian Hengst
0d6b93005b Backed out changeset 0635eeb2fad4 (bug 1529023) for bustage in ChromeUtils.cpp. CLOSED TREE 2019-06-07 19:09:41 +02:00
Tarek Ziadé
2f870d3a3e Bug 1529023 - Enable threads on macOS for GetProcInfo r=jld,mstange
To run task_for_pid() on child processes, we need the child task port for
security reasons. This port can be obtained via a Mach IPC exchange.

This is what GeckoChildProcessHost::GetChildTask() provides, so we use it
in cocoa's version of GetProcInfo()

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

--HG--
extra : moz-landing-system : lando
2019-06-07 07:48:37 +00:00
Matt Woodrow
4908a84df2 Bug 1555891 - Merge PVideoDecoderManager into PRemoteDecoderManager. r=jya,jld
Differential Revision: https://phabricator.services.mozilla.com/D33586

--HG--
extra : moz-landing-system : lando
2019-06-11 02:01:34 +00:00
Bob Owen
25580a443a Bug 1464032 Part 9: Add a D3D11 device to be used on canvas threads in the GPU process. r=jrmuizel 2018-12-02 14:17:02 +00:00
Jean-Yves Avenard
5cf6be0c13 Bug 1554438 - P3. Shutdown threads whenever they exist. r=mattwoodrow
We only attempted to shutdow WinCompositorWindowThread if the WebRender thread hadn't not been started.

However, it is possible that the value of gfxVars::UseWebRender() changed since GPUParent::Init got called.

So don't assume anything, shutdown the thread if it still exists.

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

--HG--
extra : moz-landing-system : lando
2019-05-26 22:24:49 +00:00
Jean-Yves Avenard
022c57caf3 Bug 1550422 - P23. Remove now unused gfxPrefs. r=jrmuizel
And with some tidying some comments and removing stray #include "gfxPrefs.h"

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

--HG--
extra : moz-landing-system : lando
2019-05-26 14:31:53 +00:00
Jean-Yves Avenard
68d537fd60 Bug 1550422 - P22. Remove gfxPref sync with GPU process. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D31467

--HG--
extra : moz-landing-system : lando
2019-05-26 14:31:27 +00:00
Jean-Yves Avenard
23436e1811 Bug 1550422 - P15. Move Skip and Once gfxPrefs to StaticPrefs. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D31259

--HG--
extra : moz-landing-system : lando
2019-05-26 14:30:14 +00:00
Jean-Yves Avenard
04a34db033 Bug 1550422 - P12. Convert Live gfxPrefs into StaticPrefs. r=jrmuizel
gfxPrefs Live preferences are almost identical to StaticPrefs.

We leave aside for now those that set a custom change callback as this feature isn't yet supported in StaticPrefs.

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

--HG--
extra : moz-landing-system : lando
2019-05-26 14:29:42 +00:00
Jean-Yves Avenard
0a1e2b53cb Bug 1550422 - P6. Release object early when error. r=mattwoodrow
No need to keep the object alive.

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

--HG--
extra : moz-landing-system : lando
2019-05-25 10:12:49 +00:00
Jean-Yves Avenard
51808a6f27 Bug 1550422 - P4. Sync preferences when they changed. r=mattwoodrow
This will allow to remove gfxPrefs later. On Windows in particular, the need to decide gfxPrefs vs StaticPrefs for the WMF decoders has caused several bugs in the past.
We will remove the confusion as a consequence.

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

--HG--
extra : moz-landing-system : lando
2019-05-25 10:12:51 +00:00
Jean-Yves Avenard
935f64f3bb Bug 1550422 - P2. add shared pref serializer/deserializer to GPU process. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D30587

--HG--
extra : moz-landing-system : lando
2019-05-26 02:33:12 +00:00
Jean-Yves Avenard
08bbc4b814 Bug 1554438 - P1. Don't rely on a live pref to determine order of actions. r=sotaro
The value of the pref may change between start and shutdown.

So we shouldn't rely on that pref to determine if we need to shutdown on thread started earlier if that pref was true.

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

--HG--
extra : moz-landing-system : lando
2019-05-26 02:17:55 +00:00