d5b7156ec45f277a225608c1e719cbb946850527: Bug 1348442: Part 1 - Allow loading preloaded stylesheets asynchronously. r=heycam
Kris Maglione <maglione.k@gmail.com> - Sun, 19 Mar 2017 19:33:49 -0700 - rev 397568
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1348442: Part 1 - Allow loading preloaded stylesheets asynchronously. r=heycam These changes allow us to asynchronously load pre-loaded stylesheets, in a way that's similar to ChromeUtils.compileScript. The new method returns a Promise which resolves to the preloaded sheet once it's finished loading. This will allow us to remove the last remaining use of synchronous channels in moz-extension: URLs. MozReview-Commit-ID: 7J52ff93YKT
596faf466bbc07412cfa2277ef4d233c748fc233: Bug 1349138 Edit transactions should store their editor instance with strong reference r=smaug
Masayuki Nakano <masayuki@d-toybox.com> - Tue, 21 Mar 2017 19:00:36 +0900 - rev 397567
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1349138 Edit transactions should store their editor instance with strong reference r=smaug Edit transactions should store their editor instance with strong reference and they should be released at destroying the editor. MozReview-Commit-ID: D67KU8WFxyo
b5c478da01df453d8e8630f98558f5500548298e: Bug 1315850 - Ask the GMPService for the GMP thread in GMPParent::ChildTerminated. r=gerald
Chris Pearce <cpearce@mozilla.com> - Fri, 24 Mar 2017 13:38:00 +1300 - rev 397566
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1315850 - Ask the GMPService for the GMP thread in GMPParent::ChildTerminated. r=gerald When we shutdown the browser while the GMPService is active we can end up leaking a GMPParent, GeckoMediaPluginServiceParent, and a Runnable. I tracked this down to the runnable dispatched to the GMP thread in GMPParent::ChildTerminated(). The dispatch of this runnable is failing as we are dispatching the runnable to a reference of the GMP thread which we have previously acquired, but that thread is now shutdown. So the dispatch fails, and if you look in nsThread::DispatchInternal() you'll see that we deliberately leak the runnable if dispatch fails! The runnable leaking means that the references it holds to the GMPParent and the GMP service parent leak. The solution in this patch is to not cache a reference to the GMP thread on the GMPParent; instead we re-request the GMP thread from the GMPService when we want it. This means that in the case where the browser is shutting down, GMPParent::GMPThread() will return null, and we'll not leak the runnable. We'll then follow the (hacky) shutdown path added in bug 1163239. We also need to change GMPParent::GMPThread() and GMPContentParent::GMPThread() to return a reference to the GMP thread with a refcount held on it, in order to ensure we don't race with the GMP service shutting down the GMP thread while we're trying to dispatch to in on shutdown. MozReview-Commit-ID: CXv9VZqTRzY
596260b13532101c1415d5d9a292602e7dcb084b: Bug 1315850 - Port the work around from Bug 1343140 to the new CDM video decoder architecture. r=gerald
Chris Pearce <cpearce@mozilla.com> - Tue, 14 Mar 2017 17:17:05 +1300 - rev 397565
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1315850 - Port the work around from Bug 1343140 to the new CDM video decoder architecture. r=gerald MozReview-Commit-ID: EV0bieXIxYM
98c87d2f85b3d0c5ef906bf4791bb90d5c445fb7: Bug 1315850 - Rename DetailedPromise Status enum. r=gerald
Chris Pearce <cpearce@mozilla.com> - Mon, 13 Mar 2017 10:42:36 +1300 - rev 397564
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1315850 - Rename DetailedPromise Status enum. r=gerald X11.h #defines 'Status' and 'Failed' and 'Succeeded' which conflicts with the enum in DetailedPromise. So rename the 'Status' enum in DetailedPromise so that the build works on Linux. Some of my changes here caused DetailedPromise to be included in more places that it was before, which caused build failures on Linux. MozReview-Commit-ID: KV5xKixXR3J
2a6e91518a674f5e25d83403c49966631562afc9: Bug 1315850 - Implement CDM persistent sessions. r=gerald
Chris Pearce <cpearce@mozilla.com> - Thu, 09 Mar 2017 19:09:43 +1300 - rev 397563
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1315850 - Implement CDM persistent sessions. r=gerald This is required for the browser clearing persistence tests to pass. MozReview-Commit-ID: Ai9qc6Ds1IG
fe4a4ae4ff80bb6ba53ba3e8554411499db9cf04: Bug 1315850 - Hook up CDM storage. r=gerald
Chris Pearce <cpearce@mozilla.com> - Wed, 22 Mar 2017 16:30:54 +1300 - rev 397562
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1315850 - Hook up CDM storage. r=gerald MozReview-Commit-ID: 9gHcMZvmMfg
674ee2d0447293d8208e32d1cf1c038979d7c54a: Bug 1315850 - Shutdown ChromiumCDMParent. r=gerald
Chris Pearce <cpearce@mozilla.com> - Thu, 09 Mar 2017 17:34:18 +1300 - rev 397561
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1315850 - Shutdown ChromiumCDMParent. r=gerald MozReview-Commit-ID: E82ETFS90eH
47b8e5018f7a9d787d47c71beabdbcdf07873a2b: Bug 1315850 - Shutdown CDMVideoDecoder. r=jya
Chris Pearce <cpearce@mozilla.com> - Wed, 08 Mar 2017 10:20:33 +1300 - rev 397560
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1315850 - Shutdown CDMVideoDecoder. r=jya This severs the ChromiumCDMVideoDecoder's connection with the CDM. The CDM process will shutdown when the MediaKeys also severs its connection. MozReview-Commit-ID: Aqc4y5Nxjvc
c4555aebea6aa28294568b4e1b52c087fd3d462c: Bug 1315850 - Implement CDM video decoder drain. r=jya
Chris Pearce <cpearce@mozilla.com> - Tue, 07 Mar 2017 16:37:21 +1300 - rev 397559
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1315850 - Implement CDM video decoder drain. r=jya MozReview-Commit-ID: 5RbrWyLglRf
c06b797b76489231e4213717ac01d2bb032c9aaa: Bug 1315850 - Implement CDM video decoder flush. r=jya
Chris Pearce <cpearce@mozilla.com> - Tue, 14 Feb 2017 22:42:26 +1300 - rev 397558
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1315850 - Implement CDM video decoder flush. r=jya MozReview-Commit-ID: 3CzwfOCXGP
0f7c63f025a94367cb997461d67acc706b52a90e: Bug 1315850 - Implement video decoding through CDM. r=jya
Chris Pearce <cpearce@mozilla.com> - Thu, 09 Mar 2017 11:32:15 +1300 - rev 397557
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1315850 - Implement video decoding through CDM. r=jya At this stage, I store video frames in memory in nsTArrays rather than in shmems just so we can get this working. Once this is working, I'll follow up with patches to switch to storing all large buffer traffic between the CDM and other processes in shmems. I'm not planning on preffing this new CDM path on until that's in place. MozReview-Commit-ID: LSTb42msWQS
832022d6eaf8f8836a344f069eb811fcee564fda: Bug 1315850 - Initialize video decoder. r=jya
Chris Pearce <cpearce@mozilla.com> - Thu, 09 Mar 2017 18:17:50 +1300 - rev 397556
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1315850 - Initialize video decoder. r=jya MozReview-Commit-ID: 559SP0ECldq
f50cc93d6ec78a2b41b70657ffdb1380a22b3a1f: Bug 1315850 - Add threadsafe ChromiumCDMProxy::GetCDMParent. r=gerald
Chris Pearce <cpearce@mozilla.com> - Mon, 13 Mar 2017 13:47:20 +1300 - rev 397555
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1315850 - Add threadsafe ChromiumCDMProxy::GetCDMParent. r=gerald The MediaKeys accesses the ChromiumCDMProxy on the main thread. But the ChromiumCDMVideoDecoder will need to access the ChromiumCDMProxy on the decode task queue in order to get a reference to the ChromiumCDMParent so that it can talk to the CDM (on the GMP thread). Additionally we'll need to shutdown the ChromiumCDMProxy, and if we do that on the main threrad while the ChromiumCDMVideoDecoder is trying to get the ChromiumCDMParent reference, we could hit thread safety issues. So we need to hold a lock while reading or writing from the ChromiumCDMProxy's reference to the ChromiumCDMParent. So add a GetCDMParent() function to the ChromiumCDMProxy which takes the lock while reading or writing the reference. This means that the caller will always get a valid reference. There is no guarantee that the ChromiumCDMParent isn't shutdown after the reference is taken; if that happens, the ChromiumCDMParent returned will fail on all operations. In a later patch in this series, the ChromiumCDMProxy will anull its reference to the ChromiumCDMParent on shutdown, and cause GetCDMParent to return null. So callers need to null check the return value of GetCDMParent. MozReview-Commit-ID: 4xL41YbwkxL
fe49faf3ab88bc3eb39806fd12d49f17cd40c184: Bug 1315850 - Create CDM video decoder in EMEDecoderModule. r=jya
Chris Pearce <cpearce@mozilla.com> - Wed, 08 Mar 2017 16:20:09 +1300 - rev 397554
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1315850 - Create CDM video decoder in EMEDecoderModule. r=jya MozReview-Commit-ID: 3xgFxg1WfmY
552740d1fa2356f4fab385b2e68ddae3679ea9c1: Bug 1315850 - Stub out ChromiumCDMVideoDecoder. r=jya
Chris Pearce <cpearce@mozilla.com> - Thu, 09 Mar 2017 18:17:14 +1300 - rev 397553
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1315850 - Stub out ChromiumCDMVideoDecoder. r=jya MozReview-Commit-ID: 6I9N1c1nNMF
8d9cbfdbf506c080cfe7feb3feb23f745162b4ce: Bug 1315850 - Add CDMProxy::AsChromiumCDMProxy(). r=gerald
Chris Pearce <cpearce@mozilla.com> - Thu, 15 Dec 2016 11:32:03 +1300 - rev 397552
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1315850 - Add CDMProxy::AsChromiumCDMProxy(). r=gerald This means the EME PDM implementation can safely tell when a CDMProxy is a ChromiumCDMProxy, so we can create an appropriate MediaDataDecoder for it (in the next patch). MozReview-Commit-ID: CpL6QRa7SwJ
a872ee15f82388d5f4ca8d4cda58243ad2e5cd41: Bug 1315850 - Ensure GMPParent checks whether the adapter version is present. r=gerald
Chris Pearce <cpearce@mozilla.com> - Mon, 20 Feb 2017 11:48:32 +1300 - rev 397551
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1315850 - Ensure GMPParent checks whether the adapter version is present. r=gerald This ensures that when we're using the ChromiumAdapter that we actually ask it whether it'll work, rather than asking the adapter we're not using. MozReview-Commit-ID: 85nZPl9MdWa
e46942398895f5e544252816edaeccea6dbdeca5: Bug 1315850 - Send decrypt operations to Chromium CDM. r=gerald
Chris Pearce <cpearce@mozilla.com> - Thu, 09 Mar 2017 11:31:07 +1300 - rev 397550
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1315850 - Send decrypt operations to Chromium CDM. r=gerald We still use the same EMEDecryptor MediaDataDecoder as is used by the existing EME decrypting path. MozReview-Commit-ID: 3pXPjChctLb
46c077aafe07b12a12544399b3552f96d723c0df: Bug 1315850 - Add more logging to Chromium CDM actors. r=gerald
Chris Pearce <cpearce@mozilla.com> - Thu, 09 Mar 2017 11:42:12 +1300 - rev 397549
Push 7391 by mtabara@mozilla.com at Mon, 12 Jun 2017 13:08:53 +0000
Bug 1315850 - Add more logging to Chromium CDM actors. r=gerald MozReview-Commit-ID: 2DcprLAE1bg
(0) -300000 -100000 -30000 -10000 -3000 -1000 -300 -100 -50 -20 +20 +50 +100 +300 +1000 +3000 +10000 +30000 +100000 tip