mirror of
https://github.com/shadps4-emu/shadPS4.git
synced 2026-04-26 00:05:58 +03:00
[PR #2037] [MERGED] Improved error handling in sceKernelAllocateDirectMemory #2455
Labels
No labels
Bloodborne
bug
contributor wanted
documentation
enhancement
frontend
good first issue
help wanted
linux
pull-request
question
release
verification progress
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/shadPS4#2455
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/shadps4-emu/shadPS4/pull/2037
Author: @StevenMiller123
Created: 1/3/2025
Status: ✅ Merged
Merged: 2/5/2025
Merged by: @georgemoralis
Base:
main← Head:allocate-fixes📝 Commits (10+)
0d1394aHandle errors in sceKernelAllocateDirectMemory32a8724Improve accuracy of error casesb3b68f5Improve logging on errorsb0cbd2eClangae1becaMerge branch 'shadps4-emu:main' into allocate-fixes6bd4c6bMerge branch 'shadps4-emu:main' into allocate-fixes0475e26Merge branch 'shadps4-emu:main' into allocate-fixes5d3e2d8Merge branch 'shadps4-emu:main' into allocate-fixes46e4678Merge branch 'shadps4-emu:main' into allocate-fixese3f1e4cMerge branch 'shadps4-emu:main' into allocate-fixes📊 Changes
2 files changed (+26 additions, -7 deletions)
View changed files
📝
src/core/libraries/kernel/memory.cpp(+22 -6)📝
src/core/memory.cpp(+4 -1)📄 Description
Some games, most notably the Call of Duty series of games, intentionally make
sceKernelAllocateDirectMemorycalls that fail. To match hardware behavior, we should returnORBIS_KERNEL_ERROR_EAGAINinstead of throwing an assert.This should fix games that still hit
Unable to find free direct memory areaasserts after https://github.com/shadps4-emu/shadPS4/pull/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.
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.