Repository navigation
Stop pipeline creation when Vulkan layout allocation fails - #846
Closed
monsterlag wants to merge 3 commits into
Closed
monsterlag wants to merge 3 commits into
monsterlag wants to merge 3 commits into
Conversation
Keep descriptor metadata and handles transactional, stop dependent pipeline work after allocation failures, and retain retryable state. Add driver-free actual-helper and caller regression checks. Assisted-by: Codex Co-Authored-By: Codex <noreply@openai.com>
Record the descriptor enum explicitly as uint64_t and use the existing production Windows CRT definition. Keep strict warnings and all fault assertions unchanged.
Owner
|
Closing to keep the queue clear — please rebase on current main and reopen; thanks! |
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.
The refreshed branch is published at 375bb4b. GitHub refused reopening this maintainer-closed PR with
Could not open the pull request; it still shows the older 5502fab head. The current-main review and checks below refer to the published 375bb4b branch, with hosted CI pending reopening.ensure_layoutignores both Vulkan creation results and can leave partiallyupdated descriptor metadata. Callers then continue into pipeline creation with a
missing layout. Create the handles and metadata transactionally, stop dependent
pipeline work on failure, destroy the newly owned descriptor-set layout when the
second creation fails, and allow a later retry. Log the actual
VkResultup toeight times per creation operation, followed by one suppression message.
Updated against main
b2765ba6through a normal merge. This preserves its expandedmesh-fallback push range and fallback push requirement, cached-compute
guarded_computepath, parallel cache reading and current CI registrations. Nocache ownership or worker-handoff policy changes are included.
Validation on the merged source:
MSVC-target Clang/VS2022 route and WSL Linux with GCC 13.3.
b2765ba6helper fails the authored descriptor-allocation negative.Successful API arguments match the current upstream helper, including
fallback/no-fallback push controls with no other push users.
vk_draw.cpptranslation unit compiled with the currentproduction flag structure and audited GNU-target compiler. This was an object
compile only; no renderer link, driver or game run.
The fixture executes cached workers serially and observes the actual early-return
blocks of draw/dispatch. It does not validate concurrent ownership, real memory
exhaustion or driver behavior. Refs #803 as diagnostic motivation; this does not
establish or claim to fix that report's cause. Hosted CI awaits publication.