mirror of
https://github.com/boykopovar/AnyPS5.git
synced 2026-10-27 00:28:14 +00:00
feat(libSceSpSysCallWrapper): forward sceSpPthreadMutexattrSetprioceiling
Firmware 13.60's libSceSpSysCallWrapper.sprx jumps to libkernel's scePthreadMutexattrSetprioceiling, which libkernel now implements, so the wrapper forwards to it like the 47 other wrappers in the library. The library's debt file held only this entry and is removed.
This commit is contained in:
1 parent
c2e087b2a6
commit
ffd8b6f8ae
4 files changed
+11
-9
No files matched your search
@@ -183,9 +183,8 @@ int APS5_VABI sceSpPthreadMutexattrInit(PthreadMutexattr* attr) {
|
||||
return scePthreadMutexattrInit(attr);
|
||||
}
|
||||
|
||||
int APS5_VABI sceSpPthreadMutexattrSetprioceiling() {
|
||||
NotImplemented_nid_no_patch(__func__);
|
||||
return 0;
|
||||
int APS5_VABI sceSpPthreadMutexattrSetprioceiling(PthreadMutexattr* attr, int prioceiling) {
|
||||
return scePthreadMutexattrSetprioceiling(attr, prioceiling);
|
||||
}
|
||||
|
||||
int APS5_VABI sceSpPthreadMutexattrSetprotocol(PthreadMutexattr* attr, int protocol) {
|
||||
|
||||
@@ -49,7 +49,7 @@ int APS5_VABI sceSpPthreadMutexLock(PthreadMutex* mutex);
|
||||
int APS5_VABI sceSpPthreadMutexUnlock(PthreadMutex* mutex);
|
||||
int APS5_VABI sceSpPthreadMutexattrDestroy(PthreadMutexattr* attr);
|
||||
int APS5_VABI sceSpPthreadMutexattrInit(PthreadMutexattr* attr);
|
||||
int APS5_VABI sceSpPthreadMutexattrSetprioceiling();
|
||||
int APS5_VABI sceSpPthreadMutexattrSetprioceiling(PthreadMutexattr* attr, int prioceiling);
|
||||
int APS5_VABI sceSpPthreadMutexattrSetprotocol(PthreadMutexattr* attr, int protocol);
|
||||
int APS5_VABI sceSpPthreadMutexattrSettype(PthreadMutexattr* attr, int type);
|
||||
int APS5_VABI sceSpPthreadSetprio(Pthread thread, int prio);
|
||||
|
||||
@@ -55,6 +55,14 @@ void Threads() {
|
||||
Require(sceSpPthreadMutexattrSettype(&mutexAttr, 2) == 0);
|
||||
Require(sceSpPthreadMutexattrSetprotocol(&mutexAttr, 0) == scePthreadMutexattrSetprotocol(&mutexAttr, 0));
|
||||
Require(sceSpPthreadSetprio(scePthreadSelf(), 700) == scePthreadSetprio(scePthreadSelf(), 700));
|
||||
PthreadMutexattr ceilingAttr = nullptr;
|
||||
Require(sceSpPthreadMutexattrInit(&ceilingAttr) == 0);
|
||||
Require(sceSpPthreadMutexattrSetprioceiling(&ceilingAttr, 300) == static_cast<int>(0x80020016u));
|
||||
Require(sceSpPthreadMutexattrSetprotocol(&ceilingAttr, 2) == 0);
|
||||
Require(sceSpPthreadMutexattrSetprioceiling(&ceilingAttr, 300) == 0);
|
||||
int ceiling = 0;
|
||||
Require(scePthreadMutexattrGetprioceiling(&ceilingAttr, &ceiling) == 0 && ceiling == 300);
|
||||
Require(sceSpPthreadMutexattrDestroy(&ceilingAttr) == 0);
|
||||
PthreadCondattr condAttr = nullptr;
|
||||
Require(sceSpPthreadCondattrInit(&condAttr) == 0);
|
||||
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
# libSceSpSysCallWrapper technical debt
|
||||
|
||||
### Unknown function info
|
||||
|
||||
- [sceSpPthreadMutexattrSetprioceiling](../../../core/libs/prx/libSceSpSysCallWrapper/Export.cpp) (libSceSpSysCallWrapper) - still throws. In firmware 13.60's `libSceSpSysCallWrapper.sprx` it only jumps to libkernel's `scePthreadMutexattrSetprioceiling`, which AnyPS5 does not implement yet (read from disassembly, not measured on a console)
|
||||
Reference in new issue
Block a user