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

661 Коммитов

Автор SHA1 Сообщение Дата
Randall Barker 000c7b874b Bug 1392705 - part 1: Make UiCompositorControllerChild::Destroy synchronous r=dvander
Ensure the UiCompositorControllerChild is shutdown in the UI thread
before the compositor thread is shutdown by the main thread.

MozReview-Commit-ID: 4hXYxSi9tzz

--HG--
extra : rebase_source : fd265b39986f453ea9ab59c60bb80319b74e8f9c
2017-08-31 14:26:46 -07:00
Andrew Osmond 2b3ebd2479 Backed out changeset 727f0d09e299 (bug 1399453) because the annotations are no longer needed. 2017-09-15 15:11:29 -04:00
FSeita f3d5101a06 Bug 1376333 - Improve naming of accumulation types & variables r=Dexter
MozReview-Commit-ID: F9w7CLUOP6r

--HG--
extra : rebase_source : 5330f9cb47145f5867a92277f4fa6c610e8eed56
2017-09-13 11:20:36 +02:00
Sebastian Hengst 006a58c35d merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: 2iVDKexRjxu
2017-09-13 23:58:43 +02:00
Andrew Osmond 85db0466a2 Bug 1399453 - Temporarily annotate crash reports with compositor thread owners. r=dvander
From the crashes associated with bug 1389021, we know that some
compositor thread IPDL owners are not being cleaned up properly. We do
not know which protocols are causing the problem, so we temporarily will
annotate the logs with the ownership status. This should be limited to
under a dozen instances of the protocols.

This change will be backed out after a few builds are produced with it
and we see the first crash reports with the relevant data.
2017-09-13 11:16:05 -04:00
Jean-Yves Avenard 66188b449c Bug 1352016 - P3. Check if NV12 rendering is usable when allocating D3D11 surface. r=mattwoodrow
MozReview-Commit-ID: EgA6lEeIyBj

--HG--
extra : rebase_source : cb3c4e5e864085fe76514096d6d9aa9b49d0a334
2017-09-10 17:54:31 +02:00
Wes Kocher 7a8b3e02a0 Backed out 4 changesets (bug 1352016) for gfx crashes in test_TelemetryEnvironment.js a=backout CLOSED TREE
Backed out changeset dd7342e18e67 (bug 1352016)
Backed out changeset ebc7c92e8dc0 (bug 1352016)
Backed out changeset e79e512f803f (bug 1352016)
Backed out changeset 9eed6a69298c (bug 1352016)

MozReview-Commit-ID: CYDuqu0Hmtb
2017-09-12 17:09:40 -07:00
Jean-Yves Avenard cf367ef0c5 Bug 1352016 - P2. Check if NV12 rendering is usable when allocating D3D11 surface. r=mattwoodrow
MozReview-Commit-ID: EgA6lEeIyBj

--HG--
extra : rebase_source : 7b8a8f1669d268a5e1512320b891b35722fe4c14
2017-09-10 17:54:31 +02:00
Sotaro Ikeda 354fb7d239 Bug 1390138 - Add render() error handling to gecko. r=jrmuizel 2017-09-05 15:18:15 -04:00
sotaro 11c145a7c1 Bug 1394338 - Add WebRender error handling to RendererOGL r=nical 2017-08-30 09:10:22 +09:00
Gabriele Svelto 7387dc791b Bug 1393435 - Remove unnecessary inclusions of the crash reporter header files; r=mconley
MozReview-Commit-ID: 3tdFDrTYql8

--HG--
extra : rebase_source : cc862688f19afb8a5cf8c7cf915a5d3d45f041b5
2017-08-07 14:10:02 +02:00
sotaro d89ca5a049 Bug 1392556 - Initialize DWriteFactory in GPUParent::RecvInit() r=jrmuizel 2017-08-24 10:47:30 +09:00
Bevis Tseng 0835c5a619 Bug 1392213 - Label nsIThread::AsyncShutdown. r=billm
--HG--
extra : rebase_source : eb6b01ee6bce442108e6126b2fa2e962df57cad5
2017-08-21 17:54:32 +08:00
Michael Layzell 5d81a3b535 Bug 1380081 - Part 9: Transmit BHR Hangs from the Content and GPU process to the parent process, r=froydnj
BHRTelemetryService only runs in the parent process (and we can only submit
pings from there), so we need to send the data which we collect in the GPU and
Content processes over IPC to the parent process.

MozReview-Commit-ID: 8B5uZKbjNbU
2017-08-15 16:35:42 -04:00
Ryan Hunt e13ee71316 Bug 1377950 - Stub in a function for resetting all compositors with GPUProcessManager. r=jrmuizel
MozReview-Commit-ID: HsKCGli3TOM

--HG--
extra : rebase_source : 60a06588747feeb6d3ed0543c38715adea89957d
2017-08-11 02:51:23 -05:00
Sebastian Hengst 41113ae3fc Backed out changeset 0b6c4c95323e (bug 1380081) 2017-08-11 09:28:16 +02:00
Michael Layzell 9175dce461 Bug 1380081 - Part 9: Transmit BHR Hangs from the Content and GPU process to the parent process, r=froydnj
BHRTelemetryService only runs in the parent process (and we can only submit
pings from there), so we need to send the data which we collect in the GPU and
Content processes over IPC to the parent process.

MozReview-Commit-ID: 8B5uZKbjNbU
2017-08-10 15:55:12 -04:00
Sebastian Hengst 765cc1b925 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: JhesEg4Bxjy
2017-08-04 19:28:27 +02:00
sotaro a773ee4276 Bug 1354411 - Rebuild CompositorSessions if WebRender is disabled r=kats
When WebRender creation is failed, WebRender is disabled in gecko. There is a case that WebRenderBridgeParents exist when WebRender is disabled. To handle this, gecko needs to rebuild all CompositorSessions.

There is also a problem related to gfxVars::UseWebRender on compositor thread. If e10s is enabled, but no-gpu process(default on linux and mac), gfxVars::UseWebRender change is soon notified by compositor thread tasks. If WebRender creation failure happens at 2nd WebRender creation, several WebRenderBridgeParents for 1st WebRender could exist. IPC messages from WebRenderLayerManager are normally async, then there is a chance that the WebRenderBridgeParents receive the messages after the gfxVars::UseWebRender change. Further the gfxVars::UseWebRender change in content process could be delayed than WebRenderBridgeParents, then content process does not have a way to stop sending PWebRenderBridge IPC until the change of gfxVars::UseWebRender is received. WebRenderBridgeParent related tasks handle the message, but some tasks are done based on gfxVars::UseWebRender. At this time, gfxVars::UseWebRender returned false on compositor thread, then it cause unexpected result for WebRenderBridgeParent and WebRender. To addres this inconsistent situation, WebRenderBridgeParent related tasks on compositor thread stop to use gfxVars::UseWebRender.
2017-08-04 14:36:41 +09:00
Kartikaya Gupta f459d3dc28 Bug 1387046 - Add missing field to operator== in CompositorOptions. r=dvander
MozReview-Commit-ID: 8sZgFKQsnun

--HG--
extra : rebase_source : 58905ee8f66d71cb09a930edbaebd7f719c68b96
2017-08-03 09:33:42 -04:00
Michael Smith 6fcebfbe5b Bug 1373739 - Make headless compositing Windows-compatible, in addition to Linux. r=dvander
To make the HeadlessCompositorWidget work under Windows as well as Linux, I had
to change the way that I hooked it into the existing CompositorWidget system.
Under GTK, the CompositorWidgetInitData and CompositorWidgetDelegate types
provided the information needed by the headless compositor widget already (the
widget client size). On Windows, however, the definitions of these types
differ, and the client size information is simply retrieved from the platform
APIs when needed.

After this patch, CompositorWidgetDelegate is renamed to
PlatformCompositorWidgetDelegate, and a new base class called
CompositorWidgetDelegate is added with "AsPlatformSpecificDelegate()" and
"AsHeadlessCompositorWidget()" methods. In non-headless mode, widgets use
AsPlatformSpecificDelegate() to access the Windows- and GTK-specific delegate
APIs. In headless mode, AsHeadlessCompositorWidget() is used to access the
singular CompositorWidget implementation for headless. Meanwhile, the
CompositorWidgetInitData IPDL type is made into a union which always contains a
headless-specific HeadlessCompositorWidgetInitData struct and under GTK and
Windows also contains an {X11,Win}CompositorWidgetInitData struct.

This also includes a small patch to ensure that the GPU process and
hardware-accelerated compositing are always disabled under headless mode. These
features weren't activated by default in the Linux environments I tested in, but
did end up activating (and then promptly crashing Firefox) when I tested on
Windows.

MozReview-Commit-ID: CocPoHBDV7H

--HG--
extra : rebase_source : 4581fa63aa3a9f32a8dc2672015a35b9be01b20f
2017-07-06 17:45:34 -07:00
Sylvestre Ledru 7c0ae251cd Bug 1381253 - Remove redundant control flow declarations rs=ehsan
MozReview-Commit-ID: FFxP4aMCbOL

--HG--
extra : amend_source : 3aec108430b11048f47ffe19d5da7ac5034770a9
2017-07-15 19:03:04 +02:00
Andrew Osmond 69da7c2120 Bug 1381095 - Fallback correctly to non-WebRender if the GPU process/WebRender are disabled when creating a remote compositor session. r=dvander 2017-07-20 09:20:22 -04:00
Kevin Chen 91dc0db35c Bug 1364563 - Add a path for content process only device reset. r=dvander 2017-07-18 23:09:00 -04:00
Ehsan Akhgari 6bc10c105a Backout changeset bc5d9e5f1c02 (bug 1364563) because of build failures
This reverts commit a5224fd3910ee5116669728fcd5b154e051371fd.
2017-07-19 00:27:36 -04:00
Kevin Chen 563c00da4d Bug 1364563 - Add a path for content process only device reset. r=dvander 2017-07-17 00:13:00 -04:00
Dominic Farolino c3f7031cd8 Bug 1379813 - Annotate crash reports with the number of times the GPU process has been launched. r=dvander 2017-07-13 13:27:00 -04:00
Andrew Osmond 7d1a4b1e31 Bug 1377869 - Ensure that CompositorManagerChild will be reinitialized if the GPU process reuses its PID. r=dvander 2017-07-15 09:13:18 -04:00
Carsten "Tomcat" Book 31311070d9 merge mozilla-inbound to mozilla-central a=merge 2017-07-11 12:51:59 +02:00
David Anderson 399881cdfc Report when constant buffer offsetting doesn't work. (bug 1379413 part 2, r=bas)
--HG--
extra : rebase_source : 881471eca6ae17e4b9810bc34b609d58c6eb0b3d
2017-07-11 00:13:26 -07:00
David Anderson dd94534a4f Disable Advanced Layers when the sanity test fails. (bug 1377866 part 3, r=mchang) 2017-07-10 19:30:52 -07:00
Kevin Chen 863fd1589a Bug 1364563 - Update render mode and fallback to software solution when GPU process is killed; r=dvander
MozReview-Commit-ID: 5Sewt2wtku8

--HG--
extra : rebase_source : 94b1743f4e42d2a4526521f61fea9fe3b89a76ec
2017-06-29 00:27:03 +08:00
Masayuki Nakano d6e921676c Bug 1377672 - part3: IMEStateManager::NotifyIME() should ignore notifications and requests which comes from unexpected process r=m_kato,smaug
IME should receive notifications and requests only from proper process.  E.g., IME shouldn't commit composition by a request which came from previous focused process.

This patch makes that IMEStateManager::NotifyIME() takes pointer to TabParent optionally.  If the request or notification came from remote process, it should be non-nullptr.  Then, this makes it ignore notifications and requests from unexpected process.

Note that this patch also touches some gfx headers because they use |ipc::| but compiler is confused at the ambiguousness between |mozilla::ipc::| and |mozilla::dom::ipc::|.

Finally, this patch changes the NS_ASSERTION in IMEHandler::OnDestroyWindow() to MOZ_ASSERT because the orange caused by the NS_ASSERTION was not realized since there was already an intermittent orange bug caused by different NS_ASSERTION.

MozReview-Commit-ID: 9CgKXQRJWmN

--HG--
extra : source : f3b5711908870c5e0e852a399a07e0ae721a12f1
2017-07-06 00:47:40 +09:00
David Anderson 7eedde148d Fix race where in-process GPU endpoints could have the wrong PID. (bug 1374258, r=rhunt) 2017-06-29 11:35:45 -07:00
Andrew Osmond e3fd385077 Bug 1376590 - When disabling the GPU process, ensure its dependencies are initialized for the same process. r=dvander 2017-06-28 11:31:42 -07:00
Bill McCloskey f115503a0b Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-26 14:19:58 -07:00
David Anderson ea272c6f03 Add memory reporting. (bug 1365879 part 26, r=mattwoodrow) 2017-06-23 14:23:14 -07:00
David Anderson 7df9b05034 Add MLGPU feature bits and compositor initialization. (bug 1365879 part 21, r=mattwoodrow) 2017-06-23 14:23:12 -07:00
Andrew Osmond ee57a1a455 Bug 1374278 - Fix a race condition between GPUChild and CompositorManagerChild when the GPU process crashes. r=dvander 2017-06-23 16:12:35 -04:00
Carsten "Tomcat" Book 1f871b61e4 Backed out changeset 9d0048e04446 (bug 1365879) 2017-06-23 12:15:32 +02:00
Carsten "Tomcat" Book 86edec6643 Backed out changeset 20203c94ef23 (bug 1365879) 2017-06-23 12:15:21 +02:00
Carsten "Tomcat" Book 5f51e5596e merge mozilla-inbound to mozilla-central a=merge 2017-06-23 11:28:19 +02:00
David Anderson 5e5166d309 Add memory reporting. (bug 1365879 part 26, r=mattwoodrow)
--HG--
extra : rebase_source : a19fc78fb107d6899244632d18cdb654a4bae8e9
2017-06-22 21:12:21 -07:00
David Anderson 0505938414 Add MLGPU feature bits and compositor initialization. (bug 1365879 part 21, r=mattwoodrow)
--HG--
extra : rebase_source : 3d8d1a9619d997a2de9eea4e734a0457cd326e91
2017-06-22 21:12:19 -07:00
domfarolino@gmail.com af4e81298b Bug 1373088 - Don't use a timeout for compositor process startup when debugging child process. r=milan
--HG--
extra : rebase_source : 39e5c564fc7b0c2f7e94535a9c7b17bfd03914e3
2017-06-19 13:12:00 -04:00
Milan Sreckovic 012064db78 Bug 1337063: Transfer child's initial ContentDeviceData with SendSetXPCOMProcessAttributes - r=dvander
MozReview-Commit-ID: 8Er44xSDHhb

--HG--
extra : rebase_source : 464a09246ca095ba363f988fb9749680d8518926
2017-06-22 13:45:48 -04:00
Chris H-C 1e2b2d46b4 bug 1369041 - Allow child processes to discard data when overwhelmed r=bsmedberg,gfritzsche f?bsmedberg
It is possible in extreme cases that the Telemetry IPC Accumulator might be
starved long enough that it cannot drain its stored accumulations for a while.

Once we hit 5x the high water mark, start discarding data.

Count each piece and type of discarded data and report it via a custom IPC
message.

MozReview-Commit-ID: JayRpa5QPec

--HG--
extra : rebase_source : eded449c932ced64bdb64e9da1a989407f4f2daf
2017-06-09 09:53:42 -04:00
domfarolino@gmail.com d4253766db Bug 1274663 - Expose API to trigger device reset. r=dvander
--HG--
extra : rebase_source : 5a9d2757f8e7378083ce42131d5a250027569814
2017-06-15 14:34:00 -04:00
Andrew Osmond 27eaaaed2f Bug 1365927 - Part 4. Replace PCompositorBridge integration hooks with PCompositorManager. r=dvander 2017-06-14 11:39:59 -04:00
Andrew Osmond a3d11c8688 Bug 1365927 - Part 1. Add missing headers and other build housekeeping. r=dvander 2017-06-14 11:39:59 -04:00
Wes Kocher bcf1a1c32e Backed out 6 changesets (bug 1365927) for build failures in ipc_message_utils.h a=backout CLOSED TREE
Backed out changeset 11fc0da380a2 (bug 1365927)
Backed out changeset 9f1dee5a6c42 (bug 1365927)
Backed out changeset f4954c824f5c (bug 1365927)
Backed out changeset 144ac6cc76f8 (bug 1365927)
Backed out changeset 961e782cf7c7 (bug 1365927)
Backed out changeset 12a093fb86a4 (bug 1365927)

MozReview-Commit-ID: 6CDxqOJzMjE
2017-06-13 12:45:03 -07:00
Andrew Osmond c17a8c1ea1 Bug 1365927 - Part 4. Replace PCompositorBridge integration hooks with PCompositorManager. r=dvander 2017-06-13 15:19:36 -04:00
Andrew Osmond 230fa0dcd8 Bug 1365927 - Part 1. Add missing headers and other build housekeeping. r=dvander 2017-06-13 15:17:59 -04:00
Ryan Hunt fcb54217c6 Bug 1371527 - Add LayersMessageUtils for IPC serialization of mozilla::layers structs. r=dvander
MozReview-Commit-ID: 7UAtrnnlSqI

--HG--
rename : gfx/ipc/GfxMessageUtils.h => gfx/layers/ipc/LayersMessageUtils.h
extra : rebase_source : 99abcb49ede377e5c31440b2d21a5bd79cda65e0
extra : amend_source : d1820fb6e7aee5e0dbcc83242e9264d8f4e7a4d0
2017-06-08 23:32:13 -05:00
Markus Stange 26469737d1 Bug 1369859 - Add MOZ_GECKO_PROFILER ifdefs around #includes of ProfilerParent.h. r=njn
MozReview-Commit-ID: HS3BBsrHVHu

--HG--
extra : rebase_source : b8439920e82f067bb1a05d513d029363a8c2a24e
2017-06-02 16:03:39 -04:00
Markus Stange e2336b07a8 Bug 1330185 - Use a top-level PProfiler protocol to control the profiler in other processes. r=billm,njn
MozReview-Commit-ID: EROfGuYQ6a0

--HG--
extra : rebase_source : be0aa1b9c7963882e8e7d47964f2da5b670ab10a
extra : intermediate-source : e6f368f2d8741f2a9655b288d49b59fbbd6b90b7
extra : source : 51cdc2541486d5ddf2d385ec0459a9ec38b8775b
2017-05-30 15:06:14 -04:00
sotaro 1885be3a3f Bug 1366915 part 2 - Make CompositorBridgeChild allocate pipeline id for async image pipeline r=nical 2017-05-30 09:59:44 +09:00
Georg Fritzsche 31c702afef Bug 1361661 - Part 2 - Make Telemetry IPC code pass around Telemetry::ProcessID. r=dexter
Switching to Telemetry::ProcessID allows us to break out extension process data from the content process data.
2017-05-23 13:47:58 +07:00
Phil Ringnalda 6368ef89e2 Backed out 5 changesets (bug 1330185, bug 1330184) for leaking an nsTArray_base from the plugin process on Win8
Backed out changeset e6f368f2d874 (bug 1330185)
Backed out changeset 2b8d50fcb20f (bug 1330184)
Backed out changeset dbe452a9eebb (bug 1330184)
Backed out changeset e13b9e798e16 (bug 1330184)
Backed out changeset 52489c7eadaf (bug 1330184)

MozReview-Commit-ID: 8L20BZ5E3t2
2017-05-22 19:45:35 -07:00
Markus Stange 9bf6b534a2 Bug 1330185 - Use a top-level PProfiler protocol to control the profiler in other processes. r=njn, r=billm
MozReview-Commit-ID: EROfGuYQ6a0

--HG--
extra : rebase_source : 3495ccc7700703cc587f571dfc12e46a682c29a2
extra : source : 51cdc2541486d5ddf2d385ec0459a9ec38b8775b
2017-05-22 13:47:02 -04:00
Sebastian Hengst 42925f8817 Backed out changeset 8fd3861205d1 (bug 1361661) 2017-05-22 20:40:22 +02:00
Georg Fritzsche 057ea3f2f7 Bug 1361661 - Part 2: Make Telemetry IPC code pass around Telemetry::ProcessID. r=dexter
Switching to Telemetry::ProcessID allows us to break out extension process data from the content process data.

--HG--
extra : rebase_source : ab334ad33b879dce373f810b452b73747ba82109
extra : source : 9cf5185e6d6fd15b1dd35b1552317ebd5ff258ed
2017-05-22 15:40:58 +07:00
Sebastian Hengst b3a2c130d0 Backed out changeset 9cf5185e6d6f (bug 1361661) 2017-05-22 16:19:26 +02:00
Georg Fritzsche 0a9d674afd Bug 1361661 - Part 2: Make Telemetry IPC code pass around Telemetry::ProcessID. r=dexter
Switching to Telemetry::ProcessID allows us to break out extension process data from the content process data.
2017-05-22 15:40:58 +07:00
Markus Stange 42b5d166ec Back out bug 1330184 and bug 1330185 because of test failures.
MozReview-Commit-ID: ILD4mevlSU6
2017-05-21 15:11:15 -04:00
Markus Stange b5fdcd479d Bug 1330185 - Use a top-level PProfiler protocol to control the profiler in other processes. r=njn, r=billm
MozReview-Commit-ID: EROfGuYQ6a0

--HG--
extra : rebase_source : de266bda4fc2d6532ff45a6d548b13cd0b4f7206
extra : histedit_source : ad5c4e140c068f17c51d5085fd88ac691e50ab4f
2017-05-21 14:06:50 -04:00
Botond Ballo 933619aa8d Bug 1349750 - Have AsyncDragMetrics use ScrollDirection instead of rolling its own direction enum. r=kats
MozReview-Commit-ID: FKK4OBx12oa

--HG--
extra : rebase_source : 538579bd965863ecac5d7846f1c5df232b8a2108
2017-05-10 15:22:04 -04:00
Botond Ballo 9127b9d4f3 Bug 1349750 - Move the scroll track extents from AsyncDragMetrics to ScrollThumbData. r=kats
To conserve space in LayerAttributes, we only store the extents along the
relevant axis.

MozReview-Commit-ID: GAL8Oa2NOde

--HG--
extra : rebase_source : 9420d0fb36175e190cbff6e162fd41d8e5240c81
2017-05-05 15:54:27 -04:00
Botond Ballo 3bc007b384 Bug 1349750 - Move the scroll thumb length from AsyncDragMetrics to ScrollThumbData. r=kats
MozReview-Commit-ID: Atp7Kgn6adM

--HG--
extra : rebase_source : f22d89f6b8397984e48657dda7f68826c3cc90f8
2017-05-03 20:37:14 -04:00
Botond Ballo 0f1863f7ac Bug 1349750 - Introduce a PlainOldDataSerializer utility class and use it for SimpleLayerAttributes. r=kats
MozReview-Commit-ID: 2tntLfnAINy

--HG--
extra : rebase_source : 2da85ab1c4695ef23a29f1289fa996d879cd8e7b
2017-05-03 20:21:11 -04:00
David Anderson 42e57ec6d3 Remove old device reset and compositor swapping code. (bug 1363126 part 3, r=rhunt) 2017-05-11 22:44:28 -07:00
David Anderson 57800cc0bd Handle in-process device resets by recreating the entire rendering stack. (bug 1363126 part 2, r=rhunt) 2017-05-11 22:44:27 -07:00
David Anderson 27df5ad5bd Handle remote device resets by recreating the entire rendering stack. (bug 1363126 part 1, r=rhunt, ipc_r=billm) 2017-05-11 22:44:27 -07:00
Gerald Squelart bc7b6779e4 Bug 1356138 - Backout bug 1337063 (Msg_GetGraphicsDeviceInitData opt) for Talos regression - r=dvander
MozReview-Commit-ID: LS1Gg1HRwKo

--HG--
extra : rebase_source : 8b20bc37b20feac4c0b590c8b286a9ee834646e2
2017-05-09 14:40:11 +12:00
David Anderson 30e1319799 Wait for CreateCompositorDevices to finish before creating DeviceAttachmentsD3D11. (bug 1362145, r=bas) 2017-05-05 01:04:19 -07:00
Nicholas Nethercote ea25e62e3c Bug 1360471 (part 4) - Use a bitfield to represent profiler features. r=mstange.
Currently the profiler mostly uses an array of strings to represent which
features are available and in use. This patch changes the profiler core to use
a uint32_t bitfield, which is a much simpler and faster representation.
(nsProfiler and the profiler add-on still use the array of strings, alas.) The
new ProfilerFeature type defines the values in the bitfield.

One side-effect of this change is that profiler_feature_active() now can be
used to query all features. Previously it was just a subset.

Another side-effect is that profiler_get_available_features() no longer incorrectly
indicates support for Java and stack-walking when they aren't supported. (The
handling of task tracer support is unchanged, because the old code handled it
correctly.)
2017-05-01 14:23:34 +10:00
Nicholas Nethercote cc78872f8c Bug 1360471 (part 3) - Rename various "thread name filters" identifiers as "filters". r=mstange.
The new names are more concise and matches common usage elsewhere (e.g.
profiler_start() arguments).

This patch is similar to bug 1358074 part 5.
2017-05-01 13:42:53 +10:00
David Anderson 413ea1b941 Pre-initialize DeviceAttachmentsD3D11 on the compositor thread, immediately after the GPU process initializes. (bug 1360766 part 3, r=bas) 2017-04-30 11:38:59 -07:00
Kartikaya Gupta b21511b7c0 Merge m-c to graphics
MozReview-Commit-ID: GdyXEYZsVuX
2017-04-25 08:32:48 -04:00
Kartikaya Gupta 2e1380aecf Merge m-c to graphics
MozReview-Commit-ID: 5zsIClrx1FB
2017-04-21 10:01:47 -04:00
Kartikaya Gupta 1459e240f4 Bug 1357754 - Add ScrollDirection IPC serialization code. r=botond
In the next patch we'll need to send ScrollDirection over IPDL so we
need to add serialization code for it.

MozReview-Commit-ID: HK8ibuhhnkS
2017-04-20 10:38:05 -04:00
Iris Hsiao 3b17383f8d Merge mozilla-central to autoland 2017-04-25 11:28:40 +08:00
David Parks 532fe74f04 Bug 1347710 - Enable sandbox protections for the Windows GPU process. r=bobowen
The sandbox works with levels.  The GPU sandbox level defaults to 1 in all builds.  It is controlled by security.sandbox.gpu.level.
2017-04-24 09:46:09 -07:00
Kartikaya Gupta 1e8738cabb Merge m-c to graphics
MozReview-Commit-ID: 7iqIrSl2VpU
2017-04-15 17:05:27 -04:00
Sebastian Hengst 8bd051237a merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: JpAhOPjgvkF
2017-04-15 19:59:24 +02:00
sotaro 43525e6cb0 Bug 1356190 - Fix GetNextExternalImageId() r=jrmuizel 2017-04-14 17:06:09 +09:00
Wes Kocher 25d50f2c30 Merge inbound to central, a=merge 2017-04-12 14:39:09 -07:00
Markus Stange 59446b4f09 Bug 1321617 - Tell the CrossProcessProfilerController whether a profile is a response to a GatherProfile request or whether it was sent because the process was exiting. r=mconley
MozReview-Commit-ID: BLkaeZqtRhv

--HG--
extra : rebase_source : b0271115a66afbf54d98b5bad61165f815f5bd8c
extra : histedit_source : 299cccc9cc8c06de4d61686ff49d2b0e7649da78
2017-04-12 16:44:31 -04:00
Jay Harris 2c1fa18863 Bug 1338011 - Adds some telemetry probes - f=bsmedberg r=gerald
MozReview-Commit-ID: BmwEjBiCBNo

--HG--
extra : rebase_source : 1d181a6dd1385304c6c45a22e99563f570e31374
2017-04-15 09:36:42 +12:00
Jay Harris 6ce213e795 Bug 1338011 - Adds an intermediate fallback when the GPU process crashes - r=gerald
MozReview-Commit-ID: 9x1ckaWagcE

--HG--
extra : rebase_source : 2962f8572dd36b2dfecb7bb30ba515fc7c6323c9
2017-04-15 09:34:01 +12:00
Botond Ballo 9323d2bb93 Bug 1355374 - Use the AsyncDragMetrics to communicate the scroll thumb length to APZ. r=mstange
MozReview-Commit-ID: DJUKr4s9nWQ

--HG--
extra : rebase_source : d5f9a265098c343416fc933135b4f28a808cd49e
2017-04-21 13:57:11 -04:00
Bill McCloskey ff14bfe5f0 Bug 1349699 - Close GPU channel unconditionally (r=dvander)
MozReview-Commit-ID: 4Ge2ib9p1i
2017-04-11 13:15:05 -07:00
Gerald Squelart 63dbe37188 Bug 1337063 - Transfer child's initial ContentDeviceData with SendSetXPCOMProcessAttributes - r=dvander
MozReview-Commit-ID: IWCgL9aCusW

--HG--
extra : rebase_source : 31d901f99105224ac7445b487813b010fd643bb9
2017-04-12 09:37:35 +12:00
Kevin Chen 4e82c4bafe Bug 1352376 - Update device data while processing device reset; r=dvander
MozReview-Commit-ID: 9sqdRhsX5HU

--HG--
extra : rebase_source : 00ce838008d20546f1f096d690455117efa9000d
2017-04-05 15:17:36 +08:00
Kartikaya Gupta a13700a7ce Bug 1350638 - Remove sync GetCompositorOptions call added in the last patch. r=dvander
This call should be a no-op in the real world, and should be safe to
remove. The patch also adds an assert to ensure that the call is
effectively a no-op.

MozReview-Commit-ID: BXdcnHULWW2

--HG--
extra : rebase_source : 03c57d2d6dbfb1d330ce7eab6d842d8375d33208
2017-04-09 17:31:06 -04:00
Kartikaya Gupta 1bfa62105b Bug 1350638 - Remove sync GetCompositorOptions call in TabChild::InitRenderingState. r=dvander
The goal of this patch is to remove the call to the sync IPC
GetCompositorOptions message from TabChild::InitRenderingState. In order
to this, we have InitRenderingState take the CompositorOptions as an
argument instead, and propagate that backwards through the call sites.
Eventually we can propagate it back to a set of already-sync IPC
messages in PCompositorBridge that are used during layers id
registration (NotifyChildCreated, NotifyChildRecreated, etc.). Therefore
this patch effectively piggybacks the CompositorOptions sync IPC onto
these pre-existing sync IPC messages.

The one exception is when we propagate it back to the AdoptChild call.
If this message were sync we could just use it like the others and have
it return a CompositorOptions. However, it is async, so instead we add
another call to GetCompositorOptions here temporarily. This will be
removed in the next patch.

MozReview-Commit-ID: AtdYOuXmHu4

--HG--
extra : rebase_source : 5b80831cf84d3a4b57b2214a12ccf8a896cfa3a7
2017-04-09 17:30:27 -04:00
David Anderson 0622d767aa Fix a race condition between VideoBridge and Compositor thread shutdown. (bug 1356365, r=mattwoodrow) 2017-04-20 19:32:48 -07:00
Randall Barker a606cd8b60 Bug 1335895 - Android GeckoView Dynamic Toolbar Version 3 r=botond,dvander,jchen,kats
This version of the Dynamic Toolbar moves the animation of the toolbar
from the Android UI thread to the compositor thread. All animation for
showing and hiding the toolbar are done with the compositor and a static
snapshot of the real toolbar.

MozReview-Commit-ID: BCe8zpbkWQt
2017-04-20 15:15:14 -07:00
David Anderson c10c9d57eb Don't synchronously send the initial layer tree mapping list to the GPU process. (bug 1350660 part 2, r=rhunt) 2017-04-03 15:13:38 -07:00
David Anderson 0f3b97ed9c When using the GPU process, combine layer ownership and window mapping into a single IPC message. (bug 1350660 part 1, r=rhunt, r=billm) 2017-04-03 15:13:37 -07:00
David Anderson dfbf7fe0d0 Add crash reporter annotations for the GPU process status. (bug 1343650, r=billm)
--HG--
extra : rebase_source : 28e0d023e99f66f518047f1a468c899ff52c590a
2017-04-03 15:11:27 -07:00
Markus Stange ca45875a78 Bug 1352237 - Fix a rebasing mistake so that we actually get profiles from the GPU process. r=dvander
MozReview-Commit-ID: A7SdPTl6rQ

--HG--
extra : rebase_source : 153a1306e42455544a702e16227cdfe76fab0149
2017-03-30 17:58:25 -04:00
vincentliu 67a283ef9a Bug 1314543 - Make EnsureGPUReady() returns bool to make sure GPU process is readay. r=dvander 2017-03-30 09:23:24 +08:00
Sotaro Ikeda d4d0425579 Bug 1323316 - Use ANGLE for WebRender on Windows. r=jrmuizel,kats
MozReview-Commit-ID: Fg5GEWNRtIu
2017-03-29 10:14:19 -04:00
Markus Stange f1e72b72af Bug 1321907 - Hook up the GPU process to the profiler. r=dvander
MozReview-Commit-ID: 8Xq3FPprAF8

--HG--
extra : rebase_source : 5fc143275081bd736574051e90b3dfa821a4be9a
2017-03-21 19:39:13 -04:00
David Anderson 8082fe14ae Remove references to the Direct3D9 compositor. (bug 1318558 part 1, r=mattwoodrow) 2017-03-08 00:17:36 -08:00
Georg Fritzsche be604ef5af Bug 1313326 - Part 1 - Support recording events in child processes. r=dexter,froydnj 2017-02-14 14:43:51 +01:00
Carsten "Tomcat" Book d0bd960945 merge mozilla-inbound to mozilla-central a=merge 2017-03-06 10:53:27 +01:00
Matt Woodrow ef5a44cc58 Bug 1340117 - Batch ReadLock intializer into a separate IDPL message to avoid hitting the file descriptor limit. r=dvander 2017-02-27 16:12:12 +13:00
Kan-Ru Chen 44755dd101 Bug 1344074 - make sure ParamTraits<mozilla::Array<T, Length>>::Read use the correct type. r=mattwoodrow
MozReview-Commit-ID: Id4pvQJe6A4

--HG--
extra : rebase_source : 7e674812ab2b8af79caf2239d3db5aa31f7b40b0
2017-03-03 19:46:00 +08:00
Sebastian Hengst 53a7c500b2 Backed out changeset a6db4cae9990 (bug 1313326) for failing browser_UsageTelemetry_content.js on Linux x64 asan and debug (at least). r=backout on a CLOSED TREE 2017-03-01 19:48:09 +01:00
Georg Fritzsche 5094a3ae8d Bug 1313326 - Part 1: Support recording events in child processes. r=dexter, r=froydnj 2017-02-14 14:43:51 +01:00
Morris Tseng 33d74b040e Bug 1340871 - Add CompositorUseANGLE info to TextureFactoryIdentifier. r=nical
MozReview-Commit-ID: GjlZS6T2i0p
2017-02-23 16:46:56 +08:00
Georg Fritzsche ea73f15059 Bug 1339749 - Refactor Telemetry IPC code. r=chutten
--HG--
rename : toolkit/components/telemetry/TelemetryComms.h => toolkit/components/telemetry/ipc/TelemetryComms.h
rename : toolkit/components/telemetry/TelemetryIPCAccumulator.cpp => toolkit/components/telemetry/ipc/TelemetryIPCAccumulator.cpp
rename : toolkit/components/telemetry/TelemetryIPCAccumulator.h => toolkit/components/telemetry/ipc/TelemetryIPCAccumulator.h
2017-02-15 16:25:40 +01:00
David Anderson da43dac799 Store the child process thread id in CrashReporterHost. (bug 1338281 part 2, r=billm) 2017-02-15 14:44:29 -08:00
Carsten "Tomcat" Book 5447789960 Backed out changeset 3a90f1f64d8d (bug 1339749) for bustage on a CLOSED TREE
--HG--
rename : toolkit/components/telemetry/ipc/TelemetryComms.h => toolkit/components/telemetry/TelemetryComms.h
rename : toolkit/components/telemetry/ipc/TelemetryIPCAccumulator.cpp => toolkit/components/telemetry/TelemetryIPCAccumulator.cpp
rename : toolkit/components/telemetry/ipc/TelemetryIPCAccumulator.h => toolkit/components/telemetry/TelemetryIPCAccumulator.h
extra : amend_source : 2f4229556609103157901609fee02aaedcdb8606
2017-02-15 16:10:29 +01:00
Georg Fritzsche ce683a039f Bug 1339749 - Refactor Telemetry IPC code. r=chutten
--HG--
rename : toolkit/components/telemetry/TelemetryComms.h => toolkit/components/telemetry/ipc/TelemetryComms.h
rename : toolkit/components/telemetry/TelemetryIPCAccumulator.cpp => toolkit/components/telemetry/ipc/TelemetryIPCAccumulator.cpp
rename : toolkit/components/telemetry/TelemetryIPCAccumulator.h => toolkit/components/telemetry/ipc/TelemetryIPCAccumulator.h
2017-02-15 10:37:17 +01:00
Daniel Holbert 452a3b8454 Bug 1339609: Add #include for gfxPrefs.h to all source code that calls gfxPrefs APIs. r=jgilbert
MozReview-Commit-ID: GxWehmDYB3t

--HG--
extra : rebase_source : cd994e5c6abf777f77c5a708cbfb2f6afc49a44c
2017-02-14 14:01:59 -08:00
Ryan Hunt b782e91daf Bug 1337487 - Disable WebRender on windows when the GPU process is disabled r=kats
--HG--
extra : amend_source : 0203452b319c21331f1f0ebcd74e3f843b7785e1
2017-02-09 00:33:54 -06:00
Ryan Hunt 5e2990dc18 Merge m-c to graphics 2017-02-07 09:05:18 +00:00
Kartikaya Gupta 17c87e25f6 Bug 1337085 - Update RenderThread startup/shutdown to use a runtime flag rather than a compile-time one. r=sotaro
MozReview-Commit-ID: AVIEzb8MiGV
2017-02-06 22:22:44 -05:00
Brad Lassey a5e07b93bf bug 1303096 - Stop sending sync messages soon after content process start-up r=billm 2017-02-05 00:52:38 -05:00
sotaro 9365cc91a5 Bug 1335658 - Init RenderThread in GPUParent r=nical,kats 2017-02-03 10:22:49 +09:00
Ryan Hunt 3fe2c02ee1 Merge m-c to graphics 2017-01-27 10:07:37 -06:00
Kartikaya Gupta ca041b7c5a Merge m-c to graphics
MozReview-Commit-ID: FOyS87VawTT
2017-01-25 08:52:04 -05:00
David Anderson b0238351a0 Allow controlling the GPU process from xpcshell. (bug 1321492 part 8, r=mattwoodrow) 2017-01-26 16:35:55 -08:00
David Anderson 23572be8d6 Add memory reporting message support to PGPU. (bug 1321492 part 6, r=rhunt, r=erahm) 2017-01-26 16:35:54 -08:00
Kartikaya Gupta fdeff3fcd5 Merge m-c to graphics
MozReview-Commit-ID: 98wqjDW1RVK

--HG--
rename : browser/modules/CaptivePortalWatcher.jsm => browser/base/content/browser-captivePortal.js
rename : browser/modules/test/browser_CaptivePortalWatcher.js => browser/base/content/test/captivePortal/browser_CaptivePortalWatcher.js
rename : browser/base/content/test/plugins/browser_clearplugindata.html => browser/components/extensions/test/browser/file_clearplugindata.html
rename : modules/freetype2/src/gzip/zconf.h => modules/freetype2/src/gzip/ftzconf.h
extra : amend_source : b630126e257a8e2900ac0c3c735398a96ccd25e1
2017-01-23 09:45:48 -05:00
Kartikaya Gupta b66c471aef Merge m-c to graphics
MozReview-Commit-ID: LyU2woFOt7O
2017-01-18 13:48:56 -05:00
Kartikaya Gupta c7fda3b4ca Merge m-c to graphics
MozReview-Commit-ID: KzmBdQoXRRI
2017-01-17 09:01:06 -05:00
Kartikaya Gupta 1f7f98193e Bug 1326421 - Add a compositor option for WebRender being enabled or not. r=dvander
MozReview-Commit-ID: LeQRgKSn0Ql
2017-01-13 15:16:51 -05:00
Kartikaya Gupta 1f97dac250 Back out 4 csets from bug 1326421 because of various test failures. r=backout 2017-01-13 17:07:59 -05:00
Kartikaya Gupta c9bbaf820c Bug 1326421 - Add a compositor option for WebRender being enabled or not. r=dvander
MozReview-Commit-ID: LeQRgKSn0Ql
2017-01-13 15:16:51 -05:00
Alessio Placitelli 932126d970 Bug 1278556 - Enable child process scalar recording. r=chutten, f=gfritzsche,froydnj
MozReview-Commit-ID: IddrszBX0f5
2017-01-16 05:12:00 +01:00
David Anderson 89d48ae344 Use CompositableHandle in ImageNotification. (bug 1323957 part 3, r=mattwoodrow)
--HG--
extra : rebase_source : 2e5b108e68c2774f61776481ad9c4fa558923e38
2017-01-17 18:47:06 -08:00
Kartikaya Gupta ac6cc8ce06 Bug 1330037 - Propagate the CompositorOptions to all CompositorWidget instances. r=dvander
MozReview-Commit-ID: DFeeo2WNmhZ

--HG--
extra : rebase_source : d40bea7f726df007e3f079bb9576e1cbe17e3460
2017-01-12 17:29:42 -05:00
Kartikaya Gupta a6072f9a62 Bug 1330037 - Provide the CompositorBridgeParent with a CompositorOptions during construction that it holds for eternity. r=dvander
MozReview-Commit-ID: JnvNHUCF0AX

--HG--
extra : rebase_source : cf353f3397070c3133cf7eae8f0602a63f049e50
2017-01-12 17:29:41 -05:00
Kartikaya Gupta 6c437b31b9 Bug 1330037 - Introduce a CompositorOptions struct that holds options on a per-compositor basis. r=dvander
MozReview-Commit-ID: Kja7zpCDmp3

--HG--
extra : rebase_source : 001c841957ca7abe0ae3b3793b674e1986e4575c
2017-01-12 17:29:41 -05:00
David Anderson 9497d97e91 Send SimpleLayerAttributes separately from CommonLayerAttributes. (bug 1332567 part 6, r=mattwoodrow) 2017-01-24 16:41:18 -08:00
David Anderson 73fc4d8599 Rename the GPU process prefs. (bug 1330554, r=milan) 2017-01-16 23:51:24 -08:00
Carsten "Tomcat" Book a39a8fecdb Backed out changeset 74d2f566ed65 (bug 1331818) for memory leaks in url = about:support 2017-02-06 10:29:24 +01:00
David Anderson 849544ac0c Disabled "Terminate" button in about:support if no GPU process is running. (bug 1331818, r=gwright) 2017-02-05 21:56:00 -08:00
Sebastian Hengst 122ebc553b Backed out changeset e9d8a75a0dcc (bug 1303096) for failing various tests on Android 4.3 debug (e.g. test_saveHeapSnapshot_e10s_01.html). r=backout 2017-02-05 10:26:28 +01:00
Brad Lassey ecdf363246 bug 1303096 - Stop sending sync messages soon after content process start-up r=billm 2017-02-05 00:52:38 -05:00
George Wright 301ac256ca Bug 1324095 - Add GPU_PROCESS_INITIALIZATION_TIME_MS to track how long the GPU process takes to initialise excluding fork/xpcom initialisation times r=dvander,data-review=bsmedberg 2017-01-03 15:13:36 -05:00
Randall Barker f0c7845480 Bug 1328752 - part 1, Add UiCompositorController r=dvander 2017-01-20 11:01:29 -08:00
David Anderson 504484a456 Remove PLayer. (bug 1323539 part 2, r=mattwoodrow) 2016-12-21 10:43:47 -05:00
George Wright 5391bc3a05 Bug 1317796 - Rebucket and rename GPU_PROCESS_LAUNCH_TIME_MS to cater for launch times up to 64000ms r=dvander data-review=bsmedberg 2016-12-08 11:20:43 -08:00
Carsten "Tomcat" Book 9dd582c3dd Merge mozilla-central to autoland 2016-11-29 11:50:17 +01:00
Nathan Froyd 2ebbd09068 Bug 1320752 - remove mozilla/Function.h; r=gerald
We have std::function available now, which is likely to be somewhat more
efficient.
2016-11-28 11:03:53 -05:00