Commit Graph
363 Commits
Author SHA1 Message Date
Tom Schuster ca15fc6757 Bug 2034762 - Use WebIDLEnumSerializer for GPUDeviceLostReason. r=webgpu-reviewers,teoxoy
Differential Revision: https://phabricator.services.mozilla.com/D296316
2026-04-28 07:09:03 +00:00
Ashley Hale 14c6697842 Bug 2012850 - Add TransferFunction to TextureHost and PiecewiseGamma to support HLG transfer function r=tnikkel,bradwerth,gfx-reviewers,media-playback-reviewers,alwu
Differential Revision: https://phabricator.services.mozilla.com/D287078
2026-03-31 21:37:23 +00:00
rperta 2edb44ad27 Revert "Bug 2012850 - Add TransferFunction to TextureHost and PiecewiseGamma to support HLG transfer function r=tnikkel,bradwerth,gfx-reviewers,media-playback-reviewers,alwu" for causing build bustages at DCLayerTree.cpp
This reverts commit 2550eb5e9b.
2026-03-31 01:46:47 +00:00
Ashley Hale 2550eb5e9b Bug 2012850 - Add TransferFunction to TextureHost and PiecewiseGamma to support HLG transfer function r=tnikkel,bradwerth,gfx-reviewers,media-playback-reviewers,alwu
Differential Revision: https://phabricator.services.mozilla.com/D287078
2026-03-31 00:24:42 +00:00
Sotaro Ikeda 946f39c1f5 Bug 2001989 - Post SharedTexture only when it is submitted r=webgpu-reviewers,gfx-reviewers,teoxoy
SharedTexture needs to be submitted before present.

Differential Revision: https://phabricator.services.mozilla.com/D289449
2026-03-26 02:30:28 +00:00
Sotaro Ikeda c18700ecc8 Bug 2025060 - Add size check r=webgpu-reviewers,gfx-reviewers,bradwerth
Size should fit in a 16 bits signed integers.

Differential Revision: https://phabricator.services.mozilla.com/D289422
2026-03-25 10:52:52 +00:00
Jim Blandy a675f00c72 Bug 1870699: Use new wgpu_server_buffer_map_blocking for GetFrontBufferSnapshot. r=webgpu-reviewers,teoxoy
Define a new function, `wgpu_server_buffer_map_blocking` that maps a
wgpu buffer and blocks the calling thread until its contents are ready
for access by the CPU.

Use this function in `WebGPUParent::GetFrontBufferSnapshot`, rather
than calling `wgpu_server_poll_all_devices` explicitly to wait for the
buffer to be ready.

Differential Revision: https://phabricator.services.mozilla.com/D285397
2026-03-23 04:40:47 +00:00
Sylvestre Ledru 9eb1a31a98 Bug 2023419 - Remove Emacs/Vim modelines from dom/ r=emilio,media-playback-reviewers,webidl,padenot
replaced by .editorconfig
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D287843
2026-03-16 21:02:32 +00:00
Tom Schuster 601fafa65b Bug 2021178 - Return Maybe<int32_t> from Get*Stride. r=tnikkel,media-playback-reviewers,webrtc-reviewers,webgpu-reviewers,bradwerth,ErichDonGubler,pehrsons,padenot
Differential Revision: https://phabricator.services.mozilla.com/D287396
2026-03-16 20:26:11 +00:00
Teodor Tanasoaia 2f8a8fdd43 Bug 2018451 - Compute presentation buffer sizes early. r=webgpu-reviewers,aleiserson
Differential Revision: https://phabricator.services.mozilla.com/D284500
2026-03-03 14:50:15 +00:00
Andy Leiserson d56abcc274 Bug 2017446 - Report correct type for uncaptured errors r=webgpu-reviewers,ErichDonGubler
Differential Revision: https://phabricator.services.mozilla.com/D283775
2026-02-18 20:49:05 +00:00
Teodor Tanasoaia 4f59670735 Bug 2012111 - Buffer::unmap() should not generate any validation errors. r=webgpu-reviewers,nical
Differential Revision: https://phabricator.services.mozilla.com/D280252
2026-01-27 17:54:58 +00:00
Jim Blandy 94fdd0b66d Bug 2007600: Don't poll all devices from WebGPUParent::ActorDestroy. r=webgpu-reviewers,bradwerth
There is no need to call `wgpu_server_poll_all_devices` from
`mozilla::webgpu::WebGPUParent::ActorDestroy`, as the normal wgpu-core
shutdown handling will take care of giving all devices a final poll.
The `Drop` implementation for `wgpu_core::resource::queue::Queue`
tries to clean everything up while still tolerating a hung device.

Differential Revision: https://phabricator.services.mozilla.com/D277472
2025-12-24 01:45:20 +00:00
serge-sans-paille f61f1d17c2 Bug 1996566 - Remove unused mfbt inclusion in dom/** r=emilio,media-playback-reviewers,dom-storage-reviewers,dom-worker-reviewers,jari,alwu,asuth
Differential Revision: https://phabricator.services.mozilla.com/D270172
2025-10-28 07:24:25 +00:00
Teodor Tanasoaia ec8a6a54a0 Bug 1973591 - Avoid freeing swapchain buffer IDs too early. r=webgpu-reviewers,aleiserson
Differential Revision: https://phabricator.services.mozilla.com/D269784
2025-10-24 07:28:25 +00:00
Teodor Tanasoaia a1dc8c2333 Bug 1993113. r=webgpu-reviewers,jimb
Differential Revision: https://phabricator.services.mozilla.com/D268125
2025-10-15 16:12:57 +00:00
Alexandru Marc 793acd9463 Revert "Bug 1993113. r=webgpu-reviewers,jimb" for causing build bustages @ nsTArray.h
This reverts commit 132a4cb3cf.
2025-10-14 17:59:35 +00:00
Teodor Tanasoaia 132a4cb3cf Bug 1993113. r=webgpu-reviewers,jimb
Differential Revision: https://phabricator.services.mozilla.com/D268125
2025-10-14 17:29:27 +00:00
Teodor Tanasoaia 03a627fbce Bug 1981225 - Consolidate ID-related logic in ObjectBase. r=webgpu-reviewers,ErichDonGubler
Differential Revision: https://phabricator.services.mozilla.com/D261942
2025-08-27 11:22:00 +00:00
agoloman db150f25f2 Revert (Bug 1981187, Bug 1981225) - for causing build bustages RenderBundle.cpp.
This reverts commit cb3f1a84bb.

Revert "Bug 1981225 - Consolidate ID-related logic in `ObjectBase`. r=webgpu-reviewers,ErichDonGubler"

This reverts commit 793a7e81db.
2025-08-26 14:12:22 +00:00
Teodor Tanasoaia 793a7e81db Bug 1981225 - Consolidate ID-related logic in ObjectBase. r=webgpu-reviewers,ErichDonGubler
Differential Revision: https://phabricator.services.mozilla.com/D261942
2025-08-26 13:23:27 +00:00
agoloman 167b30ae21 Revert (Bug 1981187, Bug 1981225)- for causing build bustages @RefPtr.h.
This reverts commit 5fb5283ac4.

Revert "Bug 1981225 - Consolidate ID-related logic in `ObjectBase`. r=webgpu-reviewers,ErichDonGubler"

This reverts commit 2d0cd2975f.
2025-08-26 11:18:12 +00:00
Teodor Tanasoaia 2d0cd2975f Bug 1981225 - Consolidate ID-related logic in ObjectBase. r=webgpu-reviewers,ErichDonGubler
Differential Revision: https://phabricator.services.mozilla.com/D261942
2025-08-26 10:07:28 +00:00
Jamie Nicol c6206cdfd8 Bug 1983593 - Import direct3d video frames directly into wgpu for external textures. r=webgpu-reviewers,teoxoy
When importing an external texture in the content process, call
BuildSurfaceDescriptorGPUVideoOrBuffer() instead of
BuildSurfaceDescriptorBuffer(), in order to avoid a readback of GPUVideo
images into a shmem.

In the GPU process, handle GPUVideo surface descriptors. For Tnull_t, if
the remote texture host is a BufferTextureHost we can use the existing
CreateFromBufferDesc() path to create the required wgpu textures. For
TSurfaceDescriptorD3D10 and TSurfaceDescriptorDXGIYCbCr we add new paths
to import the textures directly into wgpu via their shared
handles. SurfaceDescriptorDXGIYCbCr always requires 3 textures and
views: for Y, Cb, and Cr planes respectively. SurfaceDescriptorD3D10 can
come in a variety of formats, which we attempt to handle.

If a CompositeProcessFencesHolderId is provided we must ensure we wait
on the appropriate write fence prior to reading from the texture. To
ensure this occurs, we make the ExternalTextureSourceHost hold on to its
fences holder ID. When submitting command buffers, we pass the list of
used external texture sources to the host side, then on the host side
for each source we call OnBeforeQueueSubmit(). This obtains the write
fence's shared handle and the value which must be waited for from the
CompositeProcessD3D11FencesHolderMap, then imports the fence from the
shared handle and inserts a wait for the specified value into the
command queue.

If available, we request wgpu's TEXTURE_FORMAT_NV12,
TEXTURE_FORMAT_P010, and TEXTURE_FORMAT_16BIT_NORM features. The first
is required for NV12 format textures, and the latter 2 are required for
P010. If unavailable, we will gracefully fail to create these textures
but other content will continue to work. It would be surprising,
however, if the decoder were to provide us with textures in these
formats when they are not supported.

Differential Revision: https://phabricator.services.mozilla.com/D261424
2025-08-21 23:32:55 +00:00
agoloman f76adaf46c Revert "Bug 1983593 - Import direct3d video frames directly into wgpu for external textures. r=webgpu-reviewers,teoxoy" for causing build bustages @ExternalTexture.cpp.
This reverts commit 83147dd2e2.
2025-08-21 14:59:23 +00:00
Jamie Nicol 83147dd2e2 Bug 1983593 - Import direct3d video frames directly into wgpu for external textures. r=webgpu-reviewers,teoxoy
When importing an external texture in the content process, call
BuildSurfaceDescriptorGPUVideoOrBuffer() instead of
BuildSurfaceDescriptorBuffer(), in order to avoid a readback of GPUVideo
images into a shmem.

In the GPU process, handle GPUVideo surface descriptors. For Tnull_t, if
the remote texture host is a BufferTextureHost we can use the existing
CreateFromBufferDesc() path to create the required wgpu textures. For
TSurfaceDescriptorD3D10 and TSurfaceDescriptorDXGIYCbCr we add new paths
to import the textures directly into wgpu via their shared
handles. SurfaceDescriptorDXGIYCbCr always requires 3 textures and
views: for Y, Cb, and Cr planes respectively. SurfaceDescriptorD3D10 can
come in a variety of formats, which we attempt to handle.

If a CompositeProcessFencesHolderId is provided we must ensure we wait
on the appropriate write fence prior to reading from the texture. To
ensure this occurs, we make the ExternalTextureSourceHost hold on to its
fences holder ID. When submitting command buffers, we pass the list of
used external texture sources to the host side, then on the host side
for each source we call OnBeforeQueueSubmit(). This obtains the write
fence's shared handle and the value which must be waited for from the
CompositeProcessD3D11FencesHolderMap, then imports the fence from the
shared handle and inserts a wait for the specified value into the
command queue.

If available, we request wgpu's TEXTURE_FORMAT_NV12,
TEXTURE_FORMAT_P010, and TEXTURE_FORMAT_16BIT_NORM features. The first
is required for NV12 format textures, and the latter 2 are required for
P010. If unavailable, we will gracefully fail to create these textures
but other content will continue to work. It would be surprising,
however, if the decoder were to provide us with textures in these
formats when they are not supported.

Differential Revision: https://phabricator.services.mozilla.com/D261424
2025-08-21 13:27:18 +00:00
Jamie Nicol 25076c928d Bug 1982866 - Make WebGPU external texture support configurable via a pref and blocklistable. r=webgpu-reviewers,webidl,jimb,smaug
Adds pref dom.webgpu.external-texture.enabled, which is false by
default, to control whether external texture support is enabled.
Additionally, adds a gfx blocklist entry which can override the pref to
disable on platforms with known issues. Block on non-Windows for now.

When support is disabled, either via the pref or blocklist, ensure the
Device.importExternalTexture() function is hidden. Add an additional
check to the C++ implementation as a precaution.

When support is enabled, enable the required wgpu feature.

Differential Revision: https://phabricator.services.mozilla.com/D260991
2025-08-14 16:49:46 +00:00
Sandor Molnar 93da9cf402 Revert "Bug 1982866 - Make WebGPU external texture support configurable via a pref and blocklistable. r=webgpu-reviewers,webidl,jimb,smaug" for causing build bustages @ gfxPlatform.cpp
This reverts commit 7b08643650.
2025-08-14 14:33:30 +00:00
Jamie Nicol 7b08643650 Bug 1982866 - Make WebGPU external texture support configurable via a pref and blocklistable. r=webgpu-reviewers,webidl,jimb,smaug
Adds pref dom.webgpu.external-texture.enabled, which is false by
default, to control whether external texture support is enabled.
Additionally, adds a gfx blocklist entry which can override the pref to
disable on platforms with known issues. Block on non-Windows for now.

When support is disabled, either via the pref or blocklist, ensure the
Device.importExternalTexture() function is hidden. Add an additional
check to the C++ implementation as a precaution.

When support is enabled, enable the required wgpu feature.

Differential Revision: https://phabricator.services.mozilla.com/D260991
2025-08-14 11:44:46 +00:00
agoloman 337cd46861 Revert "Bug 1982866 - Make WebGPU external texture support configurable via a pref and blocklistable. r=webgpu-reviewers,webidl,jimb,smaug" for causing mass failures.
This reverts commit f2fee9b8b4.
2025-08-13 22:38:33 +00:00
Jamie Nicol f2fee9b8b4 Bug 1982866 - Make WebGPU external texture support configurable via a pref and blocklistable. r=webgpu-reviewers,webidl,jimb,smaug
Adds pref dom.webgpu.external-texture.enabled, which is false by
default, to control whether external texture support is enabled.
Additionally, adds a gfx blocklist entry which can override the pref to
disable on platforms with known issues. Block on non-Windows for now.

When support is disabled, either via the pref or blocklist, ensure the
Device.importExternalTexture() function is hidden. Add an additional
check to the C++ implementation as a precaution.

When support is enabled, enable the required wgpu feature.

Differential Revision: https://phabricator.services.mozilla.com/D260991
2025-08-13 21:48:19 +00:00
Jamie Nicol 2326fa335e Bug 1979100 - Implement WebGPU Device.importExternalTexture(). r=webgpu-reviewers,webidl,smaug,teoxoy
First we create an ExternalTextureSource using the infrastructure added
in the previous patch, and from that we create an ExternalTexture.

In order to create the external texture the client side passes an
`ExternalTextureDescriptor` to the host side, which encodes the
source as a optional ID. On the host side additional information is
queried from the ExternalTextureSourceHost, which is combined with the
`ExternalTextureDescriptor` provided by the client in order to call
wgpu's create_external_texture().

If there was an error importing the source on the client side the
source ID will be `None`. If there was an error importing the source
on the host side, it will return an empty slice of texture views as its
planes. In either case this indicates we should propagate the error
state to the external texture.

Subsequent patches will allow for creating multiple external textures
from the same source, and returning previously imported external
textures rather than always creating a new one.

Note that for now we have not requested Features::EXTERNAL_TEXTURE when
creating the wgpu device, meaning that any attempts to actually create
an external texture will result in an error.

Differential Revision: https://phabricator.services.mozilla.com/D259820
2025-08-11 12:34:31 +00:00
Jamie Nicol 07684da9a2 Bug 1979100 - Add infrastructure for importing video frames into wgpu textures. r=webgpu-reviewers,webidl,teoxoy,smaug
In order to support webgpu's GPUExternalTexture we must first be able
to import video frames into wgpu. To do so we introduce the concept of
an external texture "source". This consists of between 1 and 3
textures and texture views, in order to support single-plane RGBA or
multiplanar YCbCr data. The source is implemented as a distinct
concept from the external texture itself so that multiple external
textures can be created from the same source.

An external texture source has both a client-side and host-side
representation. The client side is responsible for managing the
lifecycle of the host side. It obtains a SurfaceDescriptor from the
current layers::Image of the video element or frame it was imported
from, and sends this to the host side. The host side is responsible
for creating the wgpu Textures and TextureViews it needs from the
SurfaceDescriptor. It also holds various pieces of information derived
from the imported frames that will be required to construct the
wgpu::ExternalTextureDescriptor required to create a
wgpu::ExternalTexture.

For now, we always call Image::BuildSurfaceDescriptorBuffer to obtain
the surface descriptor, and therefore only have to handle
SurfaceDescriptorBuffers. In subsequent patches we will handle
GPUVideo surface descriptors to directly import hardware decoded video
frames without requiring a readback.

Differential Revision: https://phabricator.services.mozilla.com/D259819
2025-08-11 12:34:27 +00:00
Jamie Nicol 5e6a52fd10 Bug 1979100 - Move ErrorBuffer declaration to WebGPUParent.h. r=webgpu-reviewers,teoxoy
Upcoming patches implementing WebGPU external textures will perform
work on the parent side and require the ability to raise errors, but
we wish to keep the implementation in a separate file.

Differential Revision: https://phabricator.services.mozilla.com/D259818
2025-08-11 12:34:23 +00:00
Cosmin Sabou 8fbe756648 Revert "Bug 1979100 - Add infrastructure for importing video frames into wgpu textures. r=webgpu-reviewers,webidl,teoxoy,smaug" for causing build bustages on ExternalTexture.h
This reverts commit 8c62114465.

Revert "Bug 1979100 - Move ErrorBuffer declaration to WebGPUParent.h. r=webgpu-reviewers,teoxoy"

This reverts commit 02e5b2a7d7.
2025-08-09 21:23:24 +00:00
Narcis Beleuzu b5c83e2ac1 Revert "Bug 1979100 - Implement WebGPU Device.importExternalTexture(). r=webgpu-reviewers,webidl,smaug,teoxoy" for causing bustages on Utility.cpp
This reverts commit 0bb8155417.
2025-08-09 14:06:24 +00:00
Jamie Nicol 0bb8155417 Bug 1979100 - Implement WebGPU Device.importExternalTexture(). r=webgpu-reviewers,webidl,smaug,teoxoy
First we create an ExternalTextureSource using the infrastructure added
in the previous patch, and from that we create an ExternalTexture.

In order to create the external texture the client side passes an
`ExternalTextureDescriptor` to the host side, which encodes the
source as a optional ID. On the host side additional information is
queried from the ExternalTextureSourceHost, which is combined with the
`ExternalTextureDescriptor` provided by the client in order to call
wgpu's create_external_texture().

If there was an error importing the source on the client side the
source ID will be `None`. If there was an error importing the source
on the host side, it will return an empty slice of texture views as its
planes. In either case this indicates we should propagate the error
state to the external texture.

Subsequent patches will allow for creating multiple external textures
from the same source, and returning previously imported external
textures rather than always creating a new one.

Note that for now we have not requested Features::EXTERNAL_TEXTURE when
creating the wgpu device, meaning that any attempts to actually create
an external texture will result in an error.

Differential Revision: https://phabricator.services.mozilla.com/D259820
2025-08-09 09:45:04 +00:00
Jamie Nicol 8c62114465 Bug 1979100 - Add infrastructure for importing video frames into wgpu textures. r=webgpu-reviewers,webidl,teoxoy,smaug
In order to support webgpu's GPUExternalTexture we must first be able
to import video frames into wgpu. To do so we introduce the concept of
an external texture "source". This consists of between 1 and 3
textures and texture views, in order to support single-plane RGBA or
multiplanar YCbCr data. The source is implemented as a distinct
concept from the external texture itself so that multiple external
textures can be created from the same source.

An external texture source has both a client-side and host-side
representation. The client side is responsible for managing the
lifecycle of the host side. It obtains a SurfaceDescriptor from the
current layers::Image of the video element or frame it was imported
from, and sends this to the host side. The host side is responsible
for creating the wgpu Textures and TextureViews it needs from the
SurfaceDescriptor. It also holds various pieces of information derived
from the imported frames that will be required to construct the
wgpu::ExternalTextureDescriptor required to create a
wgpu::ExternalTexture.

For now, we always call Image::BuildSurfaceDescriptorBuffer to obtain
the surface descriptor, and therefore only have to handle
SurfaceDescriptorBuffers. In subsequent patches we will handle
GPUVideo surface descriptors to directly import hardware decoded video
frames without requiring a readback.

Differential Revision: https://phabricator.services.mozilla.com/D259819
2025-08-09 09:45:00 +00:00
Jamie Nicol 02e5b2a7d7 Bug 1979100 - Move ErrorBuffer declaration to WebGPUParent.h. r=webgpu-reviewers,teoxoy
Upcoming patches implementing WebGPU external textures will perform
work on the parent side and require the ability to raise errors, but
we wish to keep the implementation in a separate file.

Differential Revision: https://phabricator.services.mozilla.com/D259818
2025-08-09 09:44:57 +00:00
Teodor Tanasoaia c36d86d390 Bug 1979701 - Update wgpu to revision 36ae215e9cfb0defb94f889f55edc18c5b87f150. r=webgpu-reviewers,supply-chain-reviewers,ErichDonGubler
Differential Revision: https://phabricator.services.mozilla.com/D258950
2025-08-06 15:05:38 +00:00
Teodor Tanasoaia 3ba482a279 Bug 1975714 - Assert that the IDs in server messages are the same as the ones the WebGPUChild actor expects. r=webgpu-reviewers,nical
Differential Revision: https://phabricator.services.mozilla.com/D258257
2025-07-25 16:34:51 +00:00
Teodor Tanasoaia 1dbaf92aec Bug 1975714 - Use FfiSlice in remaining places. r=webgpu-reviewers,ErichDonGubler
Differential Revision: https://phabricator.services.mozilla.com/D257748
2025-07-25 16:34:37 +00:00
Teodor Tanasoaia 5fe58ae767 Bug 1975714 - Use an opaque pointer for WebGPUParent. r=webgpu-reviewers,ErichDonGubler
Differential Revision: https://phabricator.services.mozilla.com/D257747
2025-07-25 16:34:33 +00:00
Teodor Tanasoaia 64f9bdcddc Bug 1975714 - Remove unneeded #[allow(dead_code)]. r=webgpu-reviewers,ErichDonGubler
Differential Revision: https://phabricator.services.mozilla.com/D257746
2025-07-25 16:34:30 +00:00
Sandor Molnar 752f8e9d7d Revert "Bug 1975714 - Promote tests out of backlog. r=webgpu-reviewers,nical" for causing build bustages @ ComputePassEncoder.cpp
This reverts commit 22fb6f2691.

Revert "Bug 1975714 - Update backlog expectations. r=webgpu-reviewers,nical"

This reverts commit 72b4644a09.

Revert "Bug 1975714 - Use `MOZ_CAN_RUN_SCRIPT_BOUNDARY` for `reportCompilationMessagesToConsole`. r=webgpu-reviewers,ErichDonGubler"

This reverts commit 4394625f93.

Revert "Bug 1975714 - Assert that the IDs in server messages are the same as the ones the `WebGPUChild` actor expects. r=webgpu-reviewers,nical"

This reverts commit 5ce8cf9b12.

Revert "Bug 1978369 - Stop leaking queues. r=webgpu-reviewers,nical"

This reverts commit 32ab875eab.

Revert "Bug 1975714 - Move remaining ID creation/destruction into resource creation/destruction functions. r=webgpu-reviewers,nical"

This reverts commit 122e1a6529.

Revert "Bug 1975714 - Replace uses of `make_slice` with  `FfiSlice`. r=webgpu-reviewers,ErichDonGubler"

This reverts commit 62add844bf.

Revert "Bug 1975714 - Use `FfiSlice` in remaining places. r=webgpu-reviewers,ErichDonGubler"

This reverts commit 3812af72dd.

Revert "Bug 1975714 - Use an opaque pointer for `WebGPUParent`. r=webgpu-reviewers,ErichDonGubler"

This reverts commit bf83ea6553.

Revert "Bug 1975714 - Remove unneeded `#[allow(dead_code)]`. r=webgpu-reviewers,ErichDonGubler"

This reverts commit a84b40d4b8.

Revert "Bug 1977861 - Stop leaking BGLs returned by GPUPipelineBase.getBindGroupLayout(). r=webgpu-reviewers,ErichDonGubler"

This reverts commit b5ec027bf9.

Revert "Bug 1975714 - Turn function pointers into extern fns. r=webgpu-reviewers,nical"

This reverts commit d3681b7012.

Revert "Bug 1975714 - Make sure to resolve/reject all pending promises in `ClearActorState`. r=webgpu-reviewers,nical"

This reverts commit 2f607174ce.

Revert "Bug 1975714 - Do not immediately resolve the lost promise on `device.destroy()`. r=webgpu-reviewers,nical"

This reverts commit 1c10e1f698.

Revert "Bug 1960399 - Reject async pipeline creation with `GPUPipelineError`. r=webgpu-reviewers,nical"

This reverts commit ee47165e63.

Revert "Bug 1975714 - Correct comments. r=webgpu-reviewers,nical"

This reverts commit 9e0aabda0e.
2025-07-24 18:02:12 +00:00
Teodor Tanasoaia 5ce8cf9b12 Bug 1975714 - Assert that the IDs in server messages are the same as the ones the WebGPUChild actor expects. r=webgpu-reviewers,nical
Differential Revision: https://phabricator.services.mozilla.com/D258257
2025-07-24 17:05:49 +00:00
Teodor Tanasoaia 3812af72dd Bug 1975714 - Use FfiSlice in remaining places. r=webgpu-reviewers,ErichDonGubler
Differential Revision: https://phabricator.services.mozilla.com/D257748
2025-07-24 17:05:34 +00:00
Teodor Tanasoaia bf83ea6553 Bug 1975714 - Use an opaque pointer for WebGPUParent. r=webgpu-reviewers,ErichDonGubler
Differential Revision: https://phabricator.services.mozilla.com/D257747
2025-07-24 17:05:30 +00:00
Teodor Tanasoaia a84b40d4b8 Bug 1975714 - Remove unneeded #[allow(dead_code)]. r=webgpu-reviewers,ErichDonGubler
Differential Revision: https://phabricator.services.mozilla.com/D257746
2025-07-24 17:05:26 +00:00
Jamie Nicol b20a20439a Bug 1975457 - Rename webgpu::ExternalTexture to SharedTexture. r=webgpu-reviewers,nical
An ExternalTexture is a texture that is created and owned by gecko,
but shared with the webgpu implementation. It is used for webgpu
presentation. While this name describes the class well, it is
confusing due to webgpu having an entirely unrelated concept of
GPUExternalTexture.

This patch renames ExternalTexture, and all of its subclasses and
uses, to SharedTexture. This still describes the purpose accurately,
and has similarities to gl::SharedSurface which serves a similar
purpose for our webgl implementation.

Differential Revision: https://phabricator.services.mozilla.com/D255976
2025-07-03 19:02:24 +00:00