Commit Graph

55 Commits

Author SHA1 Message Date
Jeff Gilbert
70a22b2878 Bug 1470325 - s/FooBinding/Foo_Binding/g - r=qdot
MozReview-Commit-ID: JtTcLL5OPF0
2018-06-26 17:05:01 -07:00
Sebastian Hengst
d91e9954eb Backed out 4 changesets (bug 525063) on request from Andi. a=backout
Backed out changeset 516c4fb1e4b8 (bug 525063)
Backed out changeset 6ff8aaef2866 (bug 525063)
Backed out changeset bf13e4103150 (bug 525063)
Backed out changeset d7d2f08e051c (bug 525063)
2018-04-13 16:01:28 +03:00
Tristan Bourvon
6095241db8 Bug 525063 - Initialize uninitialized class attributes in m-c. r=ehsan 2018-04-10 21:11:02 +02:00
Andrea Marchesini
a7ccfab1f0 Bug 1437897 - Remove a wrong assertion related to the size of the Performance resource entries array in Performance::InsertResourceEntry, r=bz 2018-04-11 07:42:43 +02:00
Boris Zbarsky
d54406240d Bug 1449631 part 6. Remove nsIDOMEventTarget::DispatchEvent. r=smaug
MozReview-Commit-ID: 8YMgmMwZkAL
2018-04-05 13:42:41 -04:00
Tom Ritter
e19e7123c5 Bug 1440195 Add a random context seed to the Performance APIs r=baku
We attach it to WorkerPrivate and DOMNavigationTiming so it will be re-used
when it should.

WorkerPrivate is used in the Performance APIs, Performance Storage Worker,
and Event.

DOMNavigationTiming is used only in the Performance APIs, but the crucial
part is that when the individual DOMNavigationTiming object is re-used,
so will the context seed. This in particular came up with the
nav2_test_document_open.html Web Platform Test which illustrated the fact
that even if you .open() a new document, the performance navigation data
is not supposed to change.

MozReview-Commit-ID: GIv6biEo2jY
2018-03-13 12:36:34 -05:00
Tom Ritter
30e3434271 Bug 1443943 Allow internal callers of performance.now() to opt-out of clamping/jittering r=bholley
PresShell only uses performane.now to track refresh times, and notify internal
observers. We can provide more accurate times by not clamping and jittering
these numbers.

MozReview-Commit-ID: FkDGJhrLeAy
2018-03-09 20:12:53 -06:00
Tom Ritter
728b7eb478 Bug 1443943 Port the performance APIs only to only clamping/jittering on non-System Principal r=baku
MozReview-Commit-ID: FKYLI5Yc1kX
2018-03-09 09:29:33 -06:00
Andreea Pavel
816981a5af Merge mozilla-central to autoland. a=merge on a CLOSED TREE 2018-03-09 21:35:33 +02:00
Andrea Marchesini
93d27a5c53 Bug 1444150 Performance.measure(name) should not throw if name is one of the readonly attribute of the Performance interface, r=valentin 2018-03-09 08:23:44 +01:00
Greg Tatum
e737c78f7b Bug 1425605 - Add the start/end mark names to performance.measure profiler markers; r=baku,mstange
MozReview-Commit-ID: I8DzSlSi124
2018-03-08 16:36:53 -06:00
Andrea Marchesini
b00c0daf83 Bug 1436744 - Get rid of WorkerCheckAPIExposureOnMainThreadRunnable, r=catalinb 2018-02-12 21:02:22 +01:00
Josh Matthews
d169301c59 Bug 1436743 - Dispatch events via the docgroup rather than the tabgroup when possible. r=mystor 2018-02-08 15:54:00 -05:00
Andrea Marchesini
ddb4518ad1 Bug 1435174 - Remove the renaming 'using namespace workers', r=bkelly 2018-02-05 19:55:07 +01:00
Andrea Marchesini
98ac9eb616 Bug 1432963 - Fixing workers headers - part 15 - static function in a workers namespace, r=smaug 2018-01-31 08:24:30 +01:00
Andrea Marchesini
5e357eed9f Bug 1432963 - Fixing workers headers - part 14 - WorkerPrivate without workers namespace, r=smaug 2018-01-31 08:24:08 +01:00
Andrea Marchesini
dc1d03e3bd Bug 1425458 - Resource timing entries Workers - part 5 - dispatch resourcetimingbufferfull on workers, r=smaug 2018-01-24 17:17:32 +01:00
Andrea Marchesini
16b8539112 Bug 1425458 - Resource timing entries Workers - part 4 - exposing partial interface, r=smaug 2018-01-24 17:17:32 +01:00
Andrea Marchesini
e78cbcb82c Bug 1425458 - Resource timing entries Workers - part 3 - PerformanceStorageWorker, r=smaug 2018-01-24 17:17:32 +01:00
Brindusan Cristian
1153f2c09e 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
a8f8b5e0dc Bug 1425458 - Resource timing entries Workers - part 5 - dispatch resourcetimingbufferfull on workers, r=smaug 2018-01-24 17:17:32 +01:00
Andrea Marchesini
a3bab5da2e Bug 1425458 - Resource timing entries Workers - part 4 - exposing partial interface, r=smaug 2018-01-24 17:17:32 +01:00
Andrea Marchesini
7441e0cd2e Bug 1425458 - Resource timing entries Workers - part 3 - PerformanceStorageWorker, r=smaug 2018-01-24 17:17:32 +01:00
Tom Ritter
070e736544 Bug 1424341 Round the Performance Timing APIs when privacy.reduceTimerPrecision is set r=bkelly,timhuang
MozReview-Commit-ID: LrAmrIfKk39
2018-01-10 15:51:23 -06:00
Tom Ritter
f6a841f36f 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
Nicholas Nethercote
a35e82f193 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
Valentin Gosu
536dee98ef Bug 1263722 - Implement performance navigation timing r=baku
MozReview-Commit-ID: 9rJ3J6SqiDX
* * *
[mq]: test.patch

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

MozReview-Commit-ID: IYXp5G3iNSi
2016-04-17 22:03:28 +02:00
Hiroyuki Ikezoe
4303f0c566 Bug 1396227 - Sort performance entries by start time. r=baku
MozReview-Commit-ID: 7m4MLlOJmFZ
2017-09-02 21:39:19 +09:00
Andrew McCreight
84ee98de3c 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
2017-08-29 16:02:48 -07:00
Andrea Marchesini
58ed03bcac Bug 1382768 - Performance API must be a memory reporter, r=bz 2017-07-27 09:05:51 +02:00
Andrea Marchesini
40d144c243 Bug 1159003 - Remove Performance::GetAsISupports(), r=bz 2017-07-20 19:05:38 +02:00
Andrea Marchesini
4733a84628 Bug 1159003 - setResourceTimingBufferSize shouldn't affect user timing, but we should clean user markers if we have memory pressure, r=bz 2017-07-20 12:57:08 +02:00
Ryan VanderMeulen
2ba426cf36 Backed out changesets f4378a5e6c7f and b7d81fea0b33 (bug 1159003) for causing bug 1383553. 2017-07-25 21:50:06 -04:00
Nicholas Nethercote
e892cd86c4 Bug 1382099 - Remove MOZ_WIDGET_GONK from several dom/ subdirectories. r=mccr8,jdm.
As well as the obvious #ifdef stuff, the patch removes
TCPSocket::SetAppIdAndBrowser(), which means
{TCPSocketParent,TCPServerSocketParent}::{GetAppId,GetInIsolatedMozBrowser}()
can also be removed.
2017-07-21 10:52:44 +10:00
Andrea Marchesini
7bc9575662 Bug 1159003 - Remove Performance::GetAsISupports(), r=bz 2017-07-20 19:05:38 +02:00
Andrea Marchesini
ffe7b0ef3b Bug 1159003 - setResourceTimingBufferSize shouldn't affect user timing, but we should clean user markers if we have memory pressure, r=bz 2017-07-20 12:57:08 +02:00
Nicholas Nethercote
4d8e21e334 Bug 1375776 (part 4) - Allow ProfilerMarkerPayload.h to be #included unconditionally. r=mstange.
This requires:

- Moving the constructors of ProfilerMarkerPayload and its subclasses into the
  .h file so they are visible even when ProfilerMarkerPayload.cpp isn't
  compiled.

- Similarly, using a macro to make StreamPayload() a crashing no-op when the
  profiler isn't enabled. (It is never called in that case.)
2017-06-23 16:24:15 +10:00
Bill McCloskey
ce42826bdf Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-26 14:19:58 -07:00
Nicholas Nethercote
4a9adbea0f Bug 1375299 (part 2) - Remove PROFILER_MARKER. r=mstange.
PROFILER_MARKER is now just a trivial wrapper for profiler_add_marker(). This
patch removes it.
2017-06-22 13:40:21 +10:00
Carsten "Tomcat" Book
238bf154d5 Backed out changeset 4f6302a98ae4 (bug 1372405) 2017-06-21 13:59:26 +02:00
Bill McCloskey
67e8af4720 Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-20 21:44:11 -07:00
Carsten "Tomcat" Book
bbe9441993 Backed out changeset 9846de3bd954 (bug 1372405) 2017-06-20 08:27:02 +02:00
Bill McCloskey
f69608368b Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-19 22:25:47 -07:00
Nicholas Nethercote
0f9a531d87 Bug 1373436 (part 4) - Use UniquePtr with profile_add_marker(). r=mstange.
Once the |aPayload| argument to profile_add_marker() became a UniquePtr the
default value of nullptr caused compilation difficulties that could only be
fixed by #including ProfilerMarkerPayload.h into lots of additional places
(because the UniquePtr<T> instantiation required the T to be fully defined). To
get around this I just split profile_add_marker() into two functions, one with
1 argument and one with 2 arguments.

The patch also removes the definition of PROFILER_MARKER_PAYLOAD in the case
where MOZ_GECKO_PROFILER isn't defined. A comment explains why.
2017-06-16 12:26:26 +10:00
Tim Huang
70b377a07b Bug 1369303 - Part 2: Marking the performance timing API always reports 0 and the access of resource timing and user timing becomes NOP when 'privacy.resistFingerprinting' is true. r=arthuredelstein,baku
This patch is going to neutralize the threat of fingerprinting of performance API
by spoofing the value of performance timing into 0, making getEntries* functions
always returns an empty list and making mark() and measure() into NOP methods.

In addition, this patch changes nsContentUtils::ShouldResistFingerprinting() to
allow it can be called in both main thread and worker threads.

MozReview-Commit-ID: C8Jt7KEMe5e
2017-06-15 16:48:27 +08:00
Jonathan Hao
fd3d68110a Bug 1217238 - Reduce time precision when privacy.resistFingerprinting is on. r=mystor
This patch is adapted from Tor bug 1517.

To offer some protection against timing attacks by JS content pages, in this
patch we round the various time-exposing APIs (such as Date and
Event.timeStamps) to the nearest 100 ms when the pref "privacy.resistFingerprinting" is on.

MozReview-Commit-ID: eGucM9nGTn
2017-06-06 11:45:14 +08:00
Nicholas Nethercote
3dbdcca05c Bug 1123754 (part 1) - Rename ProfilerMarkers.{h,cpp} as ProfilerMarkerPayload.{h,cpp}. r=mstange.
Because ProfilerMarkerPayload is the main type defined in these files, and
because the next patch is going to introduce ProfilerMarker.{h,cpp}, which
would be confusingly similar to the old names.
2017-04-27 07:36:19 +10:00
Greg Tatum
6895bbf293 Bug 1357849 - Instrument performance.measure with markers; r=baku,mstange
MozReview-Commit-ID: KQcQgxYyEYi
2017-04-24 10:15:11 -05:00