mirror of
https://github.com/shadps4-emu/shadPS4.git
synced 2026-04-26 16:25:58 +03:00
[PR #4064] [MERGED] Implement guest signal handlers #3911
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#3911
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/4064
Author: @kalaposfos13
Created: 2/21/2026
Status: ✅ Merged
Merged: 2/22/2026
Merged by: @georgemoralis
Base:
main← Head:guest-signals📝 Commits (9)
847d6e2Change thread pausing to use SIGTRMIN on UNIX5c1da58Allow handling of the rest of the signals1165339Add orbis-native signal number conversion and fix a few bugs9588a8cifdefing away the issues4c9f223add check for mac for the signal that's used for thread pausing thereaa20aa7Add a few more registers48ddb46Don't break HLE memory tracking82e413acopyright 2026ec8bbf3+📊 Changes
5 files changed (+283 additions, -44 deletions)
View changed files
📝
src/core/debug_state.cpp(+3 -2)📝
src/core/libraries/kernel/threads/exception.cpp(+204 -30)📝
src/core/libraries/kernel/threads/exception.h(+34 -3)📝
src/core/signals.cpp(+29 -8)📝
src/core/signals.h(+13 -1)📄 Description
This PR adds the ability for games to set and use custom signal handlers for all 32 signals possible (except for the uncatchable ones, and SIGVTALRM on macOS) on UNIX systems. For Windows, nothing actually changed, as while there's some scaffolding in place for that OS as well, it's currently doing a whole lot of nothing, as the fact that there's no equivalent feature for sigaction there is still true.
I've tested the PR with Eden's WIP PS4 port, and I got it to crash on a stub unrelated to this PR, so I'd say it is working well enough to make basic readonly usage of it function roughly as intended.
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.