Commit Graph

605477 Commits

Author SHA1 Message Date
Gurzau Raul
f2e1e857f1 Merge inbound to mozilla-central. a=merge 2018-07-24 12:49:23 +03:00
Kris Maglione
1814a2510f Bug 1477512: Follow-up: Un-inline ThreadEventQueue::SizeOfExcludingThis. r=me
--HG--
extra : amend_source : 0e611892cc6d9133ffc7ccc41cd14a7348d7c5b3
2018-07-23 23:17:12 -07:00
Nicholas Nethercote
e6f8df84ad Bug 1477622 - Add microbenchmarks measuring hash table performance. r=froydnj
--HG--
extra : rebase_source : 2d76bfcb862b3b690ea8db2b5b007dde2a90f914
2018-07-24 10:38:43 +10:00
Jeff Muizelaar
bfec1c104f Bug 1477505. Update webrender to commit e850fbd2e0e60a8de76c2d2464f0fa27316d5949 2018-07-23 23:48:02 -04:00
Ekanan Ketunuti
3f1345e2c2 Bug 1476849 - Add words to en-US dictionary. r=ehsan
--HG--
extra : rebase_source : 59221034a1891c973e79a5ba1d900be4fb61fac9
2018-07-23 13:31:26 +07:00
Kris Maglione
3869956f6e Bug 1477579: Follow-up: Also skip stack allocation assertion on Android. r=me DONTBUILD 2018-07-23 19:25:00 -07:00
Kris Maglione
7aa3564a28 Bug 1477579: Part 3 - Avoid duplicating static strings in category manager entries. r=froydnj
Much like the component manager, many of the strings that we use for category
manager entries are statically allocated. There's no need to duplicate these
strings.

This patch changes the category manager APIs to take nsACStrings rather than
raw pointers, and to pass literal nsCStrings when we know we have a literal
string to begin with. When adding the category entry, it then skips making
copies of any strings with the LITERAL flag.

MozReview-Commit-ID: EJEcYSdNMWs
***
amend-catman

--HG--
extra : source : aa9a8f18e98f930a3d8359565eef02f3f6efc5f9
extra : absorb_source : 81a22ab26ee8017ac43321ff2c987d8096182d37
2018-07-23 17:41:06 -07:00
Kris Maglione
83b3ac8f23 Bug 1477579: Part 2 - Use nsID* rather than nsID for mFactories hash keys. r=froydnj
Our factory registrations already require that we store nsID pointers, which
we generally handle by using pointers to static data, or arena allocating a
copy of a dynamic ID.

Since we already have viable pointers to these IDs, there's no reason to store
an entire second copy for our hash key. We can use the pointer, instead, which
saves 16 bytes per entry.

MozReview-Commit-ID: 6MgKrXRSHv4

--HG--
extra : source : 5fb0b7746a5d56563b471e3061ccca124ea45485
extra : absorb_source : 275f5d4dc2c02e3d0391ed16e8690dac1e601758
2018-07-21 19:09:25 -07:00
Kris Maglione
b8f2198d8c Bug 1477579: Part 1 - Use literal strings for statically registered contract ID keys. r=froydnj
Most of our components are static, and registered using literal C strings. For
those components, we currently use a nsDependentCString as a key when creating
a hash entry, which leads to an unnecessary duplication. Using literal
CStrings instead avoids the duplication.

MozReview-Commit-ID: 5DOUF8ZQMlh

--HG--
extra : source : 8359f8fe418419c50ab0ed93496e7445b570ba9f
extra : absorb_source : 2a33ae4e7e6d312adcea8ece2158f07a7050e01e
2018-07-22 10:54:56 -07:00
Emilio Cobos Álvarez
d487539dd5 Bug 1477883: Revendor Rust dependencies. r=me
MozReview-Commit-ID: LQu7Lb4GMdV
2018-07-24 04:03:26 +02:00
Emilio Cobos Álvarez
1a53242e60 Bug 1477883: Appease Servo's tidy lint. r=me
MozReview-Commit-ID: CqqndCexGKW
2018-07-24 04:03:24 +02:00
Emilio Cobos Álvarez
d2466a05c8 Bug 1477883: Fix servo build. r=me
MozReview-Commit-ID: LU5Id4244ft
2018-07-24 04:03:22 +02:00
Emilio Cobos Álvarez
d94136a13b Bug 1477883: Update itoa. r=me
Has been updated in servo for a long time, and we already have the new version
in tree.

MozReview-Commit-ID: 1yNOsqwLign
2018-07-24 04:03:21 +02:00
nupurbaghel
0db62cee2a Bug 1477883: Cherry-pick style changes from servo/servo#21181. r=emilio
MozReview-Commit-ID: FpZ0YvXEYmP
2018-07-24 04:03:20 +02:00
Bastien Orivel
29f51fc11b Bug 1477883: Update parking_lot to 0.6. r=emilio
Cherry-pick of servo/servo#21216.

MozReview-Commit-ID: 4sTKSSCbrP4
2018-07-24 04:03:18 +02:00
Brindusan Cristian
91a3707d5f Backed out 3 changesets (bug 1477579) for build bustages on xpcshell\selftest.py and crashtest failures on /components/nsComponentManager.cpp. CLOSED TREE
Backed out changeset aa9a8f18e98f (bug 1477579)
Backed out changeset 5fb0b7746a5d (bug 1477579)
Backed out changeset 8359f8fe4184 (bug 1477579)
2018-07-24 04:55:03 +03:00
Kris Maglione
616ee870a3 Bug 1477512: Part 5 - Rearrange the fields of nsThread for better packing. r=erahm
This takes 16 bytes off of the allocated size of each instance.

MozReview-Commit-ID: AhfN6MWvVL1

--HG--
extra : rebase_source : badc6ab690f2c4e0184ac0b51b29f81fb11279c6
extra : absorb_source : 0f685515a6946c89e9467c8b1e8548c989b1907b
extra : histedit_source : 7bfb5db39b23c1d262819c22a6e5fcd884c52504
2018-07-21 16:00:02 -07:00
Kris Maglione
8a135e1872 Bug 1477512: Part 4 - Add memory reporter for thread kernel stack sizes. r=erahm
We don't have a way to determine these at runtime, but for Windows and Linux,
the values are known and predictable.

MozReview-Commit-ID: 57LMJLzl762

--HG--
extra : rebase_source : 415690574116d549171097cb9e33834e4d4a9a4f
extra : absorb_source : 4678306b020999f52dcf770d3907d79f1f38b249
extra : histedit_source : 0d0f3cb62b9f64322876fe568ccd62893e6ad4b1%2Ccaca0524b930cf93608565ec06247aa0f4fee7e2
2018-07-21 15:12:11 -07:00
Kris Maglione
1044b14dd3 Bug 1477512: Part 3 - Add memory reporter for thread heap overhead. r=erahm
This adds reporting for heap overhead from nsThread and PRThread wrappers, as
well as thread event queues. It does not, currently, include overhead from
PlatformThread or js::Thread wrappers.

MozReview-Commit-ID: 6DkvbbkjHXm

--HG--
extra : rebase_source : 79df7172387fa1f952c43b06db644390be6f0d8a
2018-07-21 14:27:15 -07:00
Kris Maglione
7c232c3f91 Bug 1477512: Part 2 - Add memory reporting functions to nsThread. r=erahm
MozReview-Commit-ID: 9wlNLaY9y8I

--HG--
extra : rebase_source : 20e95400be62aa4ec524a00c6ad65aa5fbdd18bd
2018-07-21 14:17:23 -07:00
Kris Maglione
9b66e8f0f3 Bug 1477512: Part 1 - Add memory reporter functions to thread event queues. r=erahm
MozReview-Commit-ID: J4EdwUWfyPK

--HG--
extra : rebase_source : 4731cec2d04531d6b519fc076cb53f962b4f9f6f
2018-07-21 14:16:50 -07:00
Kris Maglione
6d0a3d4c78 Bug 1477512: Part 0 - Remove unused nsThread::mEventObservers array. r=erahm
This was moved out of nsThread in bug 1350432, but some dead code was left
behind.

MozReview-Commit-ID: BOhykHyIEPp

--HG--
extra : rebase_source : 21d4f95a019ba10851fba1efc588d6c2678aed85
2018-07-21 13:21:12 -07:00
Kris Maglione
d56573ecd5 Bug 1475836: Clear cached callback pref when deleting branch. r=njn
MozReview-Commit-ID: C60kGkoFBL8

--HG--
extra : source : 3b9846062755b05de6729a84aa2b0acf6ddfd0bc
2018-07-20 11:57:37 -07:00
Kris Maglione
4ef55072b9 Bug 1477254: Assert that varcache prefs match pref values at content process startup. r=njn
In order to avoid the overhead of doing a full pref lookup for every static
var cache at content process startup, we currently assume that the default
value of any static varcache pref will always match the default value of its
database entry (as long as the pref isn't locked). This lets us only perform
lookups for preferences which have a user value, or are locked.

If the default values of those preferences are changed in a bundled preference
file, though, the varcache value will be correct in the parent process, but
not in child processes. Since this is an easy mistake to make, we should
assert that it doesn't happen.

Note: This change only affects applications which use e10s. Applications like
Thunderbird can still override default values of any static pref with
impunity. Repacks and distributors can only do so by changing user values or
locking the preference after the change (which is the standard practice for
enterprise deployments).

MozReview-Commit-ID: JMHQBrp9HN

--HG--
extra : source : 1b389b00030ed38cdb3543aa5d1a67795be47565
extra : amend_source : 16f2dccf40664db9daa42a6edaabb933acbc6204
2018-07-23 17:32:54 -07:00
Kris Maglione
dfd38a6ac3 Bug 1477579: Part 3 - Avoid duplicating static strings in category manager entries. r=froydnj
Much like the component manager, many of the strings that we use for category
manager entries are statically allocated. There's no need to duplicate these
strings.

This patch changes the category manager APIs to take nsACStrings rather than
raw pointers, and to pass literal nsCStrings when we know we have a literal
string to begin with. When adding the category entry, it then skips making
copies of any strings with the LITERAL flag.

MozReview-Commit-ID: EJEcYSdNMWs
***
amend-catman

--HG--
extra : rebase_source : 4f70e7b296ecf3b52a4892c92155c7c163d424d2
2018-07-23 17:41:06 -07:00
Kris Maglione
fde39b49d5 Bug 1477579: Part 2 - Use nsID* rather than nsID for mFactories hash keys. r=froydnj
Our factory registrations already require that we store nsID pointers, which
we generally handle by using pointers to static data, or arena allocating a
copy of a dynamic ID.

Since we already have viable pointers to these IDs, there's no reason to store
an entire second copy for our hash key. We can use the pointer, instead, which
saves 16 bytes per entry.

MozReview-Commit-ID: 6MgKrXRSHv4

--HG--
extra : rebase_source : 8d41a3fc5bc1ffe88af998bf9a0ba9ac3331a085
2018-07-21 19:09:25 -07:00
Kris Maglione
5302f88f24 Bug 1477579: Part 1 - Use literal strings for statically registered contract ID keys. r=froydnj
Most of our components are static, and registered using literal C strings. For
those components, we currently use a nsDependentCString as a key when creating
a hash entry, which leads to an unnecessary duplication. Using literal
CStrings instead avoids the duplication.

MozReview-Commit-ID: 5DOUF8ZQMlh

--HG--
extra : rebase_source : 57d151df64e29ee756f290e7eb047610b567ef04
2018-07-22 10:54:56 -07:00
shindli
e0391b2197 Backed out 2 changesets (bug 1477254, bug 1475836) for bustages in builds/worker/workspace/build/src/modules/libpref/Preferences.cpp:4791:1 on a CLOSED TREE
Backed out changeset 1b389b00030e (bug 1477254)
Backed out changeset 3b9846062755 (bug 1475836)
2018-07-24 03:52:40 +03:00
Kris Maglione
43de9e89bf Bug 1473135: Stop using ReentrantMonitor for string bundle mutexes. r=gandalf
MozReview-Commit-ID: HUfb47Eei7P

--HG--
extra : rebase_source : a6edf2f1163b799e9c62eb510d5e52e7a9d014b8
2018-07-20 17:20:00 -07:00
Kris Maglione
07727ed247 Bug 1477129: Part 3 - Re-enable e10s on FreeBSD. r=froydnj
Backed out changeset 197fcba26a38

MozReview-Commit-ID: 4OOmP91hKXQ

--HG--
extra : rebase_source : 92d3e01734c6154261a8003fcc481c9d81f00c38
2018-07-19 18:18:27 -07:00
Kris Maglione
5520b46fd0 Bug 1477129: Part 2 - Fix SharedMap blob handling, and add tests. r=erahm
We were previously failing to send blobs to new content processes, which was a
problem for those processes. But we were also attempting to extract blobs for
new entries that we were serializing after we'd extracted their structured
clone data, and their blob array had been thrown away (which was a problem for
all processes).

This patch fixes both problems.

MozReview-Commit-ID: 3qbAmUTA85g

--HG--
extra : rebase_source : 87ed9356aa23ae83762a887cf12ba1f466e7bf61
2018-07-20 14:44:00 -07:00
Kris Maglione
231c722473 Bug 1477129: Part 1 - Handle BlobImpls when move constructing StructuredCloneData. r=baku
MozReview-Commit-ID: F1pm9qTpGCV

--HG--
extra : rebase_source : ad992a07392b7addd8edc000f56d473f30e9cecc
2018-07-19 18:14:13 -07:00
Kris Maglione
e6eb6b8ea2 Bug 1477254: Assert that varcache prefs match pref values at content process startup. r=njn
In order to avoid the overhead of doing a full pref lookup for every static
var cache at content process startup, we currently assume that the default
value of any static varcache pref will always match the default value of its
database entry (as long as the pref isn't locked). This lets us only perform
lookups for preferences which have a user value, or are locked.

If the default values of those preferences are changed in a bundled preference
file, though, the varcache value will be correct in the parent process, but
not in child processes. Since this is an easy mistake to make, we should
assert that it doesn't happen.

Note: This change only affects applications which use e10s. Applications like
Thunderbird can still override default values of any static pref with
impunity. Repacks and distributors can only do so by changing user values or
locking the preference after the change (which is the standard practice for
enterprise deployments).

MozReview-Commit-ID: JMHQBrp9HN

--HG--
extra : rebase_source : 2f51295def52cbca316227f202158cb22656441a
2018-07-23 17:32:54 -07:00
Kris Maglione
bfc9a0bdfa Bug 1475836: Clear cached callback pref when deleting branch. r=njn
MozReview-Commit-ID: C60kGkoFBL8

--HG--
extra : rebase_source : 3c10097afb406750fe1c2f7410372f3dea4ce52a
2018-07-20 11:57:37 -07:00
Stephen A Pohl
e5862c14d3 Bug 1468053: Disable a workaround for an Apple bug described in bug 378645 involving popup windows that was fixed by Apple. r=mstange 2018-07-23 20:20:58 -04:00
Stephen A Pohl
c2ef1ca8f9 Backout 0df7fb702b93 for slightly inaccurate commit message. r=me 2018-07-23 20:19:19 -04:00
Stephen A Pohl
8fb210cb17 Bug 1468053: Disable a workaround on macOS 10.14+ for an Apple bug involving popup windows that was fixed by Apple in macOS 10.14. r=mstange 2018-07-23 20:16:15 -04:00
Liang-Heng Chen
0e974b3af4 Bug 1474280 - Part 2: carry timestamp when redirects; r=valentin 2018-07-23 05:29:00 +03:00
Liang-Heng Chen
a1785d29f1 Bug 1474280 - Part 1: Cancel timed-out trackers; r=mayhemer 2018-07-23 05:28:00 +03:00
Sean Stangl
4f56487f11 Bug 1476124 - Implement enough ARM64 Ion code to run a simple script. r=tcampbell 2018-07-23 15:15:00 +03:00
Matthew Gaudet
8d63227c2e Bug 1477375 Ensure we actually disable all CacheIR Stubs when requested with --cache-ir-stubs=off. r=evilpie 2018-07-20 15:47:40 -04:00
Coroiu Cristina
3628e073f1 Merge mozilla-central to inbound a=merge on a CLOSED TREE 2018-07-24 00:46:46 +03:00
Coroiu Cristina
44141cfda4 Merge inbound to mozilla-central a=merge 2018-07-24 00:43:44 +03:00
Brindusan Cristian
dcbbf37b84 Backed out changeset 7b42110e827b (bug 1461465) for android mochitest failures on test_ext_async_clipboard.html. CLOSED TREE 2018-07-23 22:11:26 +03:00
shindli
bcc9b73a57 Backed out changeset 590299c07f06 (bug 1474163) for AddressSanitizer failures on a CLOSED TREE.
--HG--
rename : browser/modules/LightweightThemeChildHelper.jsm => browser/modules/LightweightThemeChildListener.jsm
2018-07-23 21:35:34 +03:00
Brian Hackett
13a3630426 Bug 1465470 Part 10 - Avoid registering helper threads with the profiler when recording/replaying, r=sfink.
--HG--
extra : rebase_source : 45187f5dfea2be730c9e3cde76bd4236406f651e
2018-07-23 15:07:00 +00:00
Brian Hackett
98cefffcea Bug 1465470 Part 9 - Avoid recording some more JS atomics, r=jandem.
--HG--
extra : rebase_source : 17284f7c93525eef35d6eb663982844956939bfd
2018-07-23 15:06:18 +00:00
Brian Hackett
79ff2addad Bug 1465470 Part 8 - Tolerate pthread_setname_np failing when recording or replaying, r=till.
--HG--
extra : rebase_source : 147d5331f7e9f71181e71e54aa69bc67dfd3452e
2018-07-23 15:05:29 +00:00
Brian Hackett
b5f74e9778 Bug 1465470 Part 7 - Avoid calling getenv at non-deterministic points in the JS engine, r=jandem.
--HG--
extra : rebase_source : 0bb17c91e14565fe5d0b6fa87dce05e2d7ff4d14
2018-07-23 15:04:54 +00:00
Brian Hackett
871f2e4852 Bug 1465470 Part 5 - Avoid recording time events at non-deterministic points in the JS engine, r=jonco.
--HG--
extra : rebase_source : ed238c0ad5861a3149f695a5e46d221cf22cb27d
2018-07-23 15:03:49 +00:00