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

712792 Коммитов

Автор SHA1 Сообщение Дата
Daisuke Akatsuka 7f6b066b27 Bug 1625957: Use ResourceWatcher in Compatibility view. r=ochameau,rcaliman
Differential Revision: https://phabricator.services.mozilla.com/D74601
2020-06-12 06:47:19 +00:00
Daisuke Akatsuka 04bef9f4f9 Bug 1625957: Use ResourceWatcher in Changes view. r=ochameau,rcaliman
Differential Revision: https://phabricator.services.mozilla.com/D74600
2020-06-12 02:09:40 +00:00
Daisuke Akatsuka 5c4053feaa Bug 1625957: Implement ResourceWatcher for CSS changes. r=ochameau,rcaliman
Differential Revision: https://phabricator.services.mozilla.com/D74599
2020-06-12 02:09:44 +00:00
Kriyszig f0405fd72e Bug 1642076 - Add test to prevent unwanted scrollbar in the Network Details' Cookie panel r=Honza,bomsy
Added test to prevent regression with unwanted scrollbars in
Network Monitor's Network Details' Cookie panel

Differential Revision: https://phabricator.services.mozilla.com/D77610
2020-06-12 06:30:45 +00:00
Jan de Mooij 08937da9d2 Bug 1644472 part 4 - Optimize RegExpPrototypeOptimizable and RegExpInstanceOptimizable intrinsics. r=iain
These just do a Shape guard against a Shape stored in the Realm. If the guard
fails we do a callWithABI to a function that updates the shape.

Differential Revision: https://phabricator.services.mozilla.com/D79265
2020-06-12 06:10:39 +00:00
Jan de Mooij 9057ebf0b9 Bug 1644472 part 3 - Optimize SubstringKernel intrinsic in CacheIR and Warp. r=evilpie
Differential Revision: https://phabricator.services.mozilla.com/D79263
2020-06-12 06:10:16 +00:00
Jean-Yves Avenard 7a9999e7b7 Bug 1641737 - P7. Make the DLL and PPDC promises use direct task dispatch. r=mattwoodrow
We attempt to reduce the number of event loop iterations, which would bring us back to a similar behaviour to the pre-DocumentChannel days.

This prevent some tests to have increase intermittent failures.

While ideally, we would prefer to fix or re-write those tests properly, the extra work would block us for too long.

All those increased intermittents already have bug logged about them; so we aren't hiding dust under the rust.

Differential Revision: https://phabricator.services.mozilla.com/D78489
2020-06-12 05:57:02 +00:00
Jean-Yves Avenard a0ac7bafae Bug 1641737 - P6. Remove the need for an extra promise for when a DocumentChannel would connect. r=mattwoodrow
The earlier changes make this unnecessary. The load will start and will automatically resume once the PDocumentChannelParent::RedirectToRealChannel promise gets resolved when a DocumentChannel claim the DocumentLoadListener.

Differential Revision: https://phabricator.services.mozilla.com/D78488
2020-06-12 05:56:54 +00:00
Jean-Yves Avenard dfdacc5993 Bug 1641737 - P5. Remove unnecessary method. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D78210
2020-06-12 05:56:46 +00:00
Jean-Yves Avenard d5528b6394 Bug 1641737 - P4. Add UseDirectTaskDispatch/UseSynchronousDispatch to MozPromiseHolder. r=bholley
The allows to not have to deal with MozPromise::Private directly.

Differential Revision: https://phabricator.services.mozilla.com/D78208
2020-06-12 05:56:39 +00:00
Jean-Yves Avenard d08ba26968 Bug 1641737 - P3. Streamline cleanup so it's all done in the same place. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D78180
2020-06-12 05:56:36 +00:00
Jean-Yves Avenard 2137f67a30 Bug 1641737 - P2. Use MozPromise with DocumentLoadListener and remove cycle. r=mattwoodrow.
Differential Revision: https://phabricator.services.mozilla.com/D78179
2020-06-12 05:56:28 +00:00
Jean-Yves Avenard 7b7d64db67 Bug 1641737 - P1. Set dispatch type to chained promises. r=bholley
When chaining a MozPromise set to be dispatched via the direct task queue (or synchronous), it makes sense for the chained promise to be dispatched in the same fashion.

All MozPromises generated by the IPC bindings are set to use the direct task queue in order to prevent the then runnable to run out of order with other IPC tasks.
We want to preserve that task ordering by default.

Differential Revision: https://phabricator.services.mozilla.com/D78178
2020-06-12 05:56:26 +00:00
Jean-Yves Avenard 4e41c1b386 Bug 1644009 - P14. Fallback to normal dispatch on release. r=bholley
We shouldn't ever get there, but just in case, better than a null deref.

Differential Revision: https://phabricator.services.mozilla.com/D79097
2020-06-12 05:10:57 +00:00
Jean-Yves Avenard a56b255f0f Bug 1644009 - P13. Don't have AutoTaskGuard inherit from AutoTaskDispatcher. r=bholley.
This prevent being able to assert in the AutoTaskDispatcher that we are using it from the right thread/taskqueue as the SimpleTaskQueue object isn't thread-safe.

We want to assert that all nsIDirectTaskDispatcher methods are only ever accessed on the underlying thread. To do so require that the scope of AutoTaskDispatcher to terminate prior the AutoTaskGuard one.

Differential Revision: https://phabricator.services.mozilla.com/D79096
2020-06-12 05:10:55 +00:00
Jean-Yves Avenard a943b8c10a Bug 1644009 - P12. Make STS thread supports nsIDirectTaskDispatcher interface. r=valentin,necko-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D79105
2020-06-12 05:10:47 +00:00
Jean-Yves Avenard a9c086bd35 Bug 1644009 - P11. Make DocGroup's LabellingEventTarget implement nsIDirectTaskDispatcher. r=farre
It will simply forward the interface to the main thread.
This is the final step required to remove AbstractThread support here.

Differential Revision: https://phabricator.services.mozilla.com/D79095
2020-06-12 05:10:40 +00:00
Jean-Yves Avenard d846483194 Bug 1644009 - P10. Make MozPromise access direct task dispatcher using QI(nsIDirectTaskDispatcher). r=bholley
Differential Revision: https://phabricator.services.mozilla.com/D79094
2020-06-12 05:10:32 +00:00
Jean-Yves Avenard 1e2af615c7 Bug 1644009 - P9. Add nsIDirectTaskDispatcher interface. r=froydnj
We extract the dealing of direct tasks from the TailDispatcher object and move into to the existing nsThread and TaskQueue classes.
TaskQueue is made to work with do_QueryInterface.

We continue accessing the direct tasks dispatcher via the TailDispatcher for now, which itself will forward the dealing of such tasks to the underlying thread.

Differential Revision: https://phabricator.services.mozilla.com/D79093
2020-06-12 05:10:25 +00:00
Jean-Yves Avenard 974a9641a4 Bug 1644009 - P8. Add SimpleTaskQueue object. r=froydnj
We will use it later for implementing direct task dispatching where required.

Differential Revision: https://phabricator.services.mozilla.com/D79092
2020-06-12 05:10:12 +00:00
Jean-Yves Avenard 71373f3f10 Bug 1644009 - P7. Revert "Bug 1592488 - P4. Ensure an AbstractThread exists for the Compositor Thread." r=mattwoodrow
DirectTask dispatching will now be directly handled by nsThread.

Differential Revision: https://phabricator.services.mozilla.com/D79091
2020-06-12 05:10:10 +00:00
Jean-Yves Avenard c7ce1ad8f3 Bug 1644009 - P6. Revert "Bug 1592488 - P5. Ensure an AbstractThread exists with BackgroundThread." r=nika
DirectTask dispatching will now be directly handled by nsThread.

Differential Revision: https://phabricator.services.mozilla.com/D79090
2020-06-12 05:10:03 +00:00
Jean-Yves Avenard e8113eee35 Bug 1644009 - P5. Revert "Bug 1592488 - P6. Ensure an AbstractThread exists with RemoteWorkerService thread." r=nika
DirectTask dispatching will now be directly handled by nsThread.

Differential Revision: https://phabricator.services.mozilla.com/D79089
2020-06-12 05:09:55 +00:00
Jean-Yves Avenard 8e4b7ba238 Bug 1644009 - P4. Revert "Bug 1592488 - P7. Ensure an AbstractThread exists with RemoteDecoder manager thread." r=mattwoodrow
DirectTask dispatching will now be directly handled by nsThread.

Differential Revision: https://phabricator.services.mozilla.com/D79088
2020-06-12 05:09:48 +00:00
Jean-Yves Avenard d3f369570f Bug 1644009 - P3. Revert "Bug 1592488 - P8. Ensure AbstractThread exists with STS thread." r=valentin,necko-reviewers
DirectTask dispatching will now be directly handled by nsThread.

Differential Revision: https://phabricator.services.mozilla.com/D79087
2020-06-12 05:09:40 +00:00
Jean-Yves Avenard 2fade796dc Bug 1644009 - P2. Revert "Bug 1592488 - P9. Make a DOMCacheThread an AbstractThread." r=nika
DirectTask dispatching will now be directly handled by nsThread.

Differential Revision: https://phabricator.services.mozilla.com/D79086
2020-06-12 05:09:33 +00:00
Jean-Yves Avenard 8cdcee4307 Bug 1644009 - P1. Revert "Bug 1592488 - P11. Ensure an AbstractThread exists for each WorkerThread." r=nika
DirectTask dispatching will now be directly handled by nsThread.

Differential Revision: https://phabricator.services.mozilla.com/D79085
2020-06-12 05:09:26 +00:00
Noemi Erli 279f3b6a42 Backed out changeset 550164313c4f (bug 1601179) for causing failures in test_async CLOSED TREE 2020-06-12 08:16:14 +03:00
Nils Ohlmeier [:drno] 8286ff9b02 Bug 1645077: extending WebRTC DTLS cipher telemetry probes. r=dminor
Differential Revision: https://phabricator.services.mozilla.com/D79329
2020-06-11 18:46:29 +00:00
Logan Smyth 7f4a5aeed0 Bug 1601179 - Enable async stacks but limit captured async stacks to debuggees. r=jorendorff,smaug
The 'asyncStack' flag on JS execution contexts is used as a general switch
to enable async stack capture across all locations in SpiderMonkey, but
this causes problems because it can at times be too much of a performance
burden to general and track all of these stacks.

Since the introduction of this option, we have only enabled it on Nightly
and DevEdition for non-mobile builds, which has left a lot of users unable
to take advantage of this data while debugging.

This patch enables async stack traces across all of Firefox, but introduces
a new pref to toggle the scope of the actual expensive part of async stacks,
which is _capturing_ them and keeping them alive in memory. The new pref
limits the capturing of async stack traces to only debuggees, unless an
explicit pref is flipped to capture async traces for all cases.

This means that while async stacks are technically enabled, and code could
manually capture a stack and pass it back to SpiderMonkey and see that stack
reflected in later captured stacks, SpiderMonkey itself and related async
DOM APIs, among others, will not capture stacks or pass them to SpiderMonkey,
so there should be no general change in performance by enabling the broader
feature itself, unless the user is actively debugging the page.

One affect of this patch is that if you have the debugger open and then close
it, objects that have async stacks associated with them will retain those
stacks and they will continue to show up in stack traces, no _new_ stacks
will be captured. jorendorff and I have decided that this is okay because
the expectation that the debugger fully revert every possible effect that it
could have on a page is a nice goal but not a strict requirement.

Differential Revision: https://phabricator.services.mozilla.com/D68503
2020-06-11 21:24:16 +00:00
Alexis Beingessner 0d843d258d Bug 1642721 - convert security.sandbox.logging.enabled to a StaticPref. r=bobowen
Depends on D78933

Differential Revision: https://phabricator.services.mozilla.com/D78934
2020-06-11 12:35:45 +00:00
Alexis Beingessner 83994a45b8 Bug 1642721 - convert the last two securit.sandbox.*.win32k VarCache prefs. r=bobowen
converts:
  * security.sandbox.rdd.win32k-disable
  * security.sandbox.gmp.win32k-disable

I'm assuming the pattern established by the other, newer, win32k StaticPrefs can
be followed here, and the xpcom checks aren't needed.

Differential Revision: https://phabricator.services.mozilla.com/D78933
2020-06-11 12:34:10 +00:00
Karl Tomlinson 632dfeb6cc Bug 1638243 reject promises for Resume AudioContextOperations that have not run by graph shutdown r=padenot
The promises are rejected before shutting down threads so that they don't need
to wait for nested event loops to exit.

Differential Revision: https://phabricator.services.mozilla.com/D76807
2020-06-12 01:12:56 +00:00
Karl Tomlinson 41f6931d73 Bug 1644647 rewrite AudioContextOperation handling using PendingResumeOperation r=padenot
The key change here is that AudioContextOperation promises for the same
AudioContext are resolved in order as long as the graph is running.
There is one remaining case where AudioContextOperation promises can be
resolved out of order, which is when
AudioContextOperationControlMessage::RunDuringShutdown() resolves a Close
operation shortly after Run() has queued its update via mUpdateRunnables.
mUpdateRunnables are run after controlMessagesToRunDuringShutdown.
https://searchfox.org/mozilla-central/rev/ea7f70dac1c5fd18400f6d2a92679777d4b21492/dom/media/MediaTrackGraph.cpp#1793,1803

Pending resume operations are now stored on the graph instead of on
mNextDriver.  This means there is no need to move operations between drivers
when switching from one mNextDriver to another, the code for which was
previously missing.

Suspend operations are performed immediately, because even a callback driver
can render nothing.  Tracks are not resumed until either there is an
AudioCallbackDriver to deliver the rendered audio or the Resume operation is
canceled by a subsequent Suspend.

While the graph is running, DispatchToMainThreadStableState() is used
consistently, whereas previously this was mixed with direct Dispatch() to the
main thread, which could have the runnable Run() before main thread state had
been updated for rendering up to the time of a Suspend.

Differential Revision: https://phabricator.services.mozilla.com/D76806
2020-06-11 08:52:00 +00:00
Karl Tomlinson ea503f2013 Bug 1644647 - introduce PendingResumeOperation r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D76805
2020-06-12 02:17:33 +00:00
Karl Tomlinson e7c0aab2a8 Bug 1644647 test that processing is consistent whether nodes are created before or after resume r=padenot
Depends on D79049

Differential Revision: https://phabricator.services.mozilla.com/D79050
2020-06-11 08:45:07 +00:00
Karl Tomlinson 9f36b6849d Bug 1644647 use AudioContextOperation::Resume to start realtime AudioNodeTracks r=padenot
This provides that a new track does not start processing before existing
tracks in the AudioContext, which may not be resumed until an
AudioCallbackDriver is running.

Depends on D79048

Differential Revision: https://phabricator.services.mozilla.com/D79049
2020-06-12 00:50:34 +00:00
Karl Tomlinson 8ebfa90f03 Bug 1644647 use the same mechanism for the first suspended->running transition as for others r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D79048
2020-06-11 08:51:17 +00:00
Razvan Maries b5faf6c48c Backed out 4 changesets (bug 1625957) for devtools failures on browser_inspector_sidebarstate.js. CLOSED TREE
Backed out changeset 6d6323e559cb (bug 1625957)
Backed out changeset 7d796f50c69f (bug 1625957)
Backed out changeset 8520caa244e1 (bug 1625957)
Backed out changeset e540c9937a31 (bug 1625957)
2020-06-12 05:04:55 +03:00
Kyle Knaggs 72e43bb2fd Bug 1601073 - Moved info icon from right side to left side of WhyPaused text r=jlast
Moved info icon from after text to before text.
Matched the spacing between the icon and text to the spacing between the icon and text in the Console.
Updated relevant WhyPaused snapshot tests.

Differential Revision: https://phabricator.services.mozilla.com/D78601
2020-06-12 00:37:22 +00:00
Kartikaya Gupta 7451b0d0b2 Bug 1644271 - Enable the MVM pref by default. r=tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D79230
2020-06-12 01:15:11 +00:00
Kartikaya Gupta 81ee3e23f8 Bug 1644271 - Add an early-exit to temporarily disable an MVM codepath. r=tnikkel
This is a short-term step to ensure all tests pass with the mvm pref
turned on. It disables the visual viewport setting codepath for visual-only
MVM instances, unless the APZ zooming pref is also set (because other APZ
zooming code relies on this).

Differential Revision: https://phabricator.services.mozilla.com/D79229
2020-06-12 01:15:05 +00:00
Kartikaya Gupta 53bb433533 Bug 1644271 - Move the innerWidth/Height overriding behavior to be conditional on a more appropriate check. r=tnikkel
This code really cares about the case with a CSS viewport, which is only
activated with mobile viewport sizing.

Differential Revision: https://phabricator.services.mozilla.com/D79228
2020-06-12 01:15:03 +00:00
Kartikaya Gupta 938b9b6fcf Bug 1644271 - Add some more MVM_LOG statements. r=tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D79227
2020-06-12 01:15:48 +00:00
Kartikaya Gupta f2ad64a769 Bug 1644271 - Don't let the MVM do reflows or change the resolution unless we're using mobile viewport sizing. r=tnikkel
If there's no meta-viewport handling, the MVM shouldn't need to do reflows
because it shouldn't be changing the layout viewport. Also there should be
no need for the MVM to adjust the resolution on the presShell since the
user will be driving those changes via user input. The MVM now just updates
the visual viewport sizing in response to changes.

It may turn out that some these conditions need to be tweaked later, but for
now this seems like a reasonable starting point.

Differential Revision: https://phabricator.services.mozilla.com/D79226
2020-06-12 01:15:46 +00:00
Kartikaya Gupta 2c71f100fb Bug 1644271 - Don't let the MVM control reflow dimensions unless we're using mobile viewport sizing. r=tnikkel
Allowing the MVM to control the reflow means that the requested reflow size
is ignored, and instead the existing CSS/layout viewport is used. This is
undesirable for calls to SizeToContent(), where the intent is to do a reflow
to figure out the smallest amount of space the content fits in.

In general though unless we are using mobile viewport sizing we shouldn't be
needing the MVM to drive reflows.

Differential Revision: https://phabricator.services.mozilla.com/D79225
2020-06-12 01:15:44 +00:00
Kartikaya Gupta ba088f5b71 Bug 1644271 - Add a ManagerType field to the MVM, to allow conditional behaviour. r=tnikkel
The MVM is needed for both handling of meta-viewport tags and APZ zooming.
However, the set of functionality needed in the two modes are not the same.
This patch adds a mechanism to create an MVM with a flag that lets it know
which mode it is operating in. Eventually we may want to split this into two
or more classes but for now this seems like a reasonable way forward.

The flag is currently set on the MVM on creation based on whether or not the
meta-viewport support is needed. There's no code that meaningfully *uses* the
flag yet, so this patch should have no functional change. The bulk of the
patch is ensuring that we appropriately destroy and re-create the MVM if the
flag required changes.

Differential Revision: https://phabricator.services.mozilla.com/D79224
2020-06-12 01:15:42 +00:00
Kartikaya Gupta f89c7c3302 Bug 1644271 - Add a pref to enable the MobileViewportManager. r=tnikkel
Currently false by default, so no functional change in the default
configuration.

Differential Revision: https://phabricator.services.mozilla.com/D79223
2020-06-12 01:15:40 +00:00
Ben Hearsum 3f2018eaf1 Bug 1641948: remove android opt builds from non-mozilla-central branches; reduce frequency of fat-aar builds. r=Callek
Differential Revision: https://phabricator.services.mozilla.com/D78547
2020-06-11 19:25:07 +00:00
Karl Tomlinson b46ca09637 Bug 1644647 explicitly initialize mFallbackDriverState r=padenot
There is no change in behavior here because the default constructor is zero initialized
https://searchfox.org/mozilla-central/rev/bc3600def806859c31b2c7ac06e3d69271052a89/mfbt/Atomics.h#287
and None is zero.
https://searchfox.org/mozilla-central/rev/bc3600def806859c31b2c7ac06e3d69271052a89/dom/media/GraphDriver.h#763

Differential Revision: https://phabricator.services.mozilla.com/D79043
2020-06-12 01:02:18 +00:00