Fix deadlock in GFXRECON_FORCE_COMMAND_SERIALIZATION with nested wrapped functions#2782
Open
locke-lunarg wants to merge 2 commits intoLunarG:devfrom
Open
Fix deadlock in GFXRECON_FORCE_COMMAND_SERIALIZATION with nested wrapped functions#2782locke-lunarg wants to merge 2 commits intoLunarG:devfrom
locke-lunarg wants to merge 2 commits intoLunarG:devfrom
Conversation
a7f9fba to
13256ac
Compare
Capture draw calls shouldn't be locked. It should add AvoidApiCallLock before DecrementCallScope. For capture draw calls, DecrementCallScope mean it starts to run wrapped function calls for capture. It would capture and lock. It should avoid lock.
13256ac to
5099161
Compare
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.
closed: https://github.com/LunarG/Projects/issues/1129
When
GFXRECON_FORCE_COMMAND_SERIALIZATIONis enabled, and the original function calls sub wrapped functions, the sub wrapped functions would cause deadlock, ifDecrementCallScopeis called before the sub wrapped functions, like capture draw calls.AvoidApiCallLockhas to be called to avoid api call lock.