AnyPS5/docs/dev
Yossi Yadgar dd1deb6965 fix(ampr): raise std::_Pad failures as the guest std::system_error
A failing _Pad primitive threw a host std::runtime_error, which no guest
catch can see. threadcall.cpp calls the checked wrappers of xthread
(_Mtx_lockX, _Cnd_waitX, _Thrd_startX), which pass a non-success code to
_Throw_C_error: _Thrd_nomem and _Thrd_timedout become
resource_unavailable_try_again, _Thrd_busy device_or_resource_busy and
_Thrd_error invalid_argument, raised through _Throw_Cpp_error, which main
now implements. A failing thread start is _Thrd_startX's
resource_unavailable_try_again.

_Release now wakes the launching thread with _Cnd_signal, as
threadcall.cpp does; libc has it since the pad was written.

guest_ampr_threads checks, in a forked child whose guest terminate
handler reports the thrown object, that _Release on the thread still
holding the pad's mutex throws std::system_error with EBUSY. It fails
with the previous host exception and with busy mapped to
invalid_argument.
2026-10-13 15:59:28 +03:00
..
debt fix(ampr): raise std::_Pad failures as the guest std::system_error 2026-10-13 15:59:28 +03:00
ARCHITECTURE.md feat(agc): depth planes sampled as 2D arrays, cubes and integer views 2026-10-13 12:11:02 +13:00
BUILD.md Merge pull request #4607 from yunusshaikh7/feat/tracy-profiler 2026-10-12 23:09:21 +02:00
CONVENTIONS.md refactor(docs): separated user and dev in docs + compatibility file 2026-09-28 22:58:17 +03:00
HW_ORACLE.md feat(shader): follow FP16_OVFL in every f16 result 2026-10-10 04:32:38 -03:00
PROGRESS.md feat(progress): publish a progress history chart 2026-10-12 21:31:09 +02:00
TechnicalDebt.md Merge pull request #4682 from bubblegg/feat/netctl-get-if-stat 2026-10-13 09:26:47 +02:00