diff --git a/src/kernel/pthread.cpp b/src/kernel/pthread.cpp index 814be83ae..0a1288553 100644 --- a/src/kernel/pthread.cpp +++ b/src/kernel/pthread.cpp @@ -4420,6 +4420,13 @@ int KYTY_SYSV_ABI pthread_cond_signal(LibKernel::PthreadCond* cond) { return POSIX_PTHREAD_CALL(LibKernel::PthreadCondSignal(cond)); } +int KYTY_SYSV_ABI pthread_cond_init(LibKernel::PthreadCond* cond, + const LibKernel::PthreadCondattr* attr) { + PRINT_NAME(); + + return POSIX_PTHREAD_CALL(LibKernel::PthreadCondInit(cond, attr, nullptr)); +} + int KYTY_SYSV_ABI pthread_condattr_setclock(LibKernel::PthreadCondattr* attr, LibKernel::KernelClockid clock_id) { PRINT_NAME(); @@ -4528,6 +4535,13 @@ int KYTY_SYSV_ABI pthread_rwlock_destroy(LibKernel::PthreadRwlock* rwlock) { return POSIX_PTHREAD_CALL(LibKernel::PthreadRwlockDestroy(rwlock)); } +int KYTY_SYSV_ABI pthread_rwlock_init(LibKernel::PthreadRwlock* rwlock, + const LibKernel::PthreadRwlockattr* attr) { + PRINT_NAME(); + + return POSIX_PTHREAD_CALL(LibKernel::PthreadRwlockInit(rwlock, attr, nullptr)); +} + int KYTY_SYSV_ABI pthread_key_create(LibKernel::PthreadKey* key, LibKernel::pthread_key_destructor_func_t destructor) { PRINT_NAME(); diff --git a/src/kernel/pthread.h b/src/kernel/pthread.h index 057ef3247..3b39581cf 100644 --- a/src/kernel/pthread.h +++ b/src/kernel/pthread.h @@ -269,6 +269,8 @@ int KYTY_SYSV_ABI pthread_rwlock_rdlock(LibKernel::PthreadRwlock* rwlock); int KYTY_SYSV_ABI pthread_rwlock_unlock(LibKernel::PthreadRwlock* rwlock); int KYTY_SYSV_ABI pthread_rwlock_wrlock(LibKernel::PthreadRwlock* rwlock); int KYTY_SYSV_ABI pthread_rwlock_destroy(LibKernel::PthreadRwlock* rwlock); +int KYTY_SYSV_ABI pthread_rwlock_init(LibKernel::PthreadRwlock* rwlock, + const LibKernel::PthreadRwlockattr* attr); int KYTY_SYSV_ABI pthread_key_create(LibKernel::PthreadKey* key, LibKernel::pthread_key_destructor_func_t destructor); int KYTY_SYSV_ABI pthread_key_delete(LibKernel::PthreadKey key); diff --git a/src/libs/libKernel.cpp b/src/libs/libKernel.cpp index e72df0cf2..51c3a0edc 100644 --- a/src/libs/libKernel.cpp +++ b/src/libs/libKernel.cpp @@ -2172,9 +2172,11 @@ LIB_DEFINE(InitLibKernel_1_Posix) { LIB_FUNC("ltCfaGr2JGE", Posix::pthread_mutex_destroy); LIB_FUNC("mkx2fVhNMsg", Posix::pthread_cond_broadcast); LIB_FUNC("2MOy+rUfuhQ", Posix::pthread_cond_signal); + LIB_FUNC("0TyVk4MSLt0", Posix::pthread_cond_init); LIB_FUNC("Op8TBGY5KHg", Posix::pthread_cond_wait); LIB_FUNC("Z4QosVuAsA0", Posix::pthread_once); LIB_FUNC("1471ajPzxh0", Posix::pthread_rwlock_destroy); + LIB_FUNC("ytQULN-nhL4", Posix::pthread_rwlock_init); LIB_FUNC("sIlRvQqsN2Y", Posix::pthread_rwlock_wrlock); LIB_FUNC("SFxTMOfuCkE", LibKernel::PthreadRwlockTryrdlock); LIB_FUNC("XhWHn6P5R7U", LibKernel::PthreadRwlockTrywrlock); @@ -3211,7 +3213,6 @@ LIB_DEFINE(InitLibKernel_1_Pthread) { LIB_FUNC("FXPWHNk8Of0", LibKernel::PthreadAttrGetschedparam); LIB_FUNC("6ULAa0fq4jA", LibKernel::PthreadRwlockInit); - LIB_FUNC("ytQULN-nhL4", LibKernel::PthreadRwlockInit); LIB_FUNC("BB+kb08Tl9A", LibKernel::PthreadRwlockDestroy); LIB_FUNC("Ox9i0c7L5w0", LibKernel::PthreadRwlockRdlock); LIB_FUNC("iGjsr1WAtI0", LibKernel::PthreadRwlockRdlock); @@ -3227,7 +3228,6 @@ LIB_DEFINE(InitLibKernel_1_Pthread) { LIB_FUNC("h-OifiouBd8", LibKernel::PthreadRwlockattrSettype); LIB_FUNC("2Tb92quprl0", LibKernel::PthreadCondInit); - LIB_FUNC("0TyVk4MSLt0", LibKernel::PthreadCondInit); LIB_FUNC("g+PZd2hiacg", LibKernel::PthreadCondDestroy); LIB_FUNC("RXXqi4CtF8w", LibKernel::PthreadCondDestroy); LIB_FUNC("WKAXJ4XBPQ4", LibKernel::PthreadCondWait);