suyu/src
cow 85dc40ad23 kepler_compute: use safe memory read
If unsafe read is done there can sometimes be corrupt data in the
KeplerCompute::ProcessLaunch qmd structure.

Fixes GPU crashes in 'Princess Peach: Showtime!' when using vulkan
renderer. Requires using "Accuracy Level High" (crashes will still
happen if using "Normal").

Tested on Radeon 6750XT, Linux 6.11.2, Mesa 24.2.5 (RADV driver).

Unsafe read was introduced in 115792158d
"VideoCore: Implement DispatchIndirect"

How did I debug this:
- Used VK_LAYER_KHRONOS_validation which found invalid vkCmdDispatch
  (along with a lot of other noise!)
- Instrumented all calls to vulkan Dispatch(), set breakpoint when
  grid_dim_x > 1024 (an obviously invalid value). Found dispatch came
  from RasterizerVulkan::DispatchCompute().
- Commented out DispatchCompute() entirely, game runs with no crashes
  but some graphics effects are missing.
- Keep going one layer up, observe corrupted `launch_description` in
  KeplerCompute::ProcessLaunch()
- Attempted safe ReadBlock (`which = VideoCommon::CacheType::All`)
  instead of ReadBlockUnsafe in KeplerCompute::ProcessLaunch(), did not
  help
- Go one layer up to DmaPusher. Switch to safe_process(). No more
  corrupt `launch_description`.
2024-10-22 17:48:59 +00:00
..
android Fix Android crash caused by incorrect type in progress dialog callbacks (#58) 2024-10-03 12:08:28 +00:00
audio_core revert changes introduced in EA3835 to audio sink auto-select, fixing stuttering in Diablo 3, etc (#3) 2024-07-06 20:38:09 +00:00
common renderer: add area sampling scaling method (#57) 2024-10-03 13:25:58 +00:00
core Be more explicit on struct init (#46) 2024-08-10 12:53:04 +00:00
dedicated_room Revert "Removed web service reminiscents" in preparation to fix multiplayer lobby list 2024-06-30 16:54:56 +02:00
frontend_common Merge pull request #13047 from anpilley/import-firmware 2024-02-17 23:18:00 -05:00
hid_core Disabled problematic MSVC warning-to-errors 2024-05-07 18:57:50 +02:00
input_common Disabled problematic MSVC warning-to-errors 2024-05-07 18:57:50 +02:00
network Fixed multiplayer lobby list (thanks to anonymous contributor!) 2024-06-30 17:14:51 +02:00
shader_recompiler Disabled problematic MSVC warning-to-errors 2024-05-07 18:57:50 +02:00
tests Removed custom fibers implementation due to issues caused on Windows 2024-05-08 07:58:20 +02:00
video_core kepler_compute: use safe memory read 2024-10-22 17:48:59 +00:00
web_service Updated copyright headers 2024-04-05 01:58:30 +02:00
yuzu capitalize 'Open Current Mirror Repo' to match other menu options 2024-10-12 23:35:58 +00:00
yuzu_cmd option to skip compiling the -cmd executable (#26) 2024-07-24 23:24:18 +00:00
.clang-format
CMakeLists.txt Remove "/DEBUG" flag from CMAKE_EXE_LINKER_FLAGS_RELEASE 2024-10-13 04:29:29 +00:00