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

4746 Коммитов

Автор SHA1 Сообщение Дата
Carsten "Tomcat" Book 1a0d9545b9 merge mozilla-inbound to mozilla-central a=merge 2017-05-31 11:28:43 +02:00
Markus Stange e2336b07a8 Bug 1330185 - Use a top-level PProfiler protocol to control the profiler in other processes. r=billm,njn
MozReview-Commit-ID: EROfGuYQ6a0

--HG--
extra : rebase_source : be0aa1b9c7963882e8e7d47964f2da5b670ab10a
extra : intermediate-source : e6f368f2d8741f2a9655b288d49b59fbbd6b90b7
extra : source : 51cdc2541486d5ddf2d385ec0459a9ec38b8775b
2017-05-30 15:06:14 -04:00
Markus Stange 898434e218 Bug 1330184 - Add some GeckoProfiler tests that call functions on a background thread. r=njn
MozReview-Commit-ID: 9fMPyQ909PW

--HG--
extra : rebase_source : 8b9f82520fe693f3772ef6b1dda7f3bd06ac4ea0
2017-05-30 17:48:19 -04:00
Markus Stange 4ee7b100b1 Bug 1330184 - Remove main-thread-only assertions. r=njn
I think all of these assertions are now unnecessary.

MozReview-Commit-ID: 9EI195QsizN

--HG--
extra : rebase_source : 4f03ef02ba6680ee6cad22d5d3f347db7d70aa9c
extra : intermediate-source : 2b8d50fcb20fc0bd808707aae00d6cbcb4536bac
extra : source : 327c145ded03d39970351a9cc01492f0541d9149
2017-05-29 15:16:34 -04:00
Markus Stange 76f9a761a7 Bug 1330184 - Use threadsafe refcounting for nsProfilerStartParams. r=njn
MozReview-Commit-ID: HVihlkBr4r3

--HG--
extra : rebase_source : 7ecd602f8fd3fb1c7b290e0ff88940eb9f774b42
2017-05-31 00:35:15 -04:00
Markus Stange 9413af4371 Bug 1330184 - Register/unregister the IOInterposeObserver on the main thread, regardless of what thread the profiler is started / stopped on. r=njn
MozReview-Commit-ID: 8Y0rspxBJw3

--HG--
extra : rebase_source : 64def3fc572c55e2865f5adc570eb841fc759352
extra : intermediate-source : dbe452a9eebb5aff9fa30afdd402efdcb2b6ad30
extra : source : fd537bffda4b653dc7191434c42d068b1b9c65b8
2017-05-16 17:35:05 -04:00
Markus Stange 5d85a692ae Bug 1330184 - Allow StreamMetaObject to be called on a background thread, but only include startTime and version for those calls. r=njn
MozReview-Commit-ID: 3AuX0a2Brrd

--HG--
extra : rebase_source : 8c5d2b4ccacbbec92711a9561d4166e1e7c376c7
extra : intermediate-source : e13b9e798e16185e54435a0b926970e8de134804
extra : source : edfdb14bd020233fa29771bb0f78bcfc55f6cbb3
2017-05-29 13:44:28 -04:00
Markus Stange b728005923 Bug 1330184 - Allow notifying observers for profiler state changes on background threads. r=njn
MozReview-Commit-ID: GlkVwGTa2b4

--HG--
extra : rebase_source : b04504b06aa80635a50d7ce1dcec43a994d6ba8d
extra : intermediate-source : 52489c7eadaf8cab111eef93187c7ecb1482fe58
extra : source : b8c27d6137a43ecd031f0b58c62752b7a9cefacb
2017-05-30 17:07:56 -04:00
Mark Banner 7e8a66dc9c Bug 1368656 - Fix ./mach eslint on windows - add a return in the for loop when trying extensions to ensure we get the right one. r=florian
MozReview-Commit-ID: FSXANgWWugE

--HG--
extra : rebase_source : 778bd88977927e72718674d4e7a1c2e6b61adb12
2017-05-30 14:14:01 +01:00
Dan Banner ea09f270ab Bug 1368041 - Enable no-array-constructor across mozilla-central r=standard8
MozReview-Commit-ID: EXJNufdKKhJ

--HG--
extra : rebase_source : 66d17c7981c4b0987c482ce092b25990b42c07fb
2017-05-27 15:17:29 +01:00
Paolo Amadini 30ea634bb0 Bug 1242505 - Part 5 - Remove obsolete whitelisting of unhandled rejections. r=Mossop
The whitelisting function thisTestLeaksUncaughtRejectionsAndShouldBeFixed was replaced by expectUncaughtRejection, and existing calls did not take effect anymore.

MozReview-Commit-ID: 3uOxkgWYWEz

--HG--
extra : rebase_source : 5a10a3ebbfe0ce2a801330041f95447c313a9a70
extra : source : 6f0394b523a66dab444b8551deb8f3c6c81d8f31
2017-05-25 15:00:49 +01:00
Sebastian Hengst ea55cd0be2 Backed out changeset 6f0394b523a6 (bug 1242505) 2017-05-28 11:31:01 +02:00
Paolo Amadini 94c629ed8c Bug 1242505 - Part 5 - Remove obsolete whitelisting of unhandled rejections. r=Mossop
The whitelisting function thisTestLeaksUncaughtRejectionsAndShouldBeFixed was replaced by expectUncaughtRejection, and existing calls did not take effect anymore.

MozReview-Commit-ID: 3uOxkgWYWEz

--HG--
extra : rebase_source : 3a7720091180a770b32b595f8094c0d20170166d
2017-05-25 15:00:49 +01:00
tiago 7386600327 Bug 1366081 - Excise 'mobileGUIDFetchBatchSize' and other mobile sync-related constants. r=kitcambridge
MozReview-Commit-ID: 6JTtpWFFyvD

--HG--
extra : rebase_source : f6ca75e91ca38d0d1ba18ff79a0872d96a878954
2017-05-24 03:28:22 -03:00
Rajesh Kathiriya 1e0401a0d8 bug 1346994 - Updated nodejs not found message r=standard8
MozReview-Commit-ID: AKZyW9HPvmY

--HG--
extra : rebase_source : 9cf2befdf785c027843219a095e14d747bbf6155
2017-05-17 23:07:21 +05:30
Nicholas Nethercote a062b9be51 Bug 1366650 (part 2) - In GeckoProfiler, do all pseudo-stack accesses via the PseudoStack class, instead of via raw array manipulation. r=mstange,shu.
- The profiler gives the JS engine a reference to the pseudo-stack via
  SetContextProfiilngStack(). That function now takes a |PseudoStack*| instead
  of a |ProfileEntry*| and pointer to the stack pointer.

- PseudoStack now has a |kMaxEntries| field, which is easier to work with than
  |mozilla::ArrayLength(entries)|.

- AddressOfStackPointer() is no longer needed.

- The patch also neatens up the push operations significantly. PseudoStack now
  has pushCppFrame() and pushJsFrame(), which nicely encapsulate the two main
  cases. These delegate to the updated initCppFrame() and initJsFrame()
  functions in ProfileEntry.

- Renames max_stck in testProfileStrings.cpp as peakStackPointer, which is a
  clearer name.

- Removes a couple of checks from testProfileStrings.cpp. These checks made
  sense when the pseudo-stack was accessed via raw manipulation, but are not
  applicable now because we can't artificially limit the maximum stack size so
  easily.
2017-05-26 09:51:31 +10:00
Nicholas Nethercote 0840bb61c6 Bug 1366650 (part 1) - Move PseudoStack into SpiderMonkey. r=mstange,shu.
This includes renaming its fields to match SpiderMonkey naming conventions
instead of Gecko naming conventions.

This patch is just about moving the code. The next patch will change
SpiderMonkey to actually use PseudoStack directly.

--HG--
extra : rebase_source : 27e77ddf950201eb6bdba60003218056442cf7ab
2017-05-26 09:37:28 +10:00
Edouard Oger c4e6a8f382 Bug 1365375 - Disconnect Sync on account destroyed. r=markh
MozReview-Commit-ID: EVySp2JOgsT

--HG--
extra : rebase_source : e60612d8dedcf46170cf58f47bde2c979ab99d3f
2017-05-23 19:22:49 -04:00
Mark Banner d1dfdb8a14 Bug 1367232 - Clean up various ESLint global definitions in toolkit/. r=mossop
MozReview-Commit-ID: Hhm4YBansg1

--HG--
extra : rebase_source : 3cb49159fa3f5dae12e4eb21f22e747850fdf184
2017-05-19 09:22:48 +01:00
Mark Banner 1e0b8c246f Bug 1366720 - ESLint simpletest and places-overlay environments don't export globals correctly when used outside of mozilla-central. r=mossop
MozReview-Commit-ID: 1Qj63qwjHoo

--HG--
extra : rebase_source : c403ef765a1c0e0a9836270aca69089c6a42f1d4
2017-05-22 11:25:08 +01:00
Nicholas Nethercote d1e495344b Bug 1365854 - Remove FRAME_LABEL_COPY. r=mstange,shu.
ProfileEntry has |string|, which can be static or dynamic, and |dynamicString|.
If |string| is dynamic, the FRAME_LABEL_COPY flag must be set, and it will be
copied into profiler output.

But there is only one place that uses dynamic |string| values, in SpiderMonkey.
And that place doesn't use |dynamicString|. So this patch changes that place to
use an empty |string| and put the old dynamic |string| value in
|dynamicString|. This in turn removes the need for FRAME_LABEL_COPY.

One minor wrinkle is that when |dynamicString| is used the old code put a space
between |string| and |dynamicString|. The new code omits the space if |string|
is empty.

The patch also renames ProfileEntry::string as ProfileEntry::label_, which
better matches how it's used, and ProfileEntry::dynamicString as
ProfileEntry::dynamicString_ so the getter can be renamed dynamicString().
2017-05-18 17:17:46 +10:00
Nicholas Nethercote cbb477c02f Bug 1365515 (part 2, attempt 2) - Remove tick_context_t. r=jseward.
--HG--
extra : rebase_source : 1d9774d694383bdbf25c3c389351c4b7bf3b398a
2017-05-17 17:29:59 +10:00
Nicholas Nethercote f897ce8673 Bug 1365515 (part 1, attempt 2) - Remove profiler support for x86/Darwin. r=mstange.
--HG--
extra : rebase_source : 47f20e763d62c5e3dd0ba662da0822f9cf3e1526
2017-05-17 17:28:59 +10:00
Nicholas Nethercote 282086d9d5 Bug 1366171 - Fix misplaced PSAutoLock. r=mstange.
profiler_resume() mistakenly has the PSAutoLock outside the scope created
specially for it. This patch move the PSAutoLock inside the scope, making it
the same as profiler_pause().
2017-05-19 16:30:06 +10:00
Markus Stange 42b5d166ec Back out bug 1330184 and bug 1330185 because of test failures.
MozReview-Commit-ID: ILD4mevlSU6
2017-05-21 15:11:15 -04:00
Markus Stange b5fdcd479d Bug 1330185 - Use a top-level PProfiler protocol to control the profiler in other processes. r=njn, r=billm
MozReview-Commit-ID: EROfGuYQ6a0

--HG--
extra : rebase_source : de266bda4fc2d6532ff45a6d548b13cd0b4f7206
extra : histedit_source : ad5c4e140c068f17c51d5085fd88ac691e50ab4f
2017-05-21 14:06:50 -04:00
Markus Stange 3bf894099b Bug 1330184 - Remove main-thread-only assertions. r=njn
I think all of these assertions are now unnecessary.

MozReview-Commit-ID: 9EI195QsizN

--HG--
extra : rebase_source : 2a9969dd9e48873f6ec333a5ddfa32b6d938de80
extra : histedit_source : ea4dab2b111e465d3a1e29996cc7f10eb8cdbb67%2C8ab59878e4b1b5a715e0738408c26ac3aa0501e7
2017-05-21 14:29:12 -04:00
Markus Stange cff8ee519e Bug 1330184 - Register/unregister the IOInterposeObserver on the main thread, regardless of what thread the profiler is started / stopped on. r=njn
MozReview-Commit-ID: 8Y0rspxBJw3

--HG--
extra : rebase_source : f88773d3f62a6399299101f84b890d3e253d664c
extra : histedit_source : 4c9a8264e015205a68394fa4e5030082244594f1
2017-05-16 17:35:05 -04:00
Markus Stange 11d48ea717 Bug 1330184 - Allow StreamMetaObject to be called on a background thread, but only include startTime and version for those calls. r=njn
MozReview-Commit-ID: 3AuX0a2Brrd

--HG--
extra : rebase_source : 35f0280c1dcbbcee6e1a8c0c1239f22e817ca1b9
extra : histedit_source : 4f0da56858ced5e3dcc88c34806228f75a25a875
2017-05-04 17:24:56 -04:00
Markus Stange eede579636 Bug 1330184 - Allow notifying observers for profiler state changes on background threads. r=njn
If NotifyObservers is called on a background thread, dispatch a runnable to
the main thread which will send the observer notification. This can result in
awkward orders of the notifications if the profiler functions are called in
quick succession on both the main thread and another thread, but I'm not sure
what to do about that.

MozReview-Commit-ID: GlkVwGTa2b4

--HG--
extra : rebase_source : 30537a31cc828ad7828e41c2885d84a8299a5e70
extra : source : b8c27d6137a43ecd031f0b58c62752b7a9cefacb
extra : histedit_source : f1340ef14acde098de281b81d5ea89e386e7ab42
2017-05-15 19:43:08 -04:00
Nicholas Nethercote caf0e9ec84 Bug 1367654 (part 2) - In GeckoProfiler.h, rename Sampler* as Profiler*. r=mstange.
Because everything else in this file is called ProfilerFoo or PROFILER_FOO.

--HG--
extra : rebase_source : ddab03809d321d4a301f309750e9cf55a528d467
2017-05-26 14:54:33 +10:00
Mark Banner 0ce286101c Bug 1359011 - Make the mozilla/recommended eslint configuration the default for the whole tree. r=mossop
MozReview-Commit-ID: HtUW43tCli1

--HG--
extra : rebase_source : 6496bc47860d9c1ab522a78e73b41550700021cb
2017-04-25 20:12:21 +01:00
Ryan VanderMeulen 96eca59299 Merge m-c to autoland. a=merge 2017-05-19 12:26:48 -04:00
Ryan VanderMeulen acb2f518fc Merge inbound to m-c. a=merge 2017-05-19 11:46:56 -04:00
Nicholas Nethercote 7d44af05e2 Bug 1365824 - Remove STORE_SEQUENCER. r=froydnj.
It's a software memory barrier, and not a very strong one. If the values it is
protecting are Atomic, that provides a stronger hardware memory barrier.

This patch removes it, and changes one of the values it was protecting from
|volatile| to Atomic. (The other value it was protecting was already Atomic.)
2017-05-18 13:24:13 +10:00
Mark Banner e123b6dfb8 Bug 1363795 - Enable some Mozilla ESLint recommended rules for dom/indexedDB/test (no-undef). r=bevis
MozReview-Commit-ID: G6uRTV9i0uX

--HG--
extra : rebase_source : d882067602831bc2a257283aa2e70529568ddf0f
2017-05-10 17:05:18 +01:00
Iris Hsiao c51e02e1de Merge mozilla-central to autoland 2017-05-19 11:29:00 +08:00
Iris Hsiao 02cae69058 Backed out 4 changesets (bug 1357829) for build bustage in xpcshell\selftest.py on windows 8 x64 opt. a=backout
Backed out changeset 8ea202bb1103 (bug 1357829)
Backed out changeset cebe4d7abeda (bug 1357829)
Backed out changeset 378d473c9619 (bug 1357829)
Backed out changeset 86ebe868d443 (bug 1357829)
2017-05-19 11:27:38 +08:00
Wes Kocher 90573b0612 Merge m-c to autoland, a=merge
MozReview-Commit-ID: FYdNNRDmEla
2017-05-18 17:21:30 -07:00
Bryce Van Dyk 09c8f4577b Bug 1365414 - Update eslint-plugin-mozilla to also search for MC root from CWD. r=standard8
The eslint-plugin-mozilla currently searches for Mozilla Central root by
walking up from its installed dir. However, if the plugin is installed outside
of central, such as globally, it will not find the root. This changeset
retains that behaviour, but will also perform the same check from the current
working directly before failing.

MozReview-Commit-ID: 2L3JqLTuVDS

--HG--
extra : rebase_source : e24ddc726cb2470f7165f028f71416e942c44f87
2017-05-18 08:09:45 +12:00
Wes Kocher 0174ce8ebb Merge inbound to m-c a=merge
MozReview-Commit-ID: AVhTkLAYIv7
2017-05-18 17:13:28 -07:00
Michael Layzell 8a302e6be2 Bug 1357829 - Part 4: Remove TickController, r=njn
MozReview-Commit-ID: 2IHa6ybR9ug
2017-05-18 13:56:20 -04:00
Michael Layzell e62bfa945f Bug 1357829 - Part 3: Remove profiler_get_stack_top, r=njn
MozReview-Commit-ID: C4DvuOvYSrs
2017-05-18 13:56:20 -04:00
Michael Layzell dd07e2a56b Bug 1357829 - Part 1: Expose profiler_suspend_and_sample_thread, r=njn
This patch performs a refactoring to the internals of the profiler in order to
expose a function, profiler_suspend_and_sample_thread, which can be called from a
background thread to suspend, sample the native stack, and then resume the
target passed-in thread.

The interface was designed to expose as few internals of the profiler as
possible, exposing only a single callback which accepts the list of program
counters and stack pointers collected during the backtrace.

A method `profiler_current_thread_id` was also added to get the thread_id of the
current thread, which can then be passed by another thread into
profiler_suspend_sample_thread to sample the stack of that thread.

This is implemented in two parts:

1) Splitting SamplerThread into two classes: Sampler, and SamplerThread.

Sampler was created to extract the core logic from SamplerThread which manages
unix signals on android and linux, as well as suspends the target thread on all
platforms. SamplerThread was then modified to subclass this type, adding the
extra methods and fields required for the creation and management of the actual
Sampler Thread.

Some work was done to ensure that the methods on Sampler would not require
ActivePS to be present, as we intend to sample threads when the profiler is not
active for the Background Hang Reporter.

2) Moving the Tick() logic into the TickController interface.

A TickController interface was added to platform which has 2 methods: Tick and
Backtrace. The Tick method replaces the previous Tick() static method, allowing
it to be overridden by a different consumer of SuspendAndSampleAndResumeThread,
while the Backtrace() method replaces the previous MergeStacksIntoProfile
method, allowing it to be overridden by different consumers of
DoNativeBacktrace.

This interface object is then used to wrap implementation specific data, such as
the ProfilerBuffer, and is threaded through the SuspendAndSampleAndResumeThread
and DoNativeBacktrace methods.

This change added 2 virtual calls to the SamplerThread's critical section, which
I believe should be a small enough overhead that it will not affect profiling
performance. These virtual calls could be avoided using templating, but I
decided that doing so would be unnecessary.

MozReview-Commit-ID: AT48xb2asgV
2017-05-18 13:56:20 -04:00
rforbes 5fa372aaa0 Bug 1365994 - Update libfuzzer r=decoder
MozReview-Commit-ID: GCwIIZd5PTS
***
1365994 - update moz.build for libfuzzer

MozReview-Commit-ID: IxbLnviJC08

--HG--
extra : rebase_source : 2ca4965181388fa113e2781fbd14b5f5ae2bbc4b
2017-05-18 10:23:05 -07:00
Mark Banner 4fb45e5b8c Bug 1365412 - Clean up various ESLint global definitions in browser/. r=mossop
MozReview-Commit-ID: JqAm9x1XGCM

--HG--
extra : rebase_source : e9215288195f1fe683832db53d87dbe77c697b4c
2017-05-16 22:22:42 +01:00
Mark Banner 2451fe6f08 Bug 1361760 - Enable some Mozilla ESLint recommended rules for dom/indexedDB/test/unit. r=bevis
MozReview-Commit-ID: CM8apJcdRVs

--HG--
extra : rebase_source : 06d8d2b291dbd608ba68e5f7f9c622592cfd3cb6
2017-04-25 21:53:00 +01:00
Mark Banner 07710f2459 Bug 1365555 - eslint-plugin-mozilla fails when used with babel-eslint, provide an addition argument for the options. r=florian
MozReview-Commit-ID: 1L3Ysj31gfL

--HG--
extra : rebase_source : d3b8c3d87fe57af67fcc50e73b8d87069c455436
2017-05-17 11:34:26 +01:00
Swapnesh Kumar Sahoo 1e0c9f7200 Bug 1302773 - Install tox in docker image in MozReview; r=dustin
MozReview-Commit-ID: 3jiVsZOrvW9

--HG--
extra : rebase_source : 516ddf063ed6a15e397cb782262fa15ccb533969
2017-05-13 02:31:37 +05:30
Carsten "Tomcat" Book 6bd33f52d5 merge mozilla-inbound to mozilla-central a=merge 2017-05-17 11:16:52 +02:00