D3D11On12: pass nullptr to transient ResidencySet::Open#57
Closed
vdwtanner wants to merge 1 commit into
Closed
Conversation
Contributor
Author
|
Closing -- D3D12TranslationLayer PR #114 pivoted to a no-API-change design per Jesse's review (microsoft/D3D12TranslationLayer#114 (comment)), so no consumer-side update is needed. The dependency this PR existed to track no longer exists. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
Consumer-side update to track the breaking signature change for
D3D12TranslationLayer::ResidencySet::Open()introduced in:See that PR for full root-cause analysis.
Change
D3D11On12::Device::UnwrapDXGIResource(device.cpp:1149) constructs a transientResidencySet, opens it on theMAX_VALID(transient) command-list slot, inserts one residency handle, closes, and submits — all in a single call frame on the same thread. The set is never visible toEndTrackingObject, so manager registration is pure overhead.Passing
nullptrfor the newResidencyManager*parameter opts this call site into the "no tracking, no locking" mode, matching its actual lifetime.Dependencies
D3D12TranslationLayer:masteruntil that lands and the submodule pointer here is bumped.Verification
Compile-clean build of
d3d11on12.dll(Debug x64) against the updatedD3D12TranslationLayerbranch. No matching live TAEF repro exists in this worktree for D3D11On12'sUnwrapDXGIResourcepath; the consumer change is mechanically identical to the D3D9On12 patch (same 1-line shape, samenullptrsemantics) and shares its test rationale.Pre-empted review questions
Behavior change at this call site? None — the transient set never had a real concurrent-destroy exposure;
nullptrjust removes the overhead the new tracking would otherwise add.Regression risk? None — mechanical 1-line change, same lock-free fast path as before.