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

105 Коммитов

Автор SHA1 Сообщение Дата
Andrea Marchesini b92373da05 Bug 1425458 - Resource timing entries Workers - part 7 - mochitests, r=smaug 2018-01-24 17:17:32 +01:00
Andrea Marchesini b0815a186e Bug 1425458 - Resource timing entries Workers - part 5 - dispatch resourcetimingbufferfull on workers, r=smaug 2018-01-24 17:17:32 +01:00
Andrea Marchesini f306e5c7bb Bug 1425458 - Resource timing entries Workers - part 4 - exposing partial interface, r=smaug 2018-01-24 17:17:32 +01:00
Andrea Marchesini 0356adb210 Bug 1425458 - Resource timing entries Workers - part 3 - PerformanceStorageWorker, r=smaug 2018-01-24 17:17:32 +01:00
Andrea Marchesini a8d07c4d56 Bug 1425458 - Resource timing entries Workers - part 2 - PerformanceTimingData, r=smaug 2018-01-24 17:17:31 +01:00
Andrea Marchesini 2f72a5e897 Bug 1425458 - Resource timing entries Workers - part 1 - PerformanceStorage on main-thread, r=smaug 2018-01-24 17:17:31 +01:00
Andrea Marchesini c6da271117 Bug 1425458 - Resource timing entries Workers - part 0 - NS_NewChannel, r=smaug
* * *
Bug 1425458 - Resource timing entries Workers - part 10 - Correct parameters in NS_NewChannel in nsDataObj.cpp, r=me
2018-01-24 17:17:31 +01:00
Brindusan Cristian 368c3d5b6b Backed out 12 changesets (bug 1425458) for mochitest failures on WorkerPrivate.cpp on a CLOSED TREE
Backed out changeset 11997de13778 (bug 1425458)
Backed out changeset 100b9d4f36bc (bug 1425458)
Backed out changeset a29e9dbb8c42 (bug 1425458)
Backed out changeset b96d58fd945c (bug 1425458)
Backed out changeset f140da44ba68 (bug 1425458)
Backed out changeset af56400233d9 (bug 1425458)
Backed out changeset 7034af4332e4 (bug 1425458)
Backed out changeset f70500179140 (bug 1425458)
Backed out changeset 793bbfc23257 (bug 1425458)
Backed out changeset 2efb375a8ffc (bug 1425458)
Backed out changeset 07e781e37451 (bug 1425458)
Backed out changeset e875f3702a5f (bug 1425458)
2018-01-24 20:47:48 +02:00
Andrea Marchesini e3a4f3c0c6 Bug 1425458 - Resource timing entries Workers - part 11 - WPT, r=me CLOSED TREE 2018-01-24 18:52:18 +01:00
Andrea Marchesini 614ece72f9 Bug 1425458 - Resource timing entries Workers - part 9 - Fixing a compilation issue, r=me CLOSED TREE 2018-01-24 18:19:12 +01:00
Andrea Marchesini 3df0fd7a06 Bug 1425458 - Resource timing entries Workers - part 7 - mochitests, r=smaug 2018-01-24 17:17:32 +01:00
Andrea Marchesini a1fb457571 Bug 1425458 - Resource timing entries Workers - part 5 - dispatch resourcetimingbufferfull on workers, r=smaug 2018-01-24 17:17:32 +01:00
Andrea Marchesini e1b65b46fd Bug 1425458 - Resource timing entries Workers - part 4 - exposing partial interface, r=smaug 2018-01-24 17:17:32 +01:00
Andrea Marchesini 662a5542a3 Bug 1425458 - Resource timing entries Workers - part 3 - PerformanceStorageWorker, r=smaug 2018-01-24 17:17:32 +01:00
Andrea Marchesini f5ad0fea6c Bug 1425458 - Resource timing entries Workers - part 2 - PerformanceTimingData, r=smaug 2018-01-24 17:17:31 +01:00
Andrea Marchesini 6ade04534b Bug 1425458 - Resource timing entries Workers - part 1 - PerformanceStorage on main-thread, r=smaug 2018-01-24 17:17:31 +01:00
Andrea Marchesini 6480b95ba3 Bug 1425458 - Resource timing entries Workers - part 0 - NS_NewChannel, r=smaug 2018-01-24 17:17:31 +01:00
Tom Ritter d0170278b3 Bug 1429764 Do not call ReduceTimerPrecision twice for DOM Navigation timers r=bkelly,timhuang
Bug 1429764 details a test failure that was asserting that the performance navigation
timers were strictly increasing (or equal). fetchStart should have a timestamp before
domainLookupStart.  But it didn't.

The problem is two-fold.  This corrects the test and the issue by addressing one part
of the problem, the second part of the problem needs to be written up in a new bug
and addressed there. (That bug is not yet filed at writing, but see dependencies of
1429764 in the future to find it.)

The second, and underlying, problem is that calling ReduceTimerPrecision with the
same value multiple times may continually reduce it. Meaning that the first you call
it with, say, .75, (and a precision of .20), it will be reduced to .6. The second time
you call it (with .6), instead of staying at .6 it will be reduced to .4. This is
because floats are fuzzy. Inside ReduceTimerPrecision we are multiplying a decimal by
a decimal, so while floor(.6 / .20)  should equal 3, sometimes it's actually 2.999...
which gets floors to 2, gets multiplied again by .2, and which results in .4

If that's the underlying problem, the first, and surface, problem is - why are we
calling ReduceTimerPrecision multiple times? We shouldn't be. That's what this
patch fixes.

TimeStampToDOMHighResOrFetchStart will return either TimeStampToDOMHighRes() or
FetchStartHighRes(). FetchStartHighRes() internally calls TimeStampToDOMHighRes
and then ReduceTimerPrecision - this is where (some of) the two reduction calls
happen - because TimeStampToDOMHighRes itself calls ReduceTimerPrecision also.

I remove the ReduceTimerPrecision from TimeStampToDOMHighRes. FetchStartHighRes
will now only call ReduceTimerPrecision once, at the end of the return.

But we have to fix places we call TimeStampToDOMHighResOrFetchStart, because the
callers of that function also call ReduceTimerPrecision. So if
TimeStampToDOMHighResOrFetchStart returned FetchStartHighRes, we'd be calling
ReduceTimerPrecision twice for those callers.

So inside first off, we remove the outer call to ReduceTimerPrecision. that
surrounds the 5 or so callsites of TimeStampToDOMHighResOrFetchStart. Then
inside of TimeStampToDOMHighResOrFetchStart we return either FetchStartHighRes
(which is has already called ReduceTimerPrecision) or we call
ReduceTimerPrecision with the value.

Now. TimeStampToDOMHighRes was used in more places than just FetchStartHighRes -
there were several other places where we were doing double rounding, and this
fixed those as well. AsyncOpenHighRes, WorkerStartHighRes, DomainLookupEndHighRes,
ConnectStartHighRes, SecureConnectionStartHighRes, ConnectEndHighRes, and
ResponseEndHighRes.

MozReview-Commit-ID: K5nHql135rb

--HG--
extra : rebase_source : e06785203f0f8b01fc7b694ce840f07dc09bc4a1
2018-01-12 13:36:04 -06:00
Tom Ritter 58c53866d8 Bug 1424341 Round the Performance Timing APIs when privacy.reduceTimerPrecision is set r=bkelly,timhuang
MozReview-Commit-ID: LrAmrIfKk39

--HG--
extra : rebase_source : e9ded5202406abd07465a0b4a9a6122c86a9c072
2018-01-10 15:51:23 -06:00
Andrea Marchesini 61778fdf43 Bug 1419771 - Introduce DOMPrefs, a thread-safe access to preferences for DOM - part 5 - Performance logging enabled, r=asuth 2018-01-08 14:05:04 +01:00
Tom Ritter 29a0059ef9 Bug 1427870 - Change resolution of .now() to 20us. r=bkelly, a=lizzard
The comment about workers was introduced in Bug 1186489 but became obsolete some time after that
(definitely by Bug 1278838)
2017-12-30 13:07:00 -06:00
Dragana Damjanovic d2271cd3a8 Bug 1417431 - secureConnectionStart should be 0 for pages with HTTP scheme. r=bkelly 2017-12-06 12:57:28 +01:00
Jonathan Watt 25f221f47d Bug 1180145, part 3 - Block resource timing reporting for channels that are tainted. r=jwatt
MozReview-Commit-ID: FdlbJ2YYMaG
2017-11-08 18:13:46 +00:00
Cosmin Sabou 5c4663243d Backed out 23 changesets (bug 1419771) for frequently failing service workers related devtools tests, e.g. devtools/client/aboutdebugging/test/browser_service_workers_push.js. r=backout on a CLOSED TREE
Backed out changeset 2242edc902a5 (bug 1419771)
Backed out changeset 9cc3c29a9e36 (bug 1419771)
Backed out changeset c39ee002c825 (bug 1419771)
Backed out changeset caf7428013f2 (bug 1419771)
Backed out changeset c03970363433 (bug 1419771)
Backed out changeset 7f9de012861e (bug 1419771)
Backed out changeset ed146ac42a7f (bug 1419771)
Backed out changeset a8154698f782 (bug 1419771)
Backed out changeset 8a54c1c8d45d (bug 1419771)
Backed out changeset e32cd55b4c96 (bug 1419771)
Backed out changeset b7f342f436ef (bug 1419771)
Backed out changeset 60464b3e468f (bug 1419771)
Backed out changeset 108806f14ad8 (bug 1419771)
Backed out changeset 65998b0740f3 (bug 1419771)
Backed out changeset 0d23880842d8 (bug 1419771)
Backed out changeset 862aeaa2fefd (bug 1419771)
Backed out changeset cbc192478bf5 (bug 1419771)
Backed out changeset c58ef2a91bad (bug 1419771)
Backed out changeset 2b0a4bfd654f (bug 1419771)
Backed out changeset f182eba574f9 (bug 1419771)
Backed out changeset d9999a624097 (bug 1419771)
Backed out changeset 4050a1b8db2b (bug 1419771)
Backed out changeset a1a68e6500d9 (bug 1419771)
2017-11-30 22:35:32 +02:00
Andrea Marchesini c8ae53b657 Bug 1419771 - Introduce DOMPreferences, a thread-safe access to preferences for DOM - part 5 - Performance logging enabled, r=asuth 2017-11-30 18:16:44 +01:00
Nika Layzell f1ac9bf744 Bug 1419597 - Part 18: Remove IsInnerWindow and IsOuterWindow methods, r=smaug
MozReview-Commit-ID: DAAm6tLubhJ
2017-11-23 13:12:13 -05:00
Ben Kelly bdbb6e6750 Bug 1415740 P1 Allow PerformanceResourceTiming.workerStart to be accessed on no-cors resources without Timing-Allow-Origin. r=baku 2017-11-10 00:20:30 -08:00
Ben Kelly 39ab1eb0b4 Bug 1415630 Make PerformanceResourceTiming.fetchStart match the time we dispatch the FetchEvent when SW interception occurs. r=baku 2017-11-09 09:00:43 -08:00
Sebastian Hengst 485da1eec8 Backed out changeset c2c746884242 (bug 1403027) for failing M-e10s(2,h2) without failure summary on Windows. r=backout on a CLOSED TREE
--HG--
extra : amend_source : e140ace761a6be91840cb282bc7c676561698291
2017-10-25 23:44:40 +02:00
Thomas Wisniewski 6bf7c6882a Bug 1403027 - Do not throw from PerformanceObserver.observe when none of the entryTypes are known (log a JS console warning instead); r=bz
MozReview-Commit-ID: Lx2cjWDX8sh

--HG--
extra : rebase_source : d7e8b3dfbf395de0c0d7b5b7ce716a37337735f5
2017-10-22 22:49:44 -04:00
Sebastian Hengst 6125e83b28 Backed out changeset c5f2f0e827d0 (bug 1403027) for build bustage at dom/workers/WorkerPrivate.cpp(984): expression did not evaluate to a constant, at least on Windows. r=backout on a CLOSED TREE
--HG--
extra : amend_source : e6eb5cbe9b6b41a929c8f811859efe6093eab3a2
2017-10-21 00:31:07 +02:00
Thomas Wisniewski ac538c1bc0 Bug 1403027 - Do not throw from PerformanceObserver.observe when none of the entryTypes are known (log a JS console warning instead); r=bz
MozReview-Commit-ID: Lx2cjWDX8sh

--HG--
extra : rebase_source : 7f70818de5e4c31eb1781d524e0129b0b20759e3
2017-10-20 15:58:20 -04:00
Ben Kelly 8231685365 Bug 1204254 P14 Stop faking responseStart/End directly and make PerformanceTiming map SW specific timings instead. r=asuth 2017-10-17 13:38:56 -07:00
Nicholas Nethercote 8a68e6fb83 Bug 1403868 (part 4) - Reduce tools/profiler/public/*.h to almost nothing in non-MOZ_GECKO_PROFILER builds. r=mstange.
Currently the Gecko Profiler defines a moderate amount of stuff when
MOZ_GECKO_PROFILER is undefined. It also #includes various headers, including
JS ones. This is making it difficult to separate Gecko's media stack for
inclusion in Servo.

This patch greatly simplifies how things are exposed. The starting point is:

- GeckoProfiler.h can be #included unconditionally;

- everything else from the profiler must be guarded by MOZ_GECKO_PROFILER.

In practice this introduces way too many #ifdefs, so the patch loosens it by
adding no-op macros for a number of the most common operations.

The net result is that #ifdefs and macros are used a bit more, but almost
nothing is exposed in non-MOZ_GECKO_PROFILER builds (including
ProfilerMarkerPayload.h and GeckoProfiler.h), and understanding what is exposed
is much simpler than before.

Note also that in BHR, ThreadStackHelper is now entirely absent in
non-MOZ_GECKO_PROFILER builds.
2017-10-04 09:11:18 +11:00
Ben Kelly f9e5ee1ee2 Bug 1191943 P1 Implement PerformanceResourceTiming.workerStart. r=asuth 2017-10-06 09:04:54 -07:00
Ben Kelly b4b2a21adc Bug 1405739 P1 Don't expose internal redirect start/end/count through performance timing API. r=valentin 2017-10-06 09:04:54 -07:00
Valentin Gosu da8e71fd84 Bug 1403926 - Make sure PerformanceNavigationTiming timestamps are correct r=baku
MozReview-Commit-ID: 9qtfwaqSY4J

--HG--
extra : rebase_source : 1c8b29a9cc0aec9e33dadbea8808dfda9f9a6888
2017-10-04 04:05:39 +02:00
Valentin Gosu 9b2d85e6e1 Bug 1403926 - Make the PerformanceNavigationTiming timestamps be relative to startTime r=baku
MozReview-Commit-ID: 7lvSsde9dzh

--HG--
extra : rebase_source : bc4b7fa0526a3fe749c17ce10f70baa8a33f8bb1
2017-10-04 02:48:36 +02:00
Valentin Gosu 3fba909015 Bug 1403926 - Add pref for PerformanceNavigationTiming r=baku
MozReview-Commit-ID: 9f6fcCk8mh

--HG--
extra : rebase_source : 0a1252a7cff2cfaec8f0ab5f8ffa755a0a8a4b5e
2017-10-04 02:48:33 +02:00
Valentin Gosu 70b668ea83 Bug 1403178 - Remove mParent assertion from Performance* as it's triggered in headless mode r=baku
MozReview-Commit-ID: BOz7e0oarab

--HG--
extra : rebase_source : 4b64987f740e737315b4e5c6858018c1449cec62
2017-09-28 08:26:11 +02:00
Valentin Gosu 5519da0088 Bug 1403154 - Don't MOZ_CRASH in PerformanceNavigationTiming::Type if the navigation type is TYPE_RESERVED r=baku
MozReview-Commit-ID: A9lwpjRb3G6

--HG--
extra : rebase_source : 854cc9d8616fa5dc8365c82b1e29a4eab91bb590
2017-09-26 17:44:05 +02:00
Valentin Gosu f59511657b Bug 1263722 - Implement performance navigation timing r=baku
MozReview-Commit-ID: 9rJ3J6SqiDX
* * *
[mq]: test.patch

MozReview-Commit-ID: IYXp5G3iNSi

--HG--
extra : rebase_source : 42ef00dea8c7dff60743c1119faf4a76e8f59ae5
2016-04-17 22:03:28 +02:00
Sebastian Hengst b9a549d819 Backed out changeset 6827b7bf9116 (bug 1263722) for leaks detected on mochitest shutdown. r=backout 2017-09-25 09:57:13 +02:00
Valentin Gosu d5c34da10e Bug 1263722 - Implement performance navigation timing r=baku
MozReview-Commit-ID: 9rJ3J6SqiDX
* * *
[mq]: test.patch

MozReview-Commit-ID: IYXp5G3iNSi

--HG--
extra : rebase_source : 5f2efdcf2cbd9f3b80752b59f083e32654a32e61
2016-04-17 22:03:28 +02:00
Hiroyuki Ikezoe 6b381a4cf5 Bug 1386021 - Enable PerformanceObserver on all channels. r=baku
MozReview-Commit-ID: LdktbmR4Fd

--HG--
extra : rebase_source : e3940d7a52c94effe98a7c19b7a8c68255078349
2017-09-07 06:23:49 +09:00
Hiroyuki Ikezoe 53ea279d4e Bug 1396219 - Support PerformanceObserverInit.buffered. r=baku
MozReview-Commit-ID: FhVZquBoC6F

--HG--
extra : rebase_source : 550192da86e26b1a0056d89546e83644e19bbcbb
2017-09-03 10:25:57 +09:00
Hiroyuki Ikezoe a81e75270e Bug 1396230 - Clear PerformanceObserver mQueuedEntries right after they were copied to PerformanceObserverEntryList. r=baku
This matches to the spec and makes po-callback-mutate.any.js test pass.

From the spec [1]

  1. Let entries be a copy of po’s observer buffer.
  2. Empty po’s observer buffer.
  3. If entries is non-empty, call po’s callback with entries as first
     argument and po as the second argument and callback this value. If this
     throws an exception, report the exception.

[1] https://w3c.github.io/performance-timeline/#queue-a-performanceentry

MozReview-Commit-ID: AEdfvGpauzy

--HG--
extra : rebase_source : 20b9fc8426fd48d10e8e55662afe1c881fd92343
2017-09-02 22:05:44 +09:00
Hiroyuki Ikezoe 8f3ef222fd Bug 1396228 - Filter out by type if the type if specified for PerformanceEntry.getEntries. r=baku
MozReview-Commit-ID: 4XManqN8BVY

--HG--
extra : rebase_source : 2fefe77e5fcadbd4e5632d557e554e8356c1ef52
2017-09-02 21:42:00 +09:00
Hiroyuki Ikezoe 8ae5e3226b Bug 1396227 - Sort performance entries by start time. r=baku
MozReview-Commit-ID: 7m4MLlOJmFZ

--HG--
extra : rebase_source : 7437d240e8c74d279cef8e1dee277d06125f4df6
2017-09-02 21:39:19 +09:00
Andrew McCreight 78807d8776 Bug 1391005 - Eliminate NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED. r=peterv
Replace it with NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION, because it
has been the same for a while.

MozReview-Commit-ID: 5agRGFyUry1

--HG--
extra : rebase_source : 5388c56b2f6905c6ef969150f0c5b77bf247624d
2017-08-29 16:02:48 -07:00