-
-
Notifications
You must be signed in to change notification settings - Fork 917
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improved error handling in sceKernelAllocateDirectMemory #2037
base: main
Are you sure you want to change the base?
Conversation
Some of our existing cases are normally EAGAIN returns.
Pretty sure we already tested this on Discord but since these commits are more recent I thought I'd give them a try and send the logs here. NBA2K15 NBA2K17 |
What is the current status of this PR? |
This does resolve the issues I saw in Call of Duty games, but leads to hangs or crashes in other games that hit the |
If you want me to I could try to merge this PR locally and check through VS why it's hanging |
Some games, most notably the Call of Duty series of games, intentionally make
sceKernelAllocateDirectMemory
calls that fail. To match hardware behavior, we should returnORBIS_KERNEL_ERROR_EAGAIN
instead of throwing an assert.This should fix games that still hit
Unable to find free direct memory area
asserts after #1896.Credits to @red-prig and @raphaelthegreat for helping with the error cases.
This needs testing, as it could hide deeper issues in some games.