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

7582 Коммитов

Автор SHA1 Сообщение Дата
Alexandre Lissy 4ca7ebefd5 Bug 1788173 - Force IPC channel error on timeout waiting for client connection r=ipc-reviewers,jld
Differential Revision: https://phabricator.services.mozilla.com/D173585
2023-04-06 08:04:29 +00:00
Noemi Erli d637b3f05e Backed out 24 changesets (bug 1824465) for causing failures in nsISupportsImpl.cpp CLOSED TREE
Backed out changeset a5c8f22b7170 (bug 1824465)
Backed out changeset b551b655ac72 (bug 1824465)
Backed out changeset 0e6768a6419c (bug 1824465)
Backed out changeset fb115ebb7fe0 (bug 1824465)
Backed out changeset aaa7a2c8aa3b (bug 1824465)
Backed out changeset 7ef94bfa90b3 (bug 1824465)
Backed out changeset a4238fd6b86f (bug 1824465)
Backed out changeset 3a88e4cfbe45 (bug 1824465)
Backed out changeset 40c2467d3162 (bug 1824465)
Backed out changeset 8f900395c72c (bug 1824465)
Backed out changeset 92e4c6e4d73c (bug 1824465)
Backed out changeset 445c5d5d9661 (bug 1824465)
Backed out changeset de51ed5389d9 (bug 1824465)
Backed out changeset 72049d72bcb6 (bug 1824465)
Backed out changeset 126773c2427a (bug 1824465)
Backed out changeset 886e76bc80be (bug 1824465)
Backed out changeset a69a851411f0 (bug 1824465)
Backed out changeset 703599cf6189 (bug 1824465)
Backed out changeset 11ecb78ebc15 (bug 1824465)
Backed out changeset 563255aaa1e1 (bug 1824465)
Backed out changeset d1bf32c2a6c6 (bug 1824465)
Backed out changeset ef28b2777487 (bug 1824465)
Backed out changeset a2015d354bb1 (bug 1824465)
Backed out changeset 31d6b53fdc6a (bug 1824465)
2023-04-06 01:50:55 +03:00
Nika Layzell 746286bda3 Bug 1824465 - Part 24: Require toplevel protocols to be refcounted, r=ipc-reviewers,mccr8
Differential Revision: https://phabricator.services.mozilla.com/D173739
2023-04-05 21:33:45 +00:00
Nika Layzell 83c3e70137 Bug 1822863 - Use `Span<...>` in IPDL send signatures, r=ipc-reviewers,mccr8
This should make it possible to send data without copying in some
situations.

This requires adding the `rightconst` attribute to the C++ `Type` type
in order to allow specifying `Span<PFoo* const>`, which isn't possible
to specify with a left const. The type is getting very gross with all of
these flags and it's probably worth switching it to be a recursive
type at this point.

Differential Revision: https://phabricator.services.mozilla.com/D173570
2023-04-05 16:29:51 +00:00
Narcis Beleuzu 68d2df6fc6 Backed out changeset a817ea947b55 (bug 1822863) for bustages on lower.py . CLOSED TREE 2023-04-05 00:09:21 +03:00
Nika Layzell d6481709e6 Bug 1822863 - Use `Span<...>` in IPDL send signatures, r=ipc-reviewers,mccr8
This should make it possible to send data without copying in some
situations.

This requires adding the `rightconst` attribute to the C++ `Type` type
in order to allow specifying `Span<PFoo* const>`, which isn't possible
to specify with a left const. The type is getting very gross with all of
these flags and it's probably worth switching it to be a recursive
type at this point.

Differential Revision: https://phabricator.services.mozilla.com/D173570
2023-04-04 20:43:32 +00:00
serge-sans-paille 1d17afc09f Bug 1825327 - Make ipc/chromium buildable outside of a unified build environment r=andi
Depends on D173970

Differential Revision: https://phabricator.services.mozilla.com/D173971
2023-03-31 13:29:44 +00:00
Cristian Tuns 8e06a7a853 Backed out 12 changesets (bug 1825325, bug 1825336, bug 1825333, bug 1825332, bug 1825324, bug 1824557, bug 1825328, bug 1825335, bug 1825330, bug 1825329, bug 1825327, bug 1825331) for causing build bustages in nsClipboard.cpp CLOSED TREE
Backed out changeset 9de3ed24d3a0 (bug 1825336)
Backed out changeset aef787728f19 (bug 1825335)
Backed out changeset a04c341244c1 (bug 1825333)
Backed out changeset e3ad15f762ba (bug 1825332)
Backed out changeset eed23da92a27 (bug 1825331)
Backed out changeset 8213bb54376e (bug 1825330)
Backed out changeset 747ec5ac4994 (bug 1825329)
Backed out changeset e91ff431f92d (bug 1825328)
Backed out changeset 59c18d13768b (bug 1825327)
Backed out changeset 538096d99e49 (bug 1825325)
Backed out changeset c76eb9d9b095 (bug 1825324)
Backed out changeset 8b81410eb686 (bug 1824557)
2023-03-31 12:58:53 -04:00
serge-sans-paille b0d3610965 Bug 1825327 - Make ipc/chromium buildable outside of a unified build environment r=andi
Depends on D173970

Differential Revision: https://phabricator.services.mozilla.com/D173971
2023-03-31 13:29:44 +00:00
sunil mayya a35b81e828 Bug 1816918 - pass ClientInfo via IPC while creating webtransport session. r=necko-reviewers,jesup
Differential Revision: https://phabricator.services.mozilla.com/D173115
2023-03-31 03:54:20 +00:00
Nika Layzell d57c9498f6 Bug 1825360 - Remove the NS_DISPATCH_SYNC flag, r=necko-reviewers,geckoview-reviewers,media-playback-reviewers,karlt,jesup,m_kato,emilio
This flag is not supported by most event targets and can have unexpected
side effects (namely spinning a nested event loop). All consumers have
been replaced with a new function which is more explicit about this side
effect.

Differential Revision: https://phabricator.services.mozilla.com/D173985
2023-03-30 16:53:51 +00:00
Sandor Molnar 5f41905362 Backed out changeset 9fda7af76207 (bug 1816918) for causing build bustage in dom/webtransport/parent/WebTransportParent.cpp CLOSED TREE 2023-03-30 08:36:21 +03:00
sunil mayya 3c35233ee6 Bug 1816918 - pass ClientInfo via IPC while creating webtransport session. r=necko-reviewers,jesup
Differential Revision: https://phabricator.services.mozilla.com/D173115
2023-03-30 04:46:54 +00:00
Norisz Fay 0dd2f35ce7 Backed out changeset 2ce4fba56cf7 (bug 1816918) for causing bustage on WebTransportParent.cpp 2023-03-28 21:48:35 +03:00
sunil mayya 0ece05ba82 Bug 1816918 - pass ClientInfo via IPC while creating webtransport session. r=necko-reviewers,jesup
Differential Revision: https://phabricator.services.mozilla.com/D173115
2023-03-28 16:53:23 +00:00
Sandor Molnar f2ead1f335 Backed out changeset db2b968157d6 (bug 1816918) for causing xpc assertion failures in mozilla/Maybe.h CLOSED TREE 2023-03-28 05:30:53 +03:00
sunil mayya 4f907068d8 Bug 1816918 - pass ClientInfo via IPC while creating webtransport session. r=necko-reviewers,jesup
Differential Revision: https://phabricator.services.mozilla.com/D173115
2023-03-28 01:39:23 +00:00
Iulian Moraru fa6cfbe289 Backed out changeset 57f13fcb6953 (bug 1816918) for causing build bustages on WebTransportParent.cpp. CLOSED TREE 2023-03-27 18:03:33 +03:00
sunil mayya 3497e2d7c9 Bug 1816918 - pass ClientInfo via IPC while creating webtransport session. r=necko-reviewers,jesup
Differential Revision: https://phabricator.services.mozilla.com/D173115
2023-03-27 12:35:44 +00:00
Andi-Bogdan Postelnicu 4efa1bd0ba Bug 1276351 - Move away from mozilla::tuple to std::tuple. r=necko-reviewers,sergesanspaille
Differential Revision: https://phabricator.services.mozilla.com/D173256
2023-03-27 07:20:25 +00:00
Sandor Molnar 9db345d4c1 Backed out 2 changesets (bug 1276351) for causing build bustage in image/ClippedImage.cp CLOSED TREE
Backed out changeset e84598eb82c1 (bug 1276351)
Backed out changeset e940b0554484 (bug 1276351)
2023-03-25 14:16:43 +02:00
Andi-Bogdan Postelnicu 447f1e3358 Bug 1276351 - Move away from mozilla::tuple to std::tuple. r=necko-reviewers,sergesanspaille
Differential Revision: https://phabricator.services.mozilla.com/D173256
2023-03-25 06:58:52 +00:00
Iulian Moraru 6d40eee997 Backed out 2 changesets (bug 1276351) for causing multiple failures.
Backed out changeset eeaf4f1e06af (bug 1276351)
Backed out changeset d44cb5704342 (bug 1276351)
2023-03-25 00:08:24 +02:00
Andi-Bogdan Postelnicu a1b827b503 Bug 1276351 - Move away from mozilla::tuple to std::tuple. r=necko-reviewers,sergesanspaille
Differential Revision: https://phabricator.services.mozilla.com/D173256
2023-03-24 18:55:39 +00:00
Alexandre Lissy b5389d1492 Bug 1779721 - Make sure utility process tests notifies test harness of SIGKILL r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D173520
2023-03-24 16:37:25 +00:00
Alexandre Lissy a43989bb6a Bug 1824080 - Add rdd/utility process pref disabled info r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D173442
2023-03-23 16:08:00 +00:00
Christian Holler (:decoder) 3cb30b35f1 Bug 1821010 - Remove legacy IPC fuzzing code. r=truber,nika
Differential Revision: https://phabricator.services.mozilla.com/D171981
2023-03-23 14:53:22 +00:00
Landry Breuil b114e49ce6 Bug 1823458 - Call StartOpenBSDSandbox after JS_Init in generic utility process r=gerard-majax,sefeng
otherwise sandboxing is triggered by sysctl(KERN_PROC_PID) which
isnt permitted by the current sandboxing policy.

Differential Revision: https://phabricator.services.mozilla.com/D173152
2023-03-22 16:04:09 +00:00
Jed Davis 881a15b0e6 Bug 1822728 - Increase the child process shutdown timeout for Unix ccov builds. r=ipc-reviewers,nika
Differential Revision: https://phabricator.services.mozilla.com/D172752
2023-03-20 20:32:31 +00:00
Nika Layzell 0ed9cfe9b6 Bug 1815177 - Use a custom ReadResult to reduce branching during IPDL deserialization, r=ipc-reviewers,mccr8
Differential Revision: https://phabricator.services.mozilla.com/D169954
2023-03-20 15:40:38 +00:00
Nika Layzell c4bc184bac Bug 1814686 - Part 1b: Add nullable annotations to refcounted types in ipdl, r=ipc-reviewers,mccr8
Manual changes to make all refcounted types be marked as `nullable` after the
changes in part 1a. This was done without any investigation into whether the
actual types want to be nullable, in order to avoid code changes.

Differential Revision: https://phabricator.services.mozilla.com/D168889
2023-03-20 15:40:37 +00:00
Nika Layzell 9e5c372ef3 Bug 1814686 - Part 1a: Wrap refcounted types in NotNull by default, r=ipc-reviewers,mccr8
These are the IPDL compiler changes to make all refcounted types be considered
NotNull by default, building on the changes from bug 1607634.

Existing uses of IPDL refcounted types will be marked as nullable in part 1b.

Differential Revision: https://phabricator.services.mozilla.com/D168888
2023-03-20 15:40:37 +00:00
Nika Layzell 75bbcd0353 Bug 1607634 - Part 4a: Wrap non-nullable actor types in NotNull, r=ipc-reviewers,mccr8
The code changes required for this will be in part 4b. The code is designed to
be generic as it will also be used for RefCounted types in a future patch. This
replaces the manual checking which was previously done in struct and union
serializers for non-nullable actor members.

Differential Revision: https://phabricator.services.mozilla.com/D168886
2023-03-20 15:40:36 +00:00
Nika Layzell 2c767a145a Bug 1607634 - Part 3: Specialize NotNull for SideVariant, r=glandium,ipc-reviewers,mccr8
The idea behind this specialization is to provide the members which would be on
SideVariant<..> on NotNull<SideVariant<..>>, similar to how pointer-like
methods are available on `NotNull<T>`. This makes the type more ergonomic to
use from callers.

In the next part, this will be used for non-nullable actor members in IPDL
structs and IPDL unions.

Differential Revision: https://phabricator.services.mozilla.com/D168885
2023-03-20 15:40:36 +00:00
Nika Layzell aa58ee3c65 Bug 1607634 - Part 2: Add a ParamTraits implementation for NotNull, r=ipc-reviewers,mccr8
For now, this implementation is based on the implementation of the underlying
type, with extra checking that the value is not null before wrapping and
returning.

We may want to swap things around in the future so that types like RefPtr<T>
are deserialized using NotNull<T*> or similar, so that the unnecessary
serialization overhead of tracking nullness is unnecessary, however that is not
implemented in this patch.

Differential Revision: https://phabricator.services.mozilla.com/D168884
2023-03-20 15:40:35 +00:00
Nika Layzell 0e179b3feb Bug 1814683 - Part 5: Support serializing sequences of non-default-constructable types, r=ipc-reviewers,jld
This change allows callers of ReadSequenceParam to return a
Maybe<output_iterator> rather than a T* which will be used to fill the
resulting sequence. Both STL collections and std::array have iterators like
this, which can be returned from these methods without dramatically changing
the signature to support types without default constructors.

For types which support output iterators, they will be used for any type
without a trivial default constructor to avoid unnecessary constructor calls
and initialization when deserializing.

Differential Revision: https://phabricator.services.mozilla.com/D168882
2023-03-20 15:40:34 +00:00
Nika Layzell fc898b85f5 Bug 1814683 - Part 4: Allow IPDL structs to contain non-default-constructable types, r=ipc-reviewers,jld
Previously, we would always generate a default constructor for IPDL structs
which explicitly initializes every member. This would require members to have
default initializers statically. With the new approach, each member is
individually wrapped with a template parameter which will try to ensure value
initiaization, and the default constructor is implemented with `= default;`.

The default constructor will produce a warning on clang if it is implicitly
deleted, so that warning is also suppressed.

Differential Revision: https://phabricator.services.mozilla.com/D168881
2023-03-20 15:40:34 +00:00
Nika Layzell 9a282e09c9 Bug 1814683 - Part 3: Use the new Maybe-based ReadParam signature throughout IPDL, r=ipc-reviewers,jld
This builds on top of the work in bug 1775062, by using this new signature
everywhere, including IPDL struct members and in/outparams for IPDL messages.
This is done with relatively minimal changes by using two bindings, one of
which is a reference.

Differential Revision: https://phabricator.services.mozilla.com/D168880
2023-03-20 15:40:32 +00:00
Nika Layzell f965102dee Bug 1814683 - Part 2: Add a constructor for IPDL structs which moves each parameter, r=ipc-reviewers,mccr8
This will be useful after part 3 where it will be used as part of implementing
Read based on Maybe for IPDL structs. Without this change, we'd need to copy to
construct an IPDL struct containing a non-default-constructable type.

Differential Revision: https://phabricator.services.mozilla.com/D169268
2023-03-20 15:40:32 +00:00
Nika Layzell 78fa962afb Bug 1814683 - Part 1: Combine parent/child fields in IPDL structs/unions, r=ipc-reviewers,necko-reviewers,mccr8
This combines the multiple fields or variants which were previously used to
track sided types like protocol types into a single field wrapped with a
SideVariant.

This will be used in the next part to avoid the need for default constructors
for actor types allowing the proper types to be used.

Differential Revision: https://phabricator.services.mozilla.com/D168879
2023-03-20 15:40:31 +00:00
David Parks a7b12174d2 Bug 1821418: Clean up actors in UtilityProcessChild::ActorDestroy r=gerard-majax
Differential Revision: https://phabricator.services.mozilla.com/D172182
2023-03-16 16:21:40 +00:00
Andrew McCreight 4c9ff23fe4 Bug 1822608 - Make PIDs for utility processes consistent with other processes. r=gerard-majax
Other processes print their pid like (pid 12345), so change utility processes to be consistent.

Differential Revision: https://phabricator.services.mozilla.com/D172744
2023-03-16 14:56:59 +00:00
Nika Layzell 3b40268cc1 Bug 1818305 - Part 2: Add a streamStatus method to nsIInputStream, r=xpcom-reviewers,necko-reviewers,geckoview-reviewers,valentin,jesup,m_kato,mccr8
This is semantically similar to the existing available() method, however will
not block, and doesn't need to do the work to actually determine the number of
available bytes.

As part of this patch, I also fixed one available() implementation which was
incorrectly throwing NS_BASE_STREAM_WOULD_BLOCK.

Differential Revision: https://phabricator.services.mozilla.com/D170697
2023-03-15 19:52:34 +00:00
Nika Layzell e61507c3a3 Bug 1818305 - Part 1: Add a streamStatus method to nsIOutputStream, r=necko-reviewers,geckoview-reviewers,jesup,emilio,m_kato,devtools-reviewers
This new method can be used to check if the nsIOutputStream has been
closed without having data available to write. It should avoid blocking
to discover this information.

Differential Revision: https://phabricator.services.mozilla.com/D170696
2023-03-15 19:52:33 +00:00
Butkovits Atila f4a0d95530 Backed out changeset 7f4d99410d00 (bug 1821010) for causing bustages at content_parent_ipc_libfuzz.cpp. CLOSED TREE 2023-03-15 16:20:30 +02:00
Christian Holler (:decoder) 8e538acac8 Bug 1821010 - Remove legacy IPC fuzzing code. r=truber,nika
Differential Revision: https://phabricator.services.mozilla.com/D171981
2023-03-15 13:44:29 +00:00
serge-sans-paille 860ac9660a Bug 1820573 - Make security/ buildable outside of a unified build environment r=andi,keeler
Differential Revision: https://phabricator.services.mozilla.com/D171732
2023-03-15 07:30:36 +00:00
Andrew Sutherland 17cdd0ba6c Bug 1775784 - Make PRemoteWorkerService refcounted instead of ManualDealloc. r=dom-worker-reviewers,smaug
Differential Revision: https://phabricator.services.mozilla.com/D166261
2023-03-14 23:57:56 +00:00
Andrew Sutherland 74f305b424 Bug 1775784 - Make PRemoteWorker refcounted instead of ManualDealloc. r=dom-worker-reviewers,smaug
Differential Revision: https://phabricator.services.mozilla.com/D164643
2023-03-14 23:57:56 +00:00
Alexandre Lissy 41b99855dd Bug 1804291 - Add RDD Telemetry r=alwu,chutten
Differential Revision: https://phabricator.services.mozilla.com/D164232
2023-03-14 23:13:15 +00:00