fix(android-vulkan): bump osu-framework to 2026.502.3; prevent duplicate native crash dumps - #290
Merged
Conversation
Agent-Logs-Url: https://github.com/winnerspiros/osu/sessions/ec8eb5f9-a370-4c4b-b106-2a543b35f72f Co-authored-by: winnerspiros <1675249+winnerspiros@users.noreply.github.com>
…EGV dumps on repeated handler invocation Agent-Logs-Url: https://github.com/winnerspiros/osu/sessions/ec8eb5f9-a370-4c4b-b106-2a543b35f72f Co-authored-by: winnerspiros <1675249+winnerspiros@users.noreply.github.com>
Copilot created this pull request from a session on behalf of
winnerspiros
May 2, 2026 19:03
View session
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.
Two independent Vulkan black-screen causes on Adreno 740 (driver 512.676.73), plus a crash log hygiene fix.
vkCmdSetFragmentShadingRateKHR SIGSEGV (pc=0x0)
The driver advertises
VK_KHR_fragment_shading_rateand returns a non-null proc addr forvkCmdSetFragmentShadingRateKHR, but the function jumps to0x0on call — crashing the Draw thread. The existingif (CmdSetFragmentShadingRate == null)guard is useless because the delegate wraps a broken native stub, not a missing one.Fixed in veldrid PR #21 by chaining
VkPhysicalDeviceFragmentShadingRateFeaturesKHRintovkCreateDevice— the driver then properly initialises the function pointer.Consumed via osu-framework pack run #21 →
2026.502.3(also includes the PR #20 chunkedvkQueueSubmitfix for the Adreno 740 GPU stall / ANR).Package bump
ppy.osu.Framework/.Android/.iOS:2026.502.1→2026.502.3Duplicate crash dumps (
crash_handler.cpp)g_inHandleris a transient re-entrancy guard — it's reset to0beforeraise(sig)so the chained handler (Mono) can run. If Mono re-raises SIGSEGV viatgkilland our handler has been re-installed between deliveries, it fires again and writes a second full dump.Added a permanent
g_dumpWrittenlatch (never cleared) so at most one dump is written per process lifetime. On subsequent invocations the handler still chains tog_prevHandlersfor the system tombstone; falls back toSIG_DFLifsigactionfails.