Commit Graph

1723 Commits

Author SHA1 Message Date
Nathan Froyd
3fe17471e7 Bug 1486906 - fill in a missing case for aarch64 windows in platform-win32.cpp; r=mstange 2018-08-28 15:58:12 -04:00
Nathan Froyd
ae15c6ad5c Bug 1485716 - part 3 - add aarch64 windows support to the profiler; r=mstange
Frame pointers are enabled in Windows code always, and in our code by
default after the first patch in this series.
2018-08-23 16:48:53 -04:00
Jeff Walden
e4f79e2a19 Bug 1484421 - Move JSON-related functionality into js/public/JSON.h that isn't #include'd in jsapi.h. r=jandem 2018-08-20 07:54:45 -07:00
Denis Palmeiro
90f5ec05cc bug 785922: Emit column numbers for JS frames and functions in the gecko profiler r=sfink,mstange
Add support for column numbers when profiling JS stack frames and functions.  This will help debug minified scripts when inspecting performance profiles.  The column information will be emitted as a new column property that is part of the frameTable in the profile output, and will also be appended in the descriptive profiler string.

Differential Revision: https://phabricator.services.mozilla.com/D3059

--HG--
extra : moz-landing-system : lando
2018-08-17 19:45:39 +00:00
arthur.iakab
ba75ab7e22 Backed out changeset bb09f2ec0d28 (bug 785922)for causing Android build bustages on profiler/core/platform.cpp CLOSED TREE 2018-08-17 18:22:13 +03:00
Denis Palmeiro
e60252016a bug 785922: Emit column numbers for JS frames and functions in the gecko profiler r=sfink,mstange
Add support for column numbers when profiling JS stack frames and functions.  This will help debug minified scripts when inspecting performance profiles.  The column information will be emitted as a new column property that is part of the frameTable in the profile output, and will also be appended in the descriptive profiler string.

Differential Revision: https://phabricator.services.mozilla.com/D3059

--HG--
extra : moz-landing-system : lando
2018-08-13 17:56:52 +00:00
Mike Hommey
d2a1113cc2 Bug 1480706 - Enable Frame-pointer chasing on x86. r=sewardj 2018-08-08 18:26:04 +09:00
Masatoshi Kimura
3b21b7868b Bug 1090497 - Re-enable warnings as errors on clang-cl. r=froydnj
--HG--
extra : rebase_source : c09366fb93e5b0f72abe1e99d3094e3d96a934fb
extra : intermediate-source : 5950c9d63c3b4fd63a25464a7b50944aaec7079f
extra : source : ca1b9a2bcc4381795f556fea2fb59066567c30f3
2018-07-31 22:10:07 +09:00
Randell Jesup
85a1661cdc Bug 1474701: Fix shutdown profile-save (fix imbalance) and add JSONWriter assertions r=mstange,njn 2018-08-06 10:44:26 -04:00
Markus Stange
8a19b9e4c6 Bug 1476793 - Teach HelperThread how to push/pop profiler label frames, and use this capability to push an IDLE frame when the thread is idle. r=njn,sfink
MozReview-Commit-ID: 6HIWrA27X87

--HG--
extra : rebase_source : cdf4e2e8a15eea8910e3aad8a78d55463e9ce4da
2018-08-02 13:49:48 -04:00
Kris Maglione
9408c8c02a Bug 1476405: Part 4 - Create nsThread wrappers whenever a thread is registered with the profiler. r=erahm,mstange
This automatically gets us wrappers (and therefore memory statistics) for
Stylo threads, JS HelperThreads, and any other non-nsThread threads that we
already register with the profiler.

MozReview-Commit-ID: 8ZPjb0ojyWp

--HG--
extra : rebase_source : 2d99b864a21ac8f700f9b8686adc4ac14679ef48
extra : intermediate-source : aeebad4f2dc31901f5b63263169229455e827ac2
extra : source : b5b9d295545dff9c8f7aa5e5c0137afa24385eb2
2018-07-18 22:39:38 -07:00
Cosmin Sabou
778ca4f84f Backed out 8 changesets (bug 1476405) for causing frequent failures in bug 1479022. a=backout
Backed out changeset ad1674e9152d (bug 1476405)
Backed out changeset e0a021b27d2c (bug 1476405)
Backed out changeset 771288dbf852 (bug 1476405)
Backed out changeset aeebad4f2dc3 (bug 1476405)
Backed out changeset 4831cbfd03de (bug 1476405)
Backed out changeset 0b0c243a1827 (bug 1476405)
Backed out changeset 236b366fdf37 (bug 1476405)
Backed out changeset c767b1b618fb (bug 1476405)
2018-07-28 01:25:25 +03:00
Kris Maglione
b2dfcd9f0d Bug 1476405: Part 4 - Create nsThread wrappers whenever a thread is registered with the profiler. r=erahm,mstange
This automatically gets us wrappers (and therefore memory statistics) for
Stylo threads, JS HelperThreads, and any other non-nsThread threads that we
already register with the profiler.

MozReview-Commit-ID: 8ZPjb0ojyWp

--HG--
extra : source : b5b9d295545dff9c8f7aa5e5c0137afa24385eb2
extra : histedit_source : c8a6352058996670bbd22ac28949d852d62a976a
2018-07-18 22:39:38 -07:00
Coroiu Cristina
6d037d0cba Backed out 9 changesets (bug 1476405) for causing leaks
Backed out changeset 4113d6fb3c1c (bug 1476405)
Backed out changeset cb7f7cc32687 (bug 1476405)
Backed out changeset 6d18a8bd5ee3 (bug 1476405)
Backed out changeset b2a99f50e642 (bug 1476405)
Backed out changeset b5b9d295545d (bug 1476405)
Backed out changeset f092a32a3639 (bug 1476405)
Backed out changeset 6c154f4d9dd9 (bug 1476405)
Backed out changeset d0ebb3aa8e0f (bug 1476405)
Backed out changeset 06b8093ddc6a (bug 1476405)
2018-07-27 08:56:36 +03:00
Kris Maglione
cdd84d7001 Bug 1476405: Part 4 - Create nsThread wrappers whenever a thread is registered with the profiler. r=erahm,mstange
This automatically gets us wrappers (and therefore memory statistics) for
Stylo threads, JS HelperThreads, and any other non-nsThread threads that we
already register with the profiler.

MozReview-Commit-ID: 8ZPjb0ojyWp

--HG--
extra : rebase_source : 338e8cd4951ea4ecc8d502f980d0808dedb7193b
2018-07-18 22:39:38 -07:00
Nathan Froyd
322d49add1 Bug 1477009 - use a dependent CString on Android for finding breakpad ids; r=njn
This is slightly more efficient, since we don't have to copy the string.
2018-07-26 09:47:05 -04:00
Makoto Kato
865507f5ea Bug 1469495 - Java Sampler never stops profiling. r=njn,snorp
Since GeckoJavaSampler::Stop() isn't called from locked_profiler_stop, Java
sampler is never stopped after stopping profiler.

And when calling GeckoJavaSampler::Stop(), it causes dead lock since stop()
is acquiring lock.  So when calling join method, we should release this lock.

MozReview-Commit-ID: BLREo0lH6DS

--HG--
extra : rebase_source : f9c43f3d0e2a527abf1828d023d1a962fc526bde
2018-06-22 15:27:45 +09:00
Brian Hackett
114cce6824 Bug 1465452 Part 7 - Don't record a profiler atomic, r=njn.
--HG--
extra : rebase_source : 1e4bfd1579c6cced9493be5e883b290a60f22426
2018-07-21 14:32:11 +00:00
Brian Hackett
4be736018d Bug 1207696 Part 4b - Make recording optional in mozilla mutexes and monitors, r=froydnj.
--HG--
extra : rebase_source : c00f199b38c6bdd47ed1793edf2ce90fbf2ff420
2018-07-21 14:22:54 +00:00
Bogdan Tara
97830f0e63 Merge mozilla-central to mozilla-inbound. a=merge CLOSED TREE 2018-07-20 00:55:33 +03:00
Bogdan Tara
b6e2939995 Merge inbound to mozilla-central. a=merge 2018-07-20 00:49:06 +03:00
Jed Davis
96c18b6c4a Bug 1467889 - Adjust some uses of XPCOM strings. r=mrbkap r=mstange
MozReview-Commit-ID: 5AG4WAmbLZz
2018-07-19 14:14:50 -06:00
Nathan Froyd
6026bc4fec Bug 1471347 - part 2 - store an nsCString for SharedLibrary::mBreakpadId; r=njn
Similar to the previous part, we convert mBreakpadId to an nsCString to
avoid issues with locale-dependent std::string operations.

There are a lot of non-profiler changes here because a bunch of things
depend on the SharedLibrary object that the profiler defines.
2018-07-19 10:32:07 -04:00
Nathan Froyd
0115588ec9 Bug 1471347 - part 1 - store an nsCString for SharedLibrary::mVersion; r=njn
Using operator<< on stringstream on Windows dives into the registry for
locale-specific formatting details.  This behavior is neither desired
or (probably) anticipated by the code.  Instead, let's use our normal
Gecko string classes for SharedLibrary::mVersion.
2018-07-19 10:32:07 -04:00
Markus Stange
87baa69fc6 Bug 1465954 - Set IDLE and OTHER categories on stack frames in the Java thread. r=m_kato
MozReview-Commit-ID: EFEOLUO5VyA

--HG--
extra : rebase_source : a51e782d302f4901522c28cf74504fc60233a59d
2018-05-31 16:20:51 -04:00
Jan de Mooij
4f7b2378dc Bug 1474273 - Add xpc::CurrentNativeGlobal and use it instead of NativeGlobal(JS::CurrentGlobalOrNull(cx)). r=bz 2018-07-11 14:07:02 +02:00
Nazım Can Altınova
118413a3d9 Bug 1466783 - Avoid copying while passing the profiler data with IPC r=mstange
MozReview-Commit-ID: HfskcLojToC

--HG--
extra : rebase_source : e88e6770d29bdda3b7b46ea9eb28ecdc36b3f0ee
2018-06-15 11:16:41 -07:00
Andreea Pavel
a892a1e9b1 Backed out changeset 463f7fc23171 (bug 1466783) build bustages on a CLOSED TREE 2018-07-05 13:26:40 +03:00
Nazım Can Altınova
d36bbb96e0 Bug 1466783 - Avoid copying while passing the profiler data with IPC r=mstange
MozReview-Commit-ID: HfskcLojToC

--HG--
extra : rebase_source : 361efe4349cbe97303313d47450e60f35a91d1b0
2018-06-15 11:16:41 -07:00
Aaron Klotz
e0e1a8b28a Bug 1460022: Part 13 - Update profiler to use revised DLL interceptor interface; r=njn 2018-06-27 14:23:29 -06:00
shindli
dd50d1646e Backed out 13 changesets (bug 1460022) for bustages in :/build/build/src/mozglue/tests/interceptor/TestDllInterceptor.cpp(113) on a CLOSED TREE
Backed out changeset b798c3689bbf (bug 1460022)
Backed out changeset c3b3b854affd (bug 1460022)
Backed out changeset ecb1b6fd3134 (bug 1460022)
Backed out changeset 91fed649dd5a (bug 1460022)
Backed out changeset be7032cddad2 (bug 1460022)
Backed out changeset d4a036b976e6 (bug 1460022)
Backed out changeset 5f3dfde41e38 (bug 1460022)
Backed out changeset a16486a6f685 (bug 1460022)
Backed out changeset 69eacc5c3ab8 (bug 1460022)
Backed out changeset 34aa7c29b31e (bug 1460022)
Backed out changeset 00b20c0a7637 (bug 1460022)
Backed out changeset b8e8aea4a01f (bug 1460022)
Backed out changeset 15822d9848d8 (bug 1460022)
2018-07-04 03:37:11 +03:00
Aaron Klotz
6cc49d76d9 Bug 1460022: Part 13 - Update profiler to use revised DLL interceptor interface; r=njn 2018-06-27 14:23:29 -06:00
shindli
dcc88f33f9 Backed out 13 changesets (bug 1460022) for bustages in builds/worker/workspace/build/src/dom/plugins/ipc/FunctionHook.h💯24 on a CLOSED TREE
Backed out changeset 0734142a3f35 (bug 1460022)
Backed out changeset 18fbfa7ca685 (bug 1460022)
Backed out changeset 2df129bd5692 (bug 1460022)
Backed out changeset 02a7ed68933f (bug 1460022)
Backed out changeset 221137d1c2de (bug 1460022)
Backed out changeset 9cb0b7a15402 (bug 1460022)
Backed out changeset 18f8f85c0307 (bug 1460022)
Backed out changeset 867a1351efff (bug 1460022)
Backed out changeset 933e0b698f8e (bug 1460022)
Backed out changeset 09da660071e1 (bug 1460022)
Backed out changeset 8bb5142d3f53 (bug 1460022)
Backed out changeset 0ddf581bdaac (bug 1460022)
Backed out changeset 1cd5f9b4a6af (bug 1460022)
2018-07-04 02:49:24 +03:00
Aaron Klotz
9bd593b66d Bug 1460022: Part 13 - Update profiler to use revised DLL interceptor interface; r=njn
--HG--
extra : rebase_source : de4708af590df72ce53196712dbb15b57f57dd2e
2018-06-27 14:23:29 -06:00
Gurzau Raul
3d25f84c56 Backed out changeset e17f5abb8114 (bug 1472268) for build bustages on /src/js/src/vtune/ittnotify_static.c on a CLOSED TREE 2018-07-02 00:59:56 +03:00
Bas Schouten
9b74ea4dc4 Bug 1472268: Update in-tree VTune integration SDK. r=sstangl
MozReview-Commit-ID: 9yRZFboc51U
2018-07-01 23:45:38 +02:00
Julian Seward
3af306752a Bug 1469410 - UBSan false positive at tools/profiler/lul/LulMain.cpp:910:57. r=froydnj.
--HG--
extra : rebase_source : 3a5edbd2543fb8330cc1dcb4ffefce8430d2f0b5
2018-06-22 10:03:06 +02:00
Kartikaya Gupta
e0ed117e2b Bug 1444765 - Allow setting a pid:<pid> thread filter to capture all threads for a process. r=njn
MozReview-Commit-ID: CaMsmEtQ5UY

--HG--
extra : rebase_source : de2277f6fdd37246a57365530687fbf526fdecb6
2018-06-14 12:41:48 -04:00
Andi-Bogdan Postelnicu
b5f26d899f Bug 1453795 - Gecko Profiler - Initialize member fields in classes/ structures. r=mstange 2018-06-13 22:36:24 +03:00
Narcis Beleuzu
7fdbc8641e Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-06-06 20:04:08 +03:00
Jan de Mooij
615ecff147 Bug 1466083 part 8 - Various minor API changes. r=luke
* GetScriptCompartment => GetScriptRealm
* Adds IsSystemRealm in addition to IsSystemCompartment and uses it where we can.
* JS_GetCompartmentPrincipals and IsSystemCompartment now release-assert they have a single realm. This is temporary until we know what Gecko will do/need exactly.
2018-06-06 12:55:50 +02:00
Nazım Can Altınova
1a45365811 Bug 1458246 - Use Shmem to pass the profiler data to be able to send large profiler data r=mstange
We were using nsCString to pass the profiler data between processes. But it was
failing to send because there is a ~256MB limit for the string data. So we
changed it to use Shmem instead. Shmem creates a shared memory and passes the
weak reference. With it, we can send larger data without having a problem.

MozReview-Commit-ID: 1kj57fZDXVF

--HG--
extra : rebase_source : 25a8ab57bcae8012fee1cdd9d4b767036db192d7
2018-06-01 19:28:32 +02:00
Miko Mynttinen
4c85ef17cc Bug 1465060 - Part 1: Fix warnings for std::move() use r=froydnj
MozReview-Commit-ID: HpdFXqQdIOO

--HG--
extra : rebase_source : 1e7eea4f2d4ec16ec0c559a8afb26976ddbf4d07
2018-06-01 17:59:07 +02:00
arthur.iakab
7e765f798b Backed out 2 changesets (bug 1465060) for build bustages on security/sandbox/linux/reporter/SandboxReporter.cpp
Backed out changeset 7c8905b6b226 (bug 1465060)
Backed out changeset 10446073eca8 (bug 1465060)
2018-06-03 19:25:41 +03:00
Miko Mynttinen
8d9dc85cd4 Bug 1465060 - Part 1: Fix warnings for std::move() use r=froydnj
MozReview-Commit-ID: HpdFXqQdIOO

--HG--
extra : rebase_source : 619d0e0ff63a2453c80f0c4d9beb906d43fa9b01
2018-06-01 17:59:07 +02:00
Julien Wajsberg
58724e4f93 Bug 1467111 - Add the responsiveness feature to the default feature list r=mstange
Bug 1447338 introduced the new feature for responsiveness handling, but
we forgot to include it in the default feature list. As a result it's
not included by default when profiling the startup.

MozReview-Commit-ID: 1YPcDaGZR9s

--HG--
extra : rebase_source : 421bbda28b3c7170c4dc3f676f57844483528276
2018-06-06 15:24:08 +02:00
Csoregi Natalia
2f779be8d9 Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-06-02 01:03:45 +03:00
Emilio Cobos Álvarez
fffb25b74f Bug 1465585: Switch from mozilla::Move to std::move. r=froydnj
This was done automatically replacing:

  s/mozilla::Move/std::move/
  s/ Move(/ std::move(/
  s/(Move(/(std::move(/

Removing the 'using mozilla::Move;' lines.

And then with a few manual fixups, see the bug for the split series..

MozReview-Commit-ID: Jxze3adipUh
2018-06-01 10:45:27 +02:00
Markus Stange
9553844d4b Bug 1462784 - Add the list of categories into the profile JSON and bump the version to 11. r=njn
MozReview-Commit-ID: 1g4WqsWFFbg

--HG--
extra : rebase_source : 12bec1b1ff672bcaadb5d6500eed8b0561d86d64
2018-05-25 17:28:39 -04:00
Markus Stange
bf590995b7 Bug 1462784 - Remove the STORAGE category. r=njn
This was used to label IndexedDB work and work in storage/mozStorage*.
I don't think this deserves its own category; categories are most useful for
the main thread, and most of the time-consuming database-related work happens
on helper threads. The main thread pieces are mostly for asynchronicity-
coordination and don't usually take up time.

This patch labels IndexedDB work as DOM instead (which is maybe debatable) and
the rest as OTHER.

MozReview-Commit-ID: 3UYhFFbi3Ry

--HG--
extra : rebase_source : 5c88dfd67274103de01fe44191f49776017738f9
2018-05-18 17:55:18 -04:00