Closed Bug 1856371 Opened 9 months ago Closed 8 months ago

Correctly implement Pipeline::GetBindGroupLayout

Categories

(Core :: Graphics: WebGPU, task, P1)

task

Tracking

()

RESOLVED FIXED
121 Branch
Tracking Status
firefox121 --- fixed

People

(Reporter: nical, Assigned: nical)

References

Details

Attachments

(1 file)

The current implementation only works when the pipeline has an implicit layout and when it fails it creates bind group layouts with invalid IDs which can domino into creating similarly invalid bind group layouts and using them causes undefined behavior.

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.

Depends on D189941

Depends on: 1857243
Depends on: 1859999
Pushed by nsilva@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/21cb54edc5f6
Reimplement Pipeline::getBindGroupLayout. r=webgpu-reviewers,ErichDonGubler
Status: NEW → RESOLVED
Closed: 8 months ago
Resolution: --- → FIXED
Target Milestone: --- → 121 Branch
Regressions: 1861985
Blocks: 1860826
Regressions: 1863107
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: