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

44 Коммитов

Автор SHA1 Сообщение Дата
Simon Giesecke 613e20d136 Bug 1184468 - Use nsBaseHashtable::Values. r=xpcom-reviewers,nika
Differential Revision: https://phabricator.services.mozilla.com/D108587
2021-03-24 17:56:49 +00:00
Simon Giesecke 7c6ccbe4a8 Bug 1676361 - Move AutoEntryScript to a separate header file to avoid pulling in GeckoProfiler.h everywhere. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D97742
2021-03-05 15:29:49 +00:00
Alexandru Michis 8c28934f09 Backed out changeset c6b72f3c76ba (bug 1676361) for causing bustages in nsSocketTransportService2.cpp
CLOSED TREE
2021-03-04 23:26:04 +02:00
Simon Giesecke 9602fc8b5c Bug 1695162 - Use ordinary range iteration instead of IterHash. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D106641
2021-03-04 18:52:19 +00:00
Simon Giesecke e41d350c04 Bug 1676361 - Move AutoEntryScript to a separate header file to avoid pulling in GeckoProfiler.h everywhere. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D97742
2021-03-04 17:30:48 +00:00
Noemi Erli 11891059f7 Backed out changeset 06452c4c828c (bug 1676361) for causing bustages CLOSED TREE 2021-03-04 19:13:56 +02:00
Simon Giesecke 6c371fcc1c Bug 1676361 - Move AutoEntryScript to a separate header file to avoid pulling in GeckoProfiler.h everywhere. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D97742
2021-03-04 16:14:44 +00:00
smolnar 9f8b74a18d Backed out changeset 9062e17fe15c (bug 1676361) on devs request. CLOSED TREE 2021-03-04 16:51:21 +02:00
Simon Giesecke e1330cc8f0 Bug 1676361 - Move AutoEntryScript to a separate header file to avoid pulling in GeckoProfiler.h everywhere. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D97742
2021-03-04 14:32:15 +00:00
Simon Giesecke 9af107a839 Bug 1691913 - Rename nsBaseHashtable::Put to InsertOrUpdate. r=xpcom-reviewers,necko-reviewers,jgilbert,dragana,nika
This makes the naming more consistent with other functions called
Insert and/or Update. Also, it removes the ambiguity whether
Put expects that an entry already exists or not, in particular because
it differed from nsTHashtable::PutEntry in that regard.

Differential Revision: https://phabricator.services.mozilla.com/D105473
2021-02-26 09:11:46 +00:00
Simon Giesecke c5f7800f35 Bug 1691913 - Rename nsClassHashtable::LookupOrAdd to GetOrInsertNew. r=xpcom-reviewers,nika
It should be called "Get" rather than "Lookup" because it returns
UserDataType. "Add" is called "Insert" in the other methods.

Differential Revision: https://phabricator.services.mozilla.com/D105470
2021-02-22 12:07:47 +00:00
Simon Giesecke 661e25bf09 Bug 1692880 - Make Put accept DataType instead of wrapping UserDataType. r=xpcom-reviewers,necko-reviewers,nika
Differential Revision: https://phabricator.services.mozilla.com/D104850
2021-02-16 15:53:33 +00:00
smolnar 1afbbe67e1 Backed out 5 changesets (bug 1691894) for causing hazard failures in nsXULPrototypeCache. CLOSED TREE
Backed out changeset 22dc870ee609 (bug 1691894)
Backed out changeset 58c31e9d6ae3 (bug 1691894)
Backed out changeset 7483e84149d8 (bug 1691894)
Backed out changeset f977d6cfa973 (bug 1691894)
Backed out changeset db4503476f34 (bug 1691894)
2021-02-15 16:43:23 +02:00
Simon Giesecke 3c29a68440 Bug 1691894 - Make Put accept DataType instead of wrapping UserDataType. r=xpcom-reviewers,necko-reviewers,nika
Differential Revision: https://phabricator.services.mozilla.com/D104850
2021-02-15 10:04:46 +00:00
Simon Giesecke 971b645fe3 Bug 1660470 - Add missing include directives/forward declarations. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D87865
2020-11-23 16:21:38 +00:00
Sylvestre Ledru fde06f6d21 Bug 1674637 - Use nested namespaces in dom/ r=sg,andi
Also add some missing namespace qualifications

Done with:
./mach static-analysis check --checks="-*,modernize-concat-nested-namespaces" --fix dom/
./mach clang-format -p $(hg status dom/|grep ^M|awk '{print $2}')

Differential Revision: https://phabricator.services.mozilla.com/D95456
2020-11-04 17:04:01 +00:00
Butkovits Atila 964cca3198 Backed out changeset c0adbf7522dc (bug 1674637) for bustage on GMPParent.cpp. CLOSED TREE 2020-11-04 10:54:36 +02:00
Sylvestre Ledru 5f29324f60 Bug 1674637 - Use nested namespaces in dom/ r=sg,andi
Also add some missing namespace qualifications

Done with:
./mach static-analysis check --checks="-*,modernize-concat-nested-namespaces" --fix dom/
./mach clang-format -p $(hg status dom/|grep ^M|awk '{print $2}')

Differential Revision: https://phabricator.services.mozilla.com/D95456
2020-11-04 08:29:00 +00:00
Simon Giesecke cd8b8939b9 Bug 1648010 - Replace uses of NS_LITERAL_STRING/NS_LITERAL_CSTRING macros by _ns literals. r=geckoview-reviewers,jgilbert,agi,hsivonen,froydnj
Differential Revision: https://phabricator.services.mozilla.com/D80860
2020-07-01 08:29:29 +00:00
Simon Giesecke a6c4405725 Bug 1626570 - Improve handling of copying arrays in dom/ipc/. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D72320
2020-04-30 09:37:05 +00:00
Doug Thayer 6bd29eb0c3 Bug 1550108 - Split out Input/OutputBuffer into their own file r=froydnj
This just splits out the InputBuffer and OutputBuffer helper classes
to make it cleaner for the StartupCache to include them.

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

--HG--
extra : moz-landing-system : lando
2019-10-04 20:44:41 +00:00
Cosmin Sabou 14938bad3b Backed out 10 changesets (bug 1550108) for causing build bustages on StartupCache.cpp.
Backed out changeset cbadfa2bbd7e (bug 1550108)
Backed out changeset 2560f0ab6ebf (bug 1550108)
Backed out changeset 0a1fa8d8bb3c (bug 1550108)
Backed out changeset 62416909cf67 (bug 1550108)
Backed out changeset 60991713b1e2 (bug 1550108)
Backed out changeset f950e30afd90 (bug 1550108)
Backed out changeset e63d0a1fec38 (bug 1550108)
Backed out changeset 7a009d42e7e7 (bug 1550108)
Backed out changeset 395affa4c205 (bug 1550108)
Backed out changeset 0fd41e9dbd2a (bug 1550108)

--HG--
rename : mfbt/lz4/lz4.c => mfbt/lz4.c
rename : mfbt/lz4/lz4.h => mfbt/lz4.h
2019-09-29 01:14:31 +03:00
Doug Thayer 076597dbc2 Bug 1550108 - Split out Input/OutputBuffer into their own file r=froydnj
This just splits out the InputBuffer and OutputBuffer helper classes
to make it cleaner for the StartupCache to include them.

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

--HG--
extra : moz-landing-system : lando
2019-09-27 22:15:35 +00:00
Kris Maglione 4d39a64328 Bug 1478787: Rebuild stale SharedMap on Has() call. r=erahm
MozReview-Commit-ID: 5aFVBNQW4QR

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

--HG--
extra : rebase_source : cb114d26b3d2fa8e3db5a3f5ea8d790d250d32a9
2018-07-26 13:23:54 -07:00
Ryan Hunt 00e98538aa Bug 1523969 part 6 - Move method definition inline comments to new line in 'dom/'. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D21106

--HG--
extra : rebase_source : ea3f51c2c11247114deccbc86e90fb02b8a97257
2019-02-25 16:05:29 -06:00
Randell Jesup 76bd9e73cc Bug 1522150: Add a DeferredTimers queue ahead of the normal Idle EventQueue r=froyd
* * *
Bug 1522150: Rename NS_IdleDispatch* functions since they take queue identifiers r=froyd
2019-01-26 12:18:05 -05:00
Tom Ritter 04ad4da5ff Bug 1512690 - Introduce a MesageManager log topic for MM topics and data r=tjr
This logging topic will output the topic of MEssageManager data at log
level 4 (debug); and will output the entire content of the data at level
5 (verbose).

--HG--
extra : histedit_source : 7be60b456a1652f9a9985fd4a01571b207a5f9e6
2018-12-11 11:31:24 -06:00
Tooru Fujisawa 7983faeb5d Bug 1511393 - Use c-basic-offset: 2 in Emacs mode line for C/C++ code. r=nbp 2018-12-01 04:52:05 +09:00
Sylvestre Ledru 265e672179 Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
# ignore-this-changeset

--HG--
extra : amend_source : 4d301d3b0b8711c4692392aa76088ba7fd7d1022
2018-11-30 11:46:48 +01:00
Kris Maglione e890d39c82 Bug 1480244: Part 4 - Make child message managers non-global objects. r=bz
This is mostly self-explanatory. However, the patch also contains some minor
changes to frame scripts which expect to be able to call message manager
methods with a null target object, which stops working when they stop being
global objects.

MozReview-Commit-ID: HDT2RvK3F3L

--HG--
extra : rebase_source : bb3ce8861a261ff1bc28a28b3ff88ba0deaef552
2018-08-10 14:03:18 -07:00
Kris Maglione ee36f9afd8 Bug 1480244: Part 1a - Rename ProcessGlobal to ContentProcessMessageManager. r=bz
After these patches, these objects will no longer be globals, which would make
their current names misleading. Parts 1a-1c give more appropriate names to the
bindings which will cease to be globals.

MozReview-Commit-ID: L8GolQaHnO5

--HG--
rename : dom/base/ProcessGlobal.cpp => dom/base/ContentProcessMessageManager.cpp
rename : dom/base/ProcessGlobal.h => dom/base/ContentProcessMessageManager.h
extra : rebase_source : c5db43ff4f56bc27c869a8051c8d2c000b3fe287
2018-08-02 15:03:50 -07:00
Kris Maglione 3728216a20 Bug 1477753: Implement missing cycle collection hooks for SharedMap. r=mccr8
MozReview-Commit-ID: E0ncT3e1Wb2

--HG--
extra : rebase_source : b7697484e3cb8a3b5c77332ddca4019160e7fe80
2018-07-26 14:36:57 -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 70f741edc9 Bug 1472342: Part 2 - Update SharedMap iterator methods to use provided JSContext. r=bz
MozReview-Commit-ID: E9RHi41HJCy

--HG--
extra : rebase_source : 1d89f88cf67d56367314d1aa909dccb340719e34
2018-07-18 13:08:44 -07:00
Kris Maglione 02d76286a4 Bug 1463587: Part 6 - Add an idle flush task to WritableSharedMap. r=erahm
MozReview-Commit-ID: 8Ht7zHo4PD6

--HG--
extra : rebase_source : af54131cdd7dcd9d1857ccf6303764c92d4eda79
extra : source : 49ed13196e9fc108f39153b30c4720ef5232e559
2018-06-27 16:44:22 -07:00
Kris Maglione 1aa45ee72a Bug 1463587: Part 4 - Add blob support to SharedMap. r=erahm,baku
I was hoping to avoid supporting blobs here, but some parts of the
WebExtensions framework rely on being able to store Blobs in
initialProcessData, and can't be migrated without adding blob support.

This patch adds an ordered array of BlobImpls for all extant keys, clones them
to all child processes when updating the serialized maps, and initializes
StructuredCloneData instances with indexes into the combined array.

MozReview-Commit-ID: IdSv5FHbPbE

--HG--
extra : rebase_source : 90eeb7fad21eac93582ef9244180998d22267373
extra : source : cebf1f055d1dfb505e96cebf7e4284b35a419dd6
2018-06-27 16:35:53 -07:00
Kris Maglione 8316d5a0c0 Bug 1463587: Part 3 - Add bindings for SharedMap, and expose it via process message managers. r=erahm,baku,bz
This is the first basic implementation of a shared-memory key-value store for
JS message managers. It has one read-write endpoint in the parent process, and
separate read-only endpoints for each child-process message manager.

Changes to the parent endpoint are broadcast to the children as snapshots.
Each snapshot triggers a "change" event with a list of changed keys.

It currently has the following limitations:

- It only supports basic structured clone data. There's no support for blobs,
  input streams, message ports... Blob support will be added in a follow-up
  patch.

- Changes are currently only broadcast to child endpoints when flush() is
  explicitly called in the parent, or when new child processes are launched.
  In a follow-up, this will be changed to automatically flush after changes
  when the event loop is idle.

- All set operations clone their inputs synchronously, which means that
  there's no trivial way for callers to batch multiple changes to a single key
  without some additional effort. It might be useful to add a
  delayed-serialization option to the .set() call in a follow-up, for callers
  who are sure they know what they're doing.

MozReview-Commit-ID: IM8a3UgejXU

--HG--
extra : rebase_source : 66c92d538a5485349bc789028fdc3a6806bc5d5a
extra : source : 2ebaf5f8c6055b11b11d7ec334d54ee941115d48
2018-06-29 14:55:27 -07:00
Kris Maglione 03bf0b5bdd Bug 1463587: Part 2 - Add a shared-memory structured clone key-value store. r=erahm,bz
This class allows one read-write copy of a map in the parent process to share
data with multiple read-only copies in child processes. The maps only hold
onto data as structured clone blobs, and deserialize them each time a key is
read.

This commit only provides the bare-bones data structures. Follow-ups will add
bindings, change events, and automatic flushes.

MozReview-Commit-ID: LimwfmFBNOi

--HG--
extra : rebase_source : e43985c39bd1cfd05a2ad536b0d7f74db494a753
extra : source : c27295337b4c16e2a178106a3aa873d2a0e5a1f4
2018-06-22 20:35:49 -07:00
Margareta Eliza Balazs 7b416abaf1 Backed out 10 changesets (bug 1470783, bug 1463587) for causing multiple leakcheck failures on a CLOSED TREE
Backed out changeset cd2080bd727a (bug 1463587)
Backed out changeset 5866137afd9a (bug 1463587)
Backed out changeset d64e1c150db2 (bug 1463587)
Backed out changeset 669f084e8914 (bug 1463587)
Backed out changeset 8074c985095c (bug 1470783)
Backed out changeset 49ed13196e9f (bug 1463587)
Backed out changeset c052042a66cf (bug 1463587)
Backed out changeset cebf1f055d1d (bug 1463587)
Backed out changeset 2ebaf5f8c605 (bug 1463587)
Backed out changeset c27295337b4c (bug 1463587)
2018-07-12 11:27:45 +03:00
Kris Maglione 3529784207 Bug 1463587: Follow-up: Fix compiler warning on Android debug. r=bustage 2018-07-11 18:24:28 -07:00
Kris Maglione f16c7a4e5d Bug 1463587: Part 6 - Add an idle flush task to WritableSharedMap. r=erahm
MozReview-Commit-ID: 8Ht7zHo4PD6

--HG--
extra : rebase_source : daaaec86b027d329296e86d508b52342aca64bc0
2018-06-27 16:44:22 -07:00
Kris Maglione 345b497bc6 Bug 1463587: Part 4 - Add blob support to SharedMap. r=erahm,baku
I was hoping to avoid supporting blobs here, but some parts of the
WebExtensions framework rely on being able to store Blobs in
initialProcessData, and can't be migrated without adding blob support.

This patch adds an ordered array of BlobImpls for all extant keys, clones them
to all child processes when updating the serialized maps, and initializes
StructuredCloneData instances with indexes into the combined array.

MozReview-Commit-ID: IdSv5FHbPbE

--HG--
extra : rebase_source : 3020af12859ce3470bd31e9c3b7f5c919e1b9665
2018-06-27 16:35:53 -07:00
Kris Maglione 47c200749a Bug 1463587: Part 3 - Add bindings for SharedMap, and expose it via process message managers. r=erahm,baku,bz
This is the first basic implementation of a shared-memory key-value store for
JS message managers. It has one read-write endpoint in the parent process, and
separate read-only endpoints for each child-process message manager.

Changes to the parent endpoint are broadcast to the children as snapshots.
Each snapshot triggers a "change" event with a list of changed keys.

It currently has the following limitations:

- It only supports basic structured clone data. There's no support for blobs,
  input streams, message ports... Blob support will be added in a follow-up
  patch.

- Changes are currently only broadcast to child endpoints when flush() is
  explicitly called in the parent, or when new child processes are launched.
  In a follow-up, this will be changed to automatically flush after changes
  when the event loop is idle.

- All set operations clone their inputs synchronously, which means that
  there's no trivial way for callers to batch multiple changes to a single key
  without some additional effort. It might be useful to add a
  delayed-serialization option to the .set() call in a follow-up, for callers
  who are sure they know what they're doing.

MozReview-Commit-ID: IM8a3UgejXU

--HG--
extra : rebase_source : 8e8b7891ca48e61b2d6ba3c05912064a909d9698
2018-06-29 14:55:27 -07:00
Kris Maglione 830989c99a Bug 1463587: Part 2 - Add a shared-memory structured clone key-value store. r=erahm,bz
This class allows one read-write copy of a map in the parent process to share
data with multiple read-only copies in child processes. The maps only hold
onto data as structured clone blobs, and deserialize them each time a key is
read.

This commit only provides the bare-bones data structures. Follow-ups will add
bindings, change events, and automatic flushes.

MozReview-Commit-ID: LimwfmFBNOi

--HG--
extra : rebase_source : a6959c9f3186af7252ac2899f6801d5e02b62222
2018-06-22 20:35:49 -07:00