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

7582 Коммитов

Автор SHA1 Сообщение Дата
Alexandre Lissy 231b4b1aad Bug 1804249 - Add telemetry for audio decoding process type r=alwu
Differential Revision: https://phabricator.services.mozilla.com/D163951
2023-03-14 23:13:15 +00:00
Iulian Moraru 801dae8f2c Backed out 14 changesets (bug 1607634, bug 1814683, bug 1815177, bug 1814686) for causing build bustages on MaybeStorageBase. CLOSED TREE
Backed out changeset ae1c0551cea5 (bug 1815177)
Backed out changeset a11cafaa1884 (bug 1814686)
Backed out changeset 621507521762 (bug 1814686)
Backed out changeset ad692c73e381 (bug 1814686)
Backed out changeset 3be031e503dc (bug 1607634)
Backed out changeset aebbaa145d2d (bug 1607634)
Backed out changeset 9aa1f346fe14 (bug 1607634)
Backed out changeset e3eb77ad55ca (bug 1607634)
Backed out changeset e60591e5d5cf (bug 1607634)
Backed out changeset 6e43042d204a (bug 1814683)
Backed out changeset 1706e88652d6 (bug 1814683)
Backed out changeset 6878a1590e91 (bug 1814683)
Backed out changeset b1c980c834d8 (bug 1814683)
Backed out changeset 94480b82d102 (bug 1814683)
2023-03-15 01:58:36 +02:00
Nika Layzell a8e03b0bf5 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-14 19:31:42 +00:00
Nika Layzell a07f4ca7c9 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-14 19:31:41 +00:00
Nika Layzell de0614a91a 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-14 19:31:41 +00:00
Nika Layzell 81205eb92d 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-14 19:31:40 +00:00
Nika Layzell 86509aaa1a 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-14 19:31:39 +00:00
Nika Layzell 7c9385cad1 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-14 19:31:39 +00:00
Nika Layzell f06c460d94 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-14 19:31:38 +00:00
Nika Layzell 11639b965c 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-14 19:31:38 +00:00
Nika Layzell 0139e1501c 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-14 19:31:37 +00:00
Nika Layzell 99fb1dbf3f 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-14 19:31:37 +00:00
Nika Layzell 97577629c0 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-14 19:31:36 +00:00
Harveer Singh fe1e1d3aba Bug 1639548 - Remove redundant purging of localstorage private mode data. r=janv
Depends on D86562

Differential Revision: https://phabricator.services.mozilla.com/D86704
2023-03-14 05:38:04 +00:00
Alexandre Lissy 39164fee35 Bug 1816857 - Avoid empty launch promise on Utility launch failure r=nika
Differential Revision: https://phabricator.services.mozilla.com/D171797
2023-03-13 17:17:54 +00:00
Andreas Pehrson 473f6ce634 Bug 1819465 - Forward MessagePumpForNonMainUIThreads refing. r=xpcom-reviewers,nika
Differential Revision: https://phabricator.services.mozilla.com/D171531
2023-03-03 17:44:32 +00:00
Sean Feng 81c8e77c0d Bug 1809518 - Use stencil parsing to do the Javascript check for ORB in Utility Process r=farre,smaug,tcampbell
This patch allows JS Validator to parse the incoming data into
stencil to verify if its a Javascript file.

Differential Revision: https://phabricator.services.mozilla.com/D166484
2023-02-28 19:46:09 +00:00
Marian-Vasile Laza 7747a471ee Backed out 5 changesets (bug 1639545, bug 1639548, bug 1818214) for multiple mochitest/marionette dom/indexedDB/test/... related test failures. CLOSED TREE
Backed out changeset 26d9a018ab8c (bug 1639545)
Backed out changeset 6814e78b09e7 (bug 1639545)
Backed out changeset dcaa7f92339c (bug 1818214)
Backed out changeset 2da5597a6ab0 (bug 1639548)
Backed out changeset b3251a6ea2ed (bug 1639548)
2023-02-28 20:54:08 +02:00
Marian-Vasile Laza c39ea4a713 Backed out 15 changesets (bug 1809518) for wpt failures on navigation-headers.https.html.
Backed out changeset d245efcf2257 (bug 1809518)
Backed out changeset 3f29ad282371 (bug 1809518)
Backed out changeset 8f77fb0ddfef (bug 1809518)
Backed out changeset b1f9dcd5f147 (bug 1809518)
Backed out changeset eda8f3ef3fdb (bug 1809518)
Backed out changeset 85f4c2ca24e0 (bug 1809518)
Backed out changeset 92b774c122c9 (bug 1809518)
Backed out changeset b6e6065c79ff (bug 1809518)
Backed out changeset 724a5c7bba6a (bug 1809518)
Backed out changeset 224ccbc28c49 (bug 1809518)
Backed out changeset cc88d68be920 (bug 1809518)
Backed out changeset c02d3f25c880 (bug 1809518)
Backed out changeset 597cb423049d (bug 1809518)
Backed out changeset ae56071e154f (bug 1809518)
Backed out changeset 563403090c7f (bug 1809518)
2023-02-28 20:42:23 +02:00
Harveer Singh 1c44f15424 Bug 1639548 - Remove redundant purging of localstorage private mode data. r=dom-workers-and-storage-reviewers,janv
Differential Revision: https://phabricator.services.mozilla.com/D86704
2023-02-28 15:35:40 +00:00
Sean Feng 917bdb5fa0 Bug 1809518 - Use stencil parsing to do the Javascript check for ORB in Utility Process r=farre,smaug,tcampbell
This patch allows JS Validator to parse the incoming data into
stencil to verify if its a Javascript file.

Differential Revision: https://phabricator.services.mozilla.com/D166484
2023-02-28 15:28:02 +00:00
Jed Davis 3219af97cc Bug 1763625 - Refactor how we access child process handles. r=nika,media-playback-reviewers,karlt
Differential Revision: https://phabricator.services.mozilla.com/D169777
2023-02-28 03:41:51 +00:00
Csoregi Natalia 43c5854833 Backed out changeset dc92467cea22 (bug 1763625) for causing memory-related crashes and failures. CLOSED TREE 2023-02-28 00:52:22 +02:00
Jed Davis 1015aea40b Bug 1763625 - Refactor how we access child process handles. r=nika,media-playback-reviewers,karlt
Differential Revision: https://phabricator.services.mozilla.com/D169777
2023-02-27 20:32:51 +00:00
Nika Layzell 986867519f Bug 1812156 - Part 2: Require all IPDL using statements to be fully qualified, r=ipc-reviewers,mccr8
This is done by changing the formatting of QualifiedIds in the compiler
to include a leading `::`, anchoring the path in the global namespace.
This means that the generated code will fail to recognize imports by
relative paths, as they will not be found in the correct namespace.

This required no longer using QualifiedId in TypeSpec, as that type is
generally used for local types in IPDL, which are never qualified in a
namespace (only `using` statements actually support being qualified). As
part of this, I also removed the unnecessary wrapper TypeSpec from using
statements, which was never used.

Finally, this also required changing how we handle builtin imports for
the C primitive types, as these types (such as `int`, `bool`, or
`double`) are special keywords, and can't be named in the global
namespace. They are now given a new builtin type name for C builtins,
and defined separately from other using statements.

This change also means that typedefs will now appear in generated code
for types in the global namespace, but this is required to double-check
that the type is actually in the global namespace.

Differential Revision: https://phabricator.services.mozilla.com/D168878
2023-02-27 19:24:02 +00:00
Bob Owen c952d27eac Bug 1772089 p5: Remove content temp dir from Windows and masOS. r=jld,haik,glandium
This defines MOZ_CONTENT_TEMP_DIR to make it easier to track this in the code.
It also uses this to guard some Linux specific uses.

Differential Revision: https://phabricator.services.mozilla.com/D168596
2023-02-24 08:44:41 +00:00
Bob Owen 219f299719 Bug 1772089 p2: Switch to OS temp in InterceptorLog. r=Jamie
This means that the content process sandbox would need to be disabled on an opt
build for this logging to work.

Differential Revision: https://phabricator.services.mozilla.com/D168593
2023-02-24 08:44:40 +00:00
Csoregi Natalia 47428da2d3 Backed out 8 changesets (bug 1809518) for causing fetch related failures. CLOSED TREE
Backed out changeset b448bddfa364 (bug 1809518)
Backed out changeset ce3a811a4522 (bug 1809518)
Backed out changeset f5add471e7f9 (bug 1809518)
Backed out changeset d2e6d1734eec (bug 1809518)
Backed out changeset 2299a5bdc7a9 (bug 1809518)
Backed out changeset 3eb92dc5aac9 (bug 1809518)
Backed out changeset 3061e4fbf237 (bug 1809518)
Backed out changeset 678468cb98cd (bug 1809518)
2023-02-23 04:33:37 +02:00
Sean Feng 83a8ef5280 Bug 1809518 - Use stencil parsing to do the Javascript check for ORB in Utility Process r=farre,smaug,tcampbell
This patch allows JS Validator to parse the incoming data into
stencil to verify if its a Javascript file.

Differential Revision: https://phabricator.services.mozilla.com/D166484
2023-02-22 20:17:00 +00:00
Cristian Tuns ef9fa152c1 Backed out 8 changesets (bug 1809518) for causing build bustages on JSOracleChild.h CLOSED TREE
Backed out changeset 1057c5d5a0a5 (bug 1809518)
Backed out changeset 1ddffd079624 (bug 1809518)
Backed out changeset 3f43f1cd3e8b (bug 1809518)
Backed out changeset 16bd31105745 (bug 1809518)
Backed out changeset d86c04497104 (bug 1809518)
Backed out changeset 25a5bf657f5c (bug 1809518)
Backed out changeset bf67b8c14aa0 (bug 1809518)
Backed out changeset 5cc0653b2072 (bug 1809518)
2023-02-22 12:20:40 -05:00
Sean Feng 561a15fdc2 Bug 1809518 - Use stencil parsing to do the Javascript check for ORB in Utility Process r=farre,smaug,tcampbell
This patch allows JS Validator to parse the incoming data into
stencil to verify if its a Javascript file.

Differential Revision: https://phabricator.services.mozilla.com/D166484
2023-02-22 14:07:46 +00:00
Olli Pettay 4698724ff7 Bug 1816088 - use highest priority message for SHMEM_CREATED_MESSAGE_TYPE, r=nika
Differential Revision: https://phabricator.services.mozilla.com/D169566
2023-02-14 01:29:03 +00:00
Olli Pettay 18492c2d55 Bug 1815983 - Add support for ReplyPriority annotation, r=mccr8
The actual code is, except one line, from nika.

Differential Revision: https://phabricator.services.mozilla.com/D169380
2023-02-14 01:29:02 +00:00
Andi-Bogdan Postelnicu d7e8a09c21 Bug 1519636 - Reformat recent changes to the Google coding style. r=glandium
Updated with clang-format version 15.0.5 (taskcluster-MKK8dHUpQkGfPLA793lizg)
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D168658
2023-02-13 15:02:07 +00:00
Jed Davis e38f0ca71d Bug 1814551 - Try waiting for child processes directly when the fork server is in use. r=nika
When the fork server is enabled, not all IPC child processes are children of
the fork server; currently, process types other than content processes
are still spawned directly.  This means that we need to `waitid` or
`waitpid` them when they exit in order to not leak zombie processes.

Specifically, we can just try to `waitid` the process, and then if that
fails with `ECHILD` we can assume it was a fork server child and fall
back to the previous `kill(pid, 0)` workaround.  This patch does that,
but only if the fork server is active; otherwise we maintain the current
behavior of only waiting for child processes directly.

Differential Revision: https://phabricator.services.mozilla.com/D168756
2023-02-09 01:48:13 +00:00
Norisz Fay 2d8b8927fe Backed out changeset 4096c0b1871e (bug 1814551) for causing build bustages CLOSED TREE 2023-02-07 06:34:05 +02:00
Jed Davis 3e83500597 Bug 1814551 - Try waiting for child processes directly when the fork server is in use. r=nika
When the fork server is enabled, not all IPC child processes are children of
the fork server; currently, process types other than content processes
are still spawned directly.  This means that we need to `waitid` or
`waitpid` them when they exit in order to not leak zombie processes.

Specifically, we can just try to `waitid` the process, and then if that
fails with `ECHILD` we can assume it was a fork server child and fall
back to the previous `kill(pid, 0)` workaround.  This patch does that,
but only if the fork server is active; otherwise we maintain the current
behavior of only waiting for child processes directly.

Differential Revision: https://phabricator.services.mozilla.com/D168756
2023-02-07 04:12:26 +00:00
Andreas Farre 47c5c3cc00 Bug 1812275 - Handle more than one utility process in test. r=jld
Depends on D167662

Differential Revision: https://phabricator.services.mozilla.com/D167785
2023-02-06 15:52:28 +00:00
Andreas Farre e5afaa84ab Bug 1812035 - Fix broken about:memory tests. r=smaug
Tests for about:memory doesn't know about utility processes. Make sure
to hide the utility process reporter when needed.

Differential Revision: https://phabricator.services.mozilla.com/D167662
2023-02-06 15:52:28 +00:00
Emilio Cobos Álvarez 3d092ba60e Bug 1775062 - Implement ipdl reads without needing default ctors. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D149743
2023-02-04 11:12:36 +00:00
Nika Layzell ab4c8c50d9 Bug 1814751 - Treat UniquePtr as a normal IPDL type, r=ipc-reviewers,mccr8
Previously it was a property that all types could have, which was
incorrect, as only the UniquePtrType IPDLType could ever be a UniquePtr.
This changes that logic to make it more consistent with other IPDL
Types.

This also removes the check for a UniquePtr type attached to a `using`
statement, as the type can never be an IPDL type in that situation.

Differential Revision: https://phabricator.services.mozilla.com/D168746
2023-02-04 00:01:44 +00:00
Stephen A Pohl 84829b4b98 Bug 1812567: Change the activation policy for plugin-container to NSApplicationActivationPolicyProhibited to make it clear that it cannot itself be activated and should continue to not appear in the Dock. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D167944
2023-02-02 14:55:09 +00:00
David Parks b8c57fd02d Bug 1704500: Test Windows geolocation utility process restart on crash r=gerard-majax
Make sure that the geolocation utility process restarts for georequests that arrive after a crash. This tests process behavior regardless of whether or not the OS is set to allow geolocation (and in automation, it is not).

Depends on D162944

Differential Revision: https://phabricator.services.mozilla.com/D162945
2023-01-31 21:10:28 +00:00
David Parks 81a6335233 Bug 1704500: Add utility process test helpers r=gerard-majax
Also makes the existing utility process test functions a bit more general.

Depends on D162943

Differential Revision: https://phabricator.services.mozilla.com/D162944
2023-01-31 21:10:28 +00:00
David Parks 39b290be77 Bug 1704500: Make UtilityActorName an alias for WebIDLUtilityActorName r=gerard-majax
This eliminates a redundant enum that we had to keep synchronized with another.

Depends on D155020

Differential Revision: https://phabricator.services.mozilla.com/D162943
2023-01-31 21:10:28 +00:00
David Parks 2e959c2130 Bug 1704500: Add WindowsUtils kind of utility process on Windows r=gerard-majax,ipc-reviewers,nika
Adds a new type of utility process that is set up to handle Windows OS objects.  We are adding this process type to run Windows geolocation APIs but more services are expected to be included in it.  The ILocation APIs have a race condition that would otherwise crash the main process.  The ILocation work is in a later patch in the series.

Depends on D155017

Differential Revision: https://phabricator.services.mozilla.com/D155018
2023-01-31 21:10:26 +00:00
David Parks 04713ddc93 Bug 1704500: Add logging to UtilityProcessHost/Manager r=gerard-majax
Adds a "utilityproc" log to trace utility process launch and shutdown steps.

Differential Revision: https://phabricator.services.mozilla.com/D155017
2023-01-31 21:10:26 +00:00
Andrew Osmond b87e7bad97 Bug 1811981 - Add ability to run both x86 and ARM Widevine plugins on Windows ARM. r=jld
This patch adds the ability for Windows on ARM to launch either x86 or
ARM Widevine plugins. It also adds the ability for Windows on x86 to
refuse ARM binaries in case, for example, a profile is transferred
between machines.

Overall this should be a non-functional change for users at the time of
landing. It does however allow us to ship the ARM Widevine plugin to
Windows ARM users to workaround a plugin crash with the x86 Widevine
plugin. This only affects Windows 10 users (Windows 11 works fine).

Differential Revision: https://phabricator.services.mozilla.com/D167634
2023-01-31 20:57:11 +00:00
Jens Stutte b53d904e7c Bug 1813559 - Do not bail out on shutdown in BackgroundParentImpl::AllocPRemoteWorkerControllerParent but let RemoteWorkerManager::LaunchNewContentProcess do the error handling. r=dom-worker-reviewers,asuth
Differential Revision: https://phabricator.services.mozilla.com/D168264
2023-01-30 17:57:46 +00:00
Andrew McCreight 5528ac12d7 Bug 1808598, part 1 - Clean up send semantics IPDL types. r=ipc-reviewers,nika
This patch implements a number of cleanups for how send semantics are
represented in IPDL types.

1. needsMoreJuiceThan is inlined.
2. convertsTo is renamed to sendSemanticsSatisfiedBy to be more descriptive,
   and is no longer a class method.
3. nestedRange, sendSemantics and the methods that operate on them
   are moved from IPDLType to a new class, which MessageType and
   ProtocolType now inherit from.
4. IPDLType.hasReply has been inlined into MessageType.hasReply.

Differential Revision: https://phabricator.services.mozilla.com/D167836
2023-01-30 15:41:14 +00:00
Iulian Moraru fb1e6d6e57 Backed out 7 changesets (bug 1704500) for causing bc failures on browser_utility_geolocation_crashed.js. CLOSED TREE
Backed out changeset afcc1e8b5ad7 (bug 1704500)
Backed out changeset 1c27f9c36fda (bug 1704500)
Backed out changeset c0f0a280aaea (bug 1704500)
Backed out changeset 4be2d58ddf54 (bug 1704500)
Backed out changeset 1386732459ce (bug 1704500)
Backed out changeset 88e8015e1ec4 (bug 1704500)
Backed out changeset d96e810e20ec (bug 1704500)
2023-01-29 03:17:48 +02:00
David Parks 6c0bec1169 Bug 1704500: Test Windows geolocation utility process restart on crash r=gerard-majax
Make sure that the geolocation utility process restarts for georequests that arrive after a crash. This tests process behavior regardless of whether or not the OS is set to allow geolocation (and in automation, it is not).

Depends on D162944

Differential Revision: https://phabricator.services.mozilla.com/D162945
2023-01-28 21:00:50 +00:00
David Parks 1a3ddd6ba2 Bug 1704500: Add utility process test helpers r=gerard-majax
Also makes the existing utility process test functions a bit more general.

Depends on D162943

Differential Revision: https://phabricator.services.mozilla.com/D162944
2023-01-28 21:00:50 +00:00
David Parks 7e4c5e8fba Bug 1704500: Make UtilityActorName an alias for WebIDLUtilityActorName r=gerard-majax
This eliminates a redundant enum that we had to keep synchronized with another.

Depends on D155020

Differential Revision: https://phabricator.services.mozilla.com/D162943
2023-01-28 21:00:50 +00:00
David Parks 6161ee57c1 Bug 1704500: Add WindowsUtils kind of utility process on Windows r=gerard-majax,ipc-reviewers,nika
Adds a new type of utility process that is set up to handle Windows OS objects.  We are adding this process type to run Windows geolocation APIs but more services are expected to be included in it.  The ILocation APIs have a race condition that would otherwise crash the main process.  The ILocation work is in a later patch in the series.

Depends on D155017

Differential Revision: https://phabricator.services.mozilla.com/D155018
2023-01-28 21:00:48 +00:00
David Parks b2d24d88ba Bug 1704500: Add logging to UtilityProcessHost/Manager r=gerard-majax
Adds a "utilityproc" log to trace utility process launch and shutdown steps.

Differential Revision: https://phabricator.services.mozilla.com/D155017
2023-01-28 21:00:48 +00:00
Narcis Beleuzu 9e96e91239 Backed out 3 changesets (bug 1812275, bug 1812035, bug 1806501) for bc failures on browser_aboutprocesses_default_options.js .
Backed out changeset 4f13d8470d97 (bug 1806501)
Backed out changeset a276a2939cee (bug 1812275)
Backed out changeset 67775732c1a8 (bug 1812035)
2023-01-27 17:14:57 +02:00
Andreas Farre 57f0f27922 Bug 1812275 - Handle more than one utility process in test. r=jld
Depends on D167662

Differential Revision: https://phabricator.services.mozilla.com/D167785
2023-01-27 09:17:17 +00:00
Andreas Farre 9956dde6c8 Bug 1812035 - Fix broken about:memory tests. r=smaug
Tests for about:memory doesn't know about utility processes. Make sure
to hide the utility process reporter when needed, and count the number
of living processes, also when needed.

Differential Revision: https://phabricator.services.mozilla.com/D167662
2023-01-27 09:17:16 +00:00
Sandor Molnar ea48d05eba Backed out 7 changesets (bug 1704500) for causing multiple failures in browser_utility_geolocation_crashed/test_geolocation_reset_accuracy CLOSED TREE
Backed out changeset c3ae64389c26 (bug 1704500)
Backed out changeset 747d84ff17c7 (bug 1704500)
Backed out changeset 313b8770dc51 (bug 1704500)
Backed out changeset 30632246ee2b (bug 1704500)
Backed out changeset 90a8d51fc17c (bug 1704500)
Backed out changeset a1d1a97a2ffa (bug 1704500)
Backed out changeset 6bfb4d8de1e1 (bug 1704500)
2023-01-27 05:49:32 +02:00
David Parks 6598e4b0ba Bug 1704500: Test Windows geolocation utility process restart on crash r=gerard-majax
Make sure that the geolocation utility process restarts for georequests that arrive after a crash. This tests process behavior regardless of whether or not the OS is set to allow geolocation (and in automation, it is not).

Depends on D162944

Differential Revision: https://phabricator.services.mozilla.com/D162945
2023-01-26 20:15:08 +00:00
David Parks 4797695c17 Bug 1704500: Add utility process test helpers r=gerard-majax
Also makes the existing utility process test functions a bit more general.

Depends on D162943

Differential Revision: https://phabricator.services.mozilla.com/D162944
2023-01-26 20:15:08 +00:00
David Parks 85547a1272 Bug 1704500: Make UtilityActorName an alias for WebIDLUtilityActorName r=gerard-majax
This eliminates a redundant enum that we had to keep synchronized with another.

Depends on D155020

Differential Revision: https://phabricator.services.mozilla.com/D162943
2023-01-26 20:15:08 +00:00
David Parks f921985dfb Bug 1704500: Add WindowsUtils kind of utility process on Windows r=gerard-majax,ipc-reviewers,nika
Adds a new type of utility process that is set up to handle Windows OS objects.  We are adding this process type to run Windows geolocation APIs but more services are expected to be included in it.  The ILocation APIs have a race condition that would otherwise crash the main process.  The ILocation work is in a later patch in the series.

Depends on D155017

Differential Revision: https://phabricator.services.mozilla.com/D155018
2023-01-26 20:15:06 +00:00
David Parks 9ec7b795b8 Bug 1704500: Add logging to UtilityProcessHost/Manager r=gerard-majax
Adds a "utilityproc" log to trace utility process launch and shutdown steps.

Differential Revision: https://phabricator.services.mozilla.com/D155017
2023-01-26 20:15:06 +00:00
Cristian Tuns d1e6642127 Backed out 7 changesets (bug 1704500) for causing build bustages CLOSED TREE
Backed out changeset e48723d8d42e (bug 1704500)
Backed out changeset 897b985f9298 (bug 1704500)
Backed out changeset c2474d1c0046 (bug 1704500)
Backed out changeset d4508f8ba7df (bug 1704500)
Backed out changeset 241be693628d (bug 1704500)
Backed out changeset 341ec2465c7d (bug 1704500)
Backed out changeset 0d1c0dcd7645 (bug 1704500)
2023-01-25 15:33:33 -05:00
David Parks b27f3c0973 Bug 1704500: Test Windows geolocation utility process restart on crash r=gerard-majax
Make sure that the geolocation utility process restarts for georequests that arrive after a crash. This tests process behavior regardless of whether or not the OS is set to allow geolocation (and in automation, it is not).

Depends on D162944

Differential Revision: https://phabricator.services.mozilla.com/D162945
2023-01-25 19:58:47 +00:00
David Parks 459f7ad436 Bug 1704500: Add utility process test helpers r=gerard-majax
Also makes the existing utility process test functions a bit more general.

Depends on D162943

Differential Revision: https://phabricator.services.mozilla.com/D162944
2023-01-25 19:58:47 +00:00
David Parks 5236e4720d Bug 1704500: Make UtilityActorName an alias for WebIDLUtilityActorName r=gerard-majax
This eliminates a redundant enum that we had to keep synchronized with another.

Depends on D155020

Differential Revision: https://phabricator.services.mozilla.com/D162943
2023-01-25 19:58:47 +00:00
David Parks 41fcb215d0 Bug 1704500: Add WindowsUtils kind of utility process on Windows r=gerard-majax,ipc-reviewers,nika
Adds a new type of utility process that is set up to handle Windows OS objects.  We are adding this process type to run Windows geolocation APIs but more services are expected to be included in it.  The ILocation APIs have a race condition that would otherwise crash the main process.  The ILocation work is in a later patch in the series.

Depends on D155017

Differential Revision: https://phabricator.services.mozilla.com/D155018
2023-01-25 19:58:45 +00:00
David Parks 6a29255196 Bug 1704500: Add logging to UtilityProcessHost/Manager r=gerard-majax
Adds a "utilityproc" log to trace utility process launch and shutdown steps.

Differential Revision: https://phabricator.services.mozilla.com/D155017
2023-01-25 19:58:45 +00:00
Emilio Cobos Álvarez af31750cc0 Bug 1775062 - Fix various using statements to use properly qualified names. r=nika,necko-reviewers,valentin
Differential Revision: https://phabricator.services.mozilla.com/D167710
2023-01-25 10:52:10 +00:00
Marian-Vasile Laza a8db73b494 Backed out 8 changesets (bug 1704500) for causing build bustages on UtilityProcessHost.cpp. CLOSED TREE
Backed out changeset da69da68588d (bug 1704500)
Backed out changeset 8f1b73a96bb0 (bug 1704500)
Backed out changeset 817d104b3a3e (bug 1704500)
Backed out changeset 1c84f8f0796a (bug 1704500)
Backed out changeset 93e59d5488dc (bug 1704500)
Backed out changeset f85e8eed6fed (bug 1704500)
Backed out changeset e581bfdf0f8e (bug 1704500)
Backed out changeset 5d62d1a33cf8 (bug 1704500)
2023-01-25 05:18:00 +02:00
Otto Länd 97b7518d94 Bug 1704500, 1704500, 1704500, 1704500, 1704500, 1704500, 1704500: apply code formatting via Lando
# ignore-this-changeset
2023-01-25 02:52:24 +00:00
David Parks 620c02a682 Bug 1704500: Test Windows geolocation utility process restart on crash r=gerard-majax
Make sure that the geolocation utility process restarts for georequests that arrive after a crash. This tests process behavior regardless of whether or not the OS is set to allow geolocation (and in automation, it is not).

Depends on D162944

Differential Revision: https://phabricator.services.mozilla.com/D162945
2023-01-25 02:48:58 +00:00
David Parks 440a5789f6 Bug 1704500: Add utility process test helpers r=gerard-majax
Also makes the existing utility process test functions a bit more general.

Depends on D162943

Differential Revision: https://phabricator.services.mozilla.com/D162944
2023-01-25 02:48:57 +00:00
David Parks 3b5a94ae42 Bug 1704500: Make UtilityActorName an alias for WebIDLUtilityActorName r=gerard-majax
This eliminates a redundant enum that we had to keep synchronized with another.

Depends on D155020

Differential Revision: https://phabricator.services.mozilla.com/D162943
2023-01-25 02:48:57 +00:00
David Parks f0feadd478 Bug 1704500: Add WindowsUtils kind of utility process on Windows r=gerard-majax,ipc-reviewers,nika
Adds a new type of utility process that is set up to handle Windows OS objects.  We are adding this process type to run Windows geolocation APIs but more services are expected to be included in it.  The ILocation APIs have a race condition that would otherwise crash the main process.  The ILocation work is in a later patch in the series.

Depends on D155017

Differential Revision: https://phabricator.services.mozilla.com/D155018
2023-01-25 02:48:56 +00:00
David Parks 6a2f1c0b29 Bug 1704500: Add logging to UtilityProcessHost/Manager r=gerard-majax
Adds a "utilityproc" log to trace utility process launch and shutdown steps.

Differential Revision: https://phabricator.services.mozilla.com/D155017
2023-01-25 02:48:55 +00:00
Sandor Molnar b6d0a71936 Backed out 2 changesets (bug 1812035, bug 1806501) for causing bc failures in ipc/glue/test/browser/browser_utility_audioDecodeCrash.js CLOSED TREE
Backed out changeset d7f1a776a986 (bug 1806501)
Backed out changeset 4a44daa59af4 (bug 1812035)
2023-01-24 18:31:34 +02:00
Andreas Farre c71e5fdf12 Bug 1812035 - Fix broken about:memory tests. r=smaug
Tests for about:memory doesn't know about utility processes. Make sure
to hide the utility process reporter when needed, and count the number
of living processes, also when needed.

Differential Revision: https://phabricator.services.mozilla.com/D167662
2023-01-24 15:37:49 +00:00
Jens Stutte c115ea4556 Bug 1811195 - Bail out on AppShutdownConfirmed in SharedWorkerManager::MaybeCreateRemoteWorker and BackgroundParentImpl::AllocPRemoteWorkerControllerParent r=dom-worker-reviewers,smaug
Differential Revision: https://phabricator.services.mozilla.com/D167565
2023-01-24 11:22:53 +00:00
Chris Martin 15c5b22789 Bug 1799470 - Retighten GPU Process File Access r=nika,handyman
Differential Revision: https://phabricator.services.mozilla.com/D165419
2023-01-23 23:05:03 +00:00
Greg Stoll 62e5d740ae Bug 1804023 - Part 2: add ability to blocklist DLLs in just the GPU process r=gsvelto
As with the socket process, we can't automated test that the block works in the GPU process, but I manually verified this. I did add an automated test that ensures blocking something in the GPU process doesn't block it in other processes.

Differential Revision: https://phabricator.services.mozilla.com/D167399
2023-01-20 19:21:39 +00:00
Cosmin Sabou af47c3669b Backed out 3 changesets (bug 1804023) for causing DllBlocklistInit.cpp related bustages. CLOSED TREE
Backed out changeset 8ac7bb069839 (bug 1804023)
Backed out changeset 9d2766a3d506 (bug 1804023)
Backed out changeset b5b4be5f7502 (bug 1804023)
2023-01-20 20:44:28 +02:00
Greg Stoll 8cb4d0d627 Bug 1804023 - Part 2: add ability to blocklist DLLs in just the GPU process r=gsvelto
As with the socket process, we can't automated test that the block works in the GPU process, but I manually verified this. I did add an automated test that ensures blocking something in the GPU process doesn't block it in other processes.

Differential Revision: https://phabricator.services.mozilla.com/D167399
2023-01-20 18:00:45 +00:00
Eden Chuang 22c302924c Bug 1351231 - PFetch protocol declaration and implementation. r=dom-worker-reviewers,jesup
Depends on D138813

Differential Revision: https://phabricator.services.mozilla.com/D142436
2023-01-20 09:09:17 +00:00
Noemi Erli 2a016fbd8d Backed out 5 changesets (bug 1351231) for causing multiple wpt failures CLOSED TREE
Backed out changeset 257553919696 (bug 1351231)
Backed out changeset 4fd92351d64b (bug 1351231)
Backed out changeset 7a4e3f5f674a (bug 1351231)
Backed out changeset 9da00c1364a5 (bug 1351231)
Backed out changeset 19b78046ffef (bug 1351231)
2023-01-18 18:16:01 +02:00
Nicolas Silva 31b3a3d483 Bug 1800430 - Avoid ambiguous namespace error in RawShmem.h. r=nika
Depending on the ordering includes and the direction of the wind, ipc:: can cause mozilla::ipc:: vs mozilla::dom::ipc:: ambiguity errors.

Differential Revision: https://phabricator.services.mozilla.com/D166422
2023-01-18 14:42:17 +00:00
Olli Pettay 19068eab11 Bug 1810975 - remove unused MarkVsyncReceived()/MarkVsyncRan(), r=farre
Differential Revision: https://phabricator.services.mozilla.com/D167143
2023-01-18 14:32:59 +00:00
Yulia Startsev 1c5ad3e91d Bug 1247687 - Implement csp for Module Workers; r=evilpie,asuth,rpl,ckerschb
Depends on D155691

Differential Revision: https://phabricator.services.mozilla.com/D156102
2023-01-18 13:46:33 +00:00
Eden Chuang 594d02ea78 Bug 1351231 - PFetch protocol declaration and implementation. r=dom-worker-reviewers,jesup
Depends on D138813

Differential Revision: https://phabricator.services.mozilla.com/D142436
2023-01-18 00:50:19 +00:00
Marian-Vasile Laza 1037940f5b Backed out 5 changesets (bug 1351231) for causing multiple wpt failures. CLOSED TREE
Backed out changeset a41252141399 (bug 1351231)
Backed out changeset 6cbb442f4772 (bug 1351231)
Backed out changeset dbdca4661a35 (bug 1351231)
Backed out changeset ea27cd66fefd (bug 1351231)
Backed out changeset 8c21c9468949 (bug 1351231)
2023-01-17 19:53:09 +02:00
Eden Chuang cb31c5dd40 Bug 1351231 - PFetch protocol declaration and implementation. r=dom-worker-reviewers,jesup
Depends on D138813

Differential Revision: https://phabricator.services.mozilla.com/D142436
2023-01-17 15:13:45 +00:00
Nika Layzell 852d02ec16 Bug 1809753 - Part 3: Replace all callers of GetCurrentEventTarget with GetCurrentSerialEventTarget, r=mccr8,necko-reviewers,valentin
This only changes the behaviour when called with a TaskQueue or other type
using SerialEventTargetGuard on the stack. They are being switched over as the
existing GetCurrentEventTarget method is being removed, as it is somewhat
confusing, and poorly documented.

Callers which need to get the current thread even when on a threadpool or
behind a TaskQueue were switched to GetCurrentEventTarget in the previous part.

Differential Revision: https://phabricator.services.mozilla.com/D166607
2023-01-16 23:14:11 +00:00
Nika Layzell 59be033e1c Bug 1809753 - Part 1: Remove quantum-dom nsIThread::EventTarget methods, r=mccr8
We aren't likely to try to make these changes any time soon, so cleaning out
these unnecessary methods which just return `this` will simplify things.

I was unable to find any calls to the `.eventTarget` getter in JS, which makes
sense, as the nsIThread type is only really used in JS as a wrapper around the
main thread in older code. Because of that, it has been removed as well.

Differential Revision: https://phabricator.services.mozilla.com/D166605
2023-01-16 23:14:10 +00:00
Sandor Molnar 41b78439d0 Backed out 6 changesets (bug 1809752, bug 1809753) for causing perma failures in browser/components/firefoxview/tests/browser/browser_feature_callout_position.js
Backed out changeset ea05784d74c4 (bug 1809753)
Backed out changeset 7c9b20eebcc8 (bug 1809753)
Backed out changeset d0267ac2256d (bug 1809753)
Backed out changeset aa9f2971bd6f (bug 1809753)
Backed out changeset f0d9fcfaa6f8 (bug 1809752)
Backed out changeset 6d58c799cffe (bug 1809752)
2023-01-17 03:19:24 +02:00
Nika Layzell 8d118308de Bug 1809753 - Part 3: Replace all callers of GetCurrentEventTarget with GetCurrentSerialEventTarget, r=mccr8,necko-reviewers,valentin
This only changes the behaviour when called with a TaskQueue or other type
using SerialEventTargetGuard on the stack. They are being switched over as the
existing GetCurrentEventTarget method is being removed, as it is somewhat
confusing, and poorly documented.

Callers which need to get the current thread even when on a threadpool or
behind a TaskQueue were switched to GetCurrentEventTarget in the previous part.

Differential Revision: https://phabricator.services.mozilla.com/D166607
2023-01-16 23:14:11 +00:00
Nika Layzell f410f28a30 Bug 1809753 - Part 1: Remove quantum-dom nsIThread::EventTarget methods, r=mccr8
We aren't likely to try to make these changes any time soon, so cleaning out
these unnecessary methods which just return `this` will simplify things.

I was unable to find any calls to the `.eventTarget` getter in JS, which makes
sense, as the nsIThread type is only really used in JS as a wrapper around the
main thread in older code. Because of that, it has been removed as well.

Differential Revision: https://phabricator.services.mozilla.com/D166605
2023-01-16 23:14:10 +00:00
Andreas Pehrson b1fec64a52 Bug 1790160 - In MessagePumpForUI for Windows, effectively apply upstream's commit 6b9a2fa. r=ipc-reviewers,nika
As a follow-up to the prior patch, this patch effectively applies upstream's
6b9a2faf89

Differential Revision: https://phabricator.services.mozilla.com/D166521
2023-01-16 15:45:38 +00:00