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

209 Коммитов

Автор SHA1 Сообщение Дата
Jim Blandy 5527ada686 Bug 1862815 - Update `wgpu` to revision 34e947de4b3e0b0d6b0e2f40cede926467ea9f1e. r=webgpu-reviewers,ErichDonGubler
Differential Revision: https://phabricator.services.mozilla.com/D192651
2023-11-05 22:33:48 +00:00
Jim Blandy bd70a71e6c Bug 1862689 - Update `wgpu` to revision 49b7ec97c164bac9ee877f45cdd806fbefecc5a4. r=webgpu-reviewers,ErichDonGubler
Depends on D192648

Differential Revision: https://phabricator.services.mozilla.com/D192649
2023-11-04 00:15:04 +00:00
Nicolas Silva 480948101a Bug 1856371 - Reimplement Pipeline::getBindGroupLayout. r=webgpu-reviewers,ErichDonGubler
The new implementation is simpler: It just forwards messages to wgpu on the parent process using the usual mechanism. It also better aligns with the spec because it works whether or not the pipeline has an implicit layout (current implementation is only implemented for implicit layouts). And finally it fixes a bug in the current implementation causing undefined behavior due to zero IDs being cast into NonZero rust types at the ffi boundary.

Differential Revision: https://phabricator.services.mozilla.com/D189942
2023-10-27 13:06:18 +00:00
Teodor Tanasoaia 19644885c8 Bug 1859999 - Update `wgpu` to revision 75989192a9c8f70893882ce0f4373ac217d380c3. r=webgpu-reviewers,supply-chain-reviewers,nical
Differential Revision: https://phabricator.services.mozilla.com/D191400
2023-10-25 13:54:06 +00:00
sotaro efef3754f0 Bug 1845853 - Use the same DXGI adapter as WebRender with DX12 r=webgpu-reviewers,nical
By selecting an adapter with the same LUID as the compositor device, the same adapter is selected as the compositor device used by WebRender.

Differential Revision: https://phabricator.services.mozilla.com/D190905
2023-10-25 05:14:34 +00:00
sotaro e8b67b7765 Bug 1856787 - Add a capability to present WebGPU without readback on Windows r=webgpu-reviewers,nical
For presenting WebGPU without readback, wgpu does rendering to ExternalTexture. Then the ExternalTexture is pushed to RemoteTextureMap for present.

With DX12, ExternalTextureD3D11 is implemented for gecko side implementation. ExternalTextureWgpu holds necessary resource that is necessary by wgpu. ExternalTextureWgpu is created and destroyed by gecko side's ExternalTexture.

Presenting current texture starts at CanvasContext::SwapChainPresent(). CanvasContext::SwapChainPresent() posts current texture for present. And the current texture is set invalid, since the texture is going to be posted to WebRender. Next CanvasContext::GetCurrentTexture() call creates a new texture of swap chain.

WebGPUParent::RecvSwapChainPresent() receives present request. It pushes to RemoteTextureMap for presenting.

TextureRaw is recycled with ExternalTexture recycling.

Differential Revision: https://phabricator.services.mozilla.com/D190249
2023-10-24 04:04:07 +00:00
Brad Werth 872b8a500d Bug 1838693 Part 3: Make GPUDevice::Destroy() trigger wgpu device_destroy, then device_drop. r=webgpu-reviewers,nical
This treats destroy as a 2-step process: wait on the destroy, then drop.

Differential Revision: https://phabricator.services.mozilla.com/D190238
2023-10-16 15:32:00 +00:00
Brad Werth 52d53561f0 Bug 1838693 Part 1: Stub in 'lose the device' and trigger it on device lost errors. r=webgpu-reviewers,nical
This creates a WebGPUParent::LoseDevice entry point, which informs the
WebGPUChild that the device has been lost. The child side is largely a
stub, as a later part will rationalize the handling of the device.lost
promise in the child.

This also expands ErrorBufferType with a DeviceLost value. The
LoseDevice function is triggered for any error where webgpu_bindings
HasErrorBufferType error_type returns ErrorBufferType::DeviceLost.

Differential Revision: https://phabricator.services.mozilla.com/D188388
2023-10-16 15:31:59 +00:00
Nicolas Silva 83829fef12 Bug 1858683 - Update `wgpu` to revision 858d7d590ef9ebfe1b91f6f0925aacde15cce714. r=webgpu-reviewers,supply-chain-reviewers,ErichDonGubler
Differential Revision: https://phabricator.services.mozilla.com/D190804
2023-10-16 09:44:45 +00:00
Nicolas Silva faf195158d Bug 1857243 - Update `wgpu` to revision 1495e159faf721cbf87a0634157682f454a963fb. r=webgpu-reviewers,supply-chain-reviewers,ErichDonGubler
Differential Revision: https://phabricator.services.mozilla.com/D190208
2023-10-05 20:22:27 +00:00
Sylvestre Ledru 4c29c24344 Bug 1856530 - run file-whitespace on toml files r=linter-reviewers,Standard8
Differential Revision: https://phabricator.services.mozilla.com/D189896
2023-10-03 09:22:18 +00:00
Erich Gubler 000aebbb09 Bug 1855834: build(webgpu): bump `wgpu` to 9a76c483da4891fb7046c579e36d7c54bdb0b251 r=webgpu-reviewers,supply-chain-reviewers,nical
Differential Revision: https://phabricator.services.mozilla.com/D189583
2023-10-02 18:53:08 +00:00
sotaro 7f866f3c85 Bug 1854718 - Remove unnecessary debug_assert from Global::device_action() r=gfx-reviewers,lsalzman
Bug 1852485 added unnecessary debug_assert. It needs to be removed. Since it causes false alarm in debug build.

Differential Revision: https://phabricator.services.mozilla.com/D189029
2023-09-26 05:42:22 +00:00
Cristian Tuns 8a6e08bf55 Backed out changeset 4c02a30e02aa (bug 1854718) for causing build bustages with Error 101 CLOSED TREE 2023-09-25 05:32:06 -04:00
sotaro 4211204aff Bug 1854718 - Remove unnecessary debug_assert from Global::device_action() r=gfx-reviewers,lsalzman
Bug 1852485 added unnecessary debug_assert. It needs to be removed. Since it causes false alarm in debug build.

Differential Revision: https://phabricator.services.mozilla.com/D189029
2023-09-25 08:53:11 +00:00
Nicolas Silva 83a0c48e36 Bug 1853952 - Add a pref to assert that wgpu tests run on hardware. r=webgpu-reviewers,ErichDonGubler
Differential Revision: https://phabricator.services.mozilla.com/D188726
2023-09-25 08:51:28 +00:00
Nicolas Silva 5a050d7c41 Bug 1854615 - Update `wgpu` to revision 7e0d6c971f900f6a8f01a9de9c41f7894164a82c. r=webgpu-reviewers,supply-chain-reviewers,teoxoy
Differential Revision: https://phabricator.services.mozilla.com/D188978
2023-09-25 08:39:44 +00:00
Nicolas Silva d135870658 Bug 1853105 - Update `wgpu` to revision 7fea9e934efd8d5dc03b9aa3e06b775c1ac4a23e. r=webgpu-reviewers,supply-chain-reviewers,ErichDonGubler
Differential Revision: https://phabricator.services.mozilla.com/D188214
2023-09-20 07:32:45 +00:00
sotaro fa82ebd5e1 Bug 1852485 - Present WebGPU by using DX11 texture in swap chain with readback on Windows r=webgpu-reviewers,nical
The change is preparation for Bug 1843891.
Current gecko uses a internal texture for SwapChain's texture. This bug changes as to use external dx11 texture for WebGPU dx12 backend on Windows.

WebGPUParent allocates dx11 texture for SwapChain's texture of dx12 backend WebGPU. wgpu uses the dx11 texture as ID3D12Resource. The readback for presenting to WebRender still exists.
The change handles only RBGA format.

Differential Revision: https://phabricator.services.mozilla.com/D187870
2023-09-17 18:42:07 +00:00
Nicolas Silva cd614843dd Bug 1853140 - Only use wgpu's dx12 backend (on windows). r=webgpu-reviewers,jimb
Differential Revision: https://phabricator.services.mozilla.com/D188244
2023-09-15 17:52:40 +00:00
Cosmin Sabou 3290ce6472 Backed out changeset ba49d9bdc665 (bug 1852485) for causing non-unified build bustages at ExternalTextureD3D11.cpp. 2023-09-15 16:21:08 +03:00
sotaro a8dfa5bebe Bug 1852485 - Present WebGPU by using DX11 texture in swap chain with readback on Windows r=webgpu-reviewers,nical
The change is preparation for Bug 1843891.
Current gecko uses a internal texture for SwapChain's texture. This bug changes as to use external dx11 texture for WebGPU dx12 backend on Windows.

WebGPUParent allocates dx11 texture for SwapChain's texture of dx12 backend WebGPU. wgpu uses the dx11 texture as ID3D12Resource. The readback for presenting to WebRender still exists.
The change handles only RBGA format.

Differential Revision: https://phabricator.services.mozilla.com/D187870
2023-09-15 11:14:51 +00:00
Nicolas Silva 0386470d2c Bug 1852723 - Reduce the per-device descriptor heap allocation in the dx12 backend. r=gfx-reviewers,bradwerth
Differential Revision: https://phabricator.services.mozilla.com/D187972
2023-09-12 15:15:22 +00:00
Erich Gubler 8c1ed9c9dc Bug 1851721: build(webgpu): bump `wgpu` to 332cd0325da52675432830870584ec9766679c34 r=taskgraph-reviewers,supply-chain-reviewers,jmaher
Differential Revision: https://phabricator.services.mozilla.com/D187521
2023-09-11 14:28:56 +00:00
Natalia Csoregi 47d4ddc1c9 Backed out 2 changesets (bug 1848956) for causing increasingly high webgpu failures on cts.https.html. CLOSED TREE
Backed out changeset fbbf71ea5127 (bug 1848956)
Backed out changeset 3dd540c62c79 (bug 1848956)
2023-08-24 15:10:23 +03:00
Nicolas Silva ac7bc41315 Bug 1848956 - Update `wgpu` to revision 57874e5c540330c8183e19ee87654cf24bb5c250. r=webgpu-reviewers,glandium,supply-chain-reviewers,ErichDonGubler
***
fixup

Differential Revision: https://phabricator.services.mozilla.com/D186461
2023-08-24 11:01:46 +00:00
Stanca Serban 8aa4e033a1 Backed out changeset bc91ede31572 (bug 1848956) for causing webgpu failures. 2023-08-22 20:57:58 +03:00
Nicolas Silva a8d0e26d58 Bug 1848956 - Update `wgpu` to revision 57874e5c540330c8183e19ee87654cf24bb5c250. r=webgpu-reviewers,glandium,supply-chain-reviewers,ErichDonGubler
***
fixup

Differential Revision: https://phabricator.services.mozilla.com/D186461
2023-08-22 14:03:58 +00:00
Erich Gubler 4cf50a7114 Bug 1814088: typo(webgpu): `server.rs`: s/the the/the/ r=webgpu-reviewers,nical
Differential Revision: https://phabricator.services.mozilla.com/D186176
2023-08-17 14:34:43 +00:00
Erich Gubler fbcf43a0af Bug 1814088: feat(webgpu): implement `GPUQueue.onSubmittedWorkDone` r=webgpu-reviewers,webidl,smaug,nical
Differential Revision: https://phabricator.services.mozilla.com/D186175
2023-08-17 14:34:42 +00:00
Nicolas Silva 815076dc9e Bug 1846661 - Restrict the max buffer size and texture extents more explictly. r=webgpu-reviewers,teoxoy
With this, adapters will pretend to have the limit that we actually enforce under the hood regardless of reported device capabilities.

Differential Revision: https://phabricator.services.mozilla.com/D186449
2023-08-17 13:23:01 +00:00
Erich Gubler 5bde404705 Bug 1847597: build(webgpu): bump `wgpu` to 7c6b85756237f77bfe8d6231dfc7a1412ff662b6 r=webgpu-reviewers,supply-chain-reviewers,nical
Differential Revision: https://phabricator.services.mozilla.com/D185580
2023-08-09 05:41:35 +00:00
Nicolas Silva c8a91b557d Bug 1843296 - Better handle shm allocation failure when creating buffers. r=gfx-reviewers,ErichDonGubler
Differential Revision: https://phabricator.services.mozilla.com/D184220
2023-08-08 10:32:09 +00:00
Narcis Beleuzu 72983cc276 Backed out changeset 969534e11452 (bug 1843296) for webgpu crash 2023-08-08 01:14:00 +03:00
Nicolas Silva d7317a4d43 Bug 1843296 - Better handle shm allocation failure when creating buffers. r=gfx-reviewers,ErichDonGubler
Differential Revision: https://phabricator.services.mozilla.com/D184220
2023-08-07 16:43:56 +00:00
Erich Gubler 49dcf1005c Bug 1846558: build(webgpu): bump `wgpu` to f71a1bc736fde37509262ca03e91d8f56a13aeb5 r=webgpu-reviewers,supply-chain-reviewers,jimb
Note that while WGPU's adapter option for a power preference has added
a new `None` variant as the new default, we preserve previous behavior
of specifying `LowPower` by default. This is because we're not sure we
want this behavior yet. See
[[https://bugzilla.mozilla.org/show_bug.cgi?id=1841840#c3 | bug 1841840,
comment 3]].

Depends on D185058

Differential Revision: https://phabricator.services.mozilla.com/D185059
2023-08-07 15:40:14 +00:00
Nicolas Silva be3134cab6 Bug 1844286 - Update `wgpu` to revision 1161a22f4fbb4fc204eb06f2ac4243f83e0e980d. r=webgpu-reviewers,ErichDonGubler
Depends on D183958

Differential Revision: https://phabricator.services.mozilla.com/D183959
2023-07-19 22:25:04 +00:00
Nicolas Silva 3b09beb54f Bug 1844012 - Update `wgpu` to revision e4eb5b38ecb5646ec354c16ff1128f7e49c0f020. r=webgpu-reviewers,jimb
Depends on D183855

Differential Revision: https://phabricator.services.mozilla.com/D183856
2023-07-19 21:36:48 +00:00
Mike Hommey 7c063cf058 Bug 1844000 - Update parking-lot to 0.12.1. r=emilio,supply-chain-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D183825
2023-07-19 20:16:02 +00:00
Erich Gubler a30d79aaa0 Bug 1843641: fix `wgpu_bindings` formatting r=webgpu-reviewers,jgilbert
Differential Revision: https://phabricator.services.mozilla.com/D183612
2023-07-17 19:13:18 +00:00
Erich Gubler 0202b5a006 Bug 1841142: fix(webgpu): don't return an error for `GPUBuffer.unmap` when `this` is invalid r=webgpu-reviewers,nical
Differential Revision: https://phabricator.services.mozilla.com/D183053
2023-07-14 17:14:44 +00:00
Erich Gubler db19596d03 Bug 1840179: refactor(webgpu): move `gfx_bindings::server::ErrorBuffer` to `error` module r=webgpu-reviewers,jgilbert
Differential Revision: https://phabricator.services.mozilla.com/D182103
2023-07-12 22:17:00 +00:00
Erich Gubler 5f9ae2f535 Bug 1840179: refactor(webgpu): align Rust `ErrorBuffer` member names w/ C++ definition r=webgpu-reviewers,teoxoy
Differential Revision: https://phabricator.services.mozilla.com/D182102
2023-07-12 22:16:59 +00:00
Erich Gubler 9d1f31bca8 Bug 1840179: refactor(webgpu): inline `ErrorBuffer::init_str` r=webgpu-reviewers,jgilbert
Differential Revision: https://phabricator.services.mozilla.com/D182101
2023-07-12 22:16:59 +00:00
Erich Gubler ec84c74238 Bug 1840179: refactor(webgpu): clarify: `ErrorBuffer` message is what gets truncated r=webgpu-reviewers,jgilbert
Differential Revision: https://phabricator.services.mozilla.com/D182099
2023-07-12 22:16:58 +00:00
Erich Gubler 9dfc03a1ba Bug 1840179: fix(webgpu): classify WGPU errors into `GPUError`s r=webgpu-reviewers,jgilbert
Differential Revision: https://phabricator.services.mozilla.com/D181912
2023-07-12 22:16:58 +00:00
Teodor Tanasoaia 0c97a80be1 Bug 1838493 - Update `wgpu` to revision dcad7dfba92dd85c3ca21bb553a61834e01b04f5. r=webgpu-reviewers,gfx-reviewers,supply-chain-reviewers,glandium,ErichDonGubler
Bug 1838493 - Update `foreign-types`, `core-graphics` and `core-text`. r=#gfx-reviewers

Bug 1838493 - Vet `wgpu` and `naga` commits. r=#supply-chain-reviewers

Bug 1838493 - Vendor `wgpu` changes. r=#webgpu-reviewers

Differential Revision: https://phabricator.services.mozilla.com/D182578
2023-07-07 21:39:24 +00:00
Cristian Tuns 80b3affd34 Backed out changeset 8b23c0858427 (bug 1838493) for causing webrender bustages CLOSED TREE 2023-07-07 11:08:31 -04:00
Teodor Tanasoaia a25d2ea415 Bug 1838493 - Update `wgpu` to revision dcad7dfba92dd85c3ca21bb553a61834e01b04f5. r=webgpu-reviewers,gfx-reviewers,supply-chain-reviewers,glandium,ErichDonGubler
Bug 1838493 - Update `foreign-types`, `core-graphics` and `core-text`. r=#gfx-reviewers

Bug 1838493 - Vet `wgpu` and `naga` commits. r=#supply-chain-reviewers

Bug 1838493 - Vendor `wgpu` changes. r=#webgpu-reviewers

Differential Revision: https://phabricator.services.mozilla.com/D182578
2023-07-07 14:38:12 +00:00
Cristian Tuns 58ffc7aed3 Backed out changeset f4849b16468c (bug 1838493) for causing webrender bustages. CLOSED TREE 2023-07-07 08:42:49 -04:00