aboutsummaryrefslogtreecommitdiff
path: root/src/platform
diff options
context:
space:
mode:
Diffstat (limited to 'src/platform')
-rw-r--r--src/platform/posix/posix_impl.h9
-rw-r--r--src/platform/posix/posix_thread.c47
-rw-r--r--src/platform/windows/win_impl.h10
-rw-r--r--src/platform/windows/win_thread.c38
4 files changed, 1 insertions, 103 deletions
diff --git a/src/platform/posix/posix_impl.h b/src/platform/posix/posix_impl.h
index b6435353..2229f17c 100644
--- a/src/platform/posix/posix_impl.h
+++ b/src/platform/posix/posix_impl.h
@@ -65,15 +65,6 @@ struct nni_plat_mtx {
PTHREAD_MUTEX_INITIALIZER \
}
-struct nni_rwlock {
- pthread_rwlock_t rwl;
-};
-
-#define NNI_RWLOCK_INITIALIZER \
- { \
- PTHREAD_RWLOCK_INITIALIZER \
- }
-
// No static form of CV initialization because of the need to use
// attributes to set the clock type.
struct nni_plat_cv {
diff --git a/src/platform/posix/posix_thread.c b/src/platform/posix/posix_thread.c
index e8c9036c..ac6371c9 100644
--- a/src/platform/posix/posix_thread.c
+++ b/src/platform/posix/posix_thread.c
@@ -156,53 +156,6 @@ nni_plat_mtx_unlock(nni_plat_mtx *mtx)
}
void
-nni_rwlock_init(nni_rwlock *rwl)
-{
- while (pthread_rwlock_init(&rwl->rwl, NULL) != 0) {
- // We must have memory exhaustion -- ENOMEM, or
- // in some cases EAGAIN. Wait a bit before we try to
- // give things a chance to settle down.
- nni_msleep(10);
- }
-}
-
-void
-nni_rwlock_fini(nni_rwlock *rwl)
-{
- int rv;
- if ((rv = pthread_rwlock_destroy(&rwl->rwl)) != 0) {
- nni_panic("pthread_rwlock_destroy: %s", strerror(rv));
- }
-}
-
-void
-nni_rwlock_rdlock(nni_rwlock *rwl)
-{
- int rv;
- if ((rv = pthread_rwlock_rdlock(&rwl->rwl)) != 0) {
- nni_panic("pthread_rwlock_rdlock: %s", strerror(rv));
- }
-}
-
-void
-nni_rwlock_wrlock(nni_rwlock *rwl)
-{
- int rv;
- if ((rv = pthread_rwlock_wrlock(&rwl->rwl)) != 0) {
- nni_panic("pthread_rwlock_wrlock: %s", strerror(rv));
- }
-}
-
-void
-nni_rwlock_unlock(nni_rwlock *rwl)
-{
- int rv;
- if ((rv = pthread_rwlock_unlock(&rwl->rwl)) != 0) {
- nni_panic("pthread_rwlock_unlock: %s", strerror(rv));
- }
-}
-
-void
nni_plat_cv_init(nni_plat_cv *cv, nni_plat_mtx *mtx)
{
// See the comments in nni_plat_mtx_init. Almost everywhere this
diff --git a/src/platform/windows/win_impl.h b/src/platform/windows/win_impl.h
index 1659b099..db190d42 100644
--- a/src/platform/windows/win_impl.h
+++ b/src/platform/windows/win_impl.h
@@ -44,16 +44,6 @@ struct nni_plat_mtx {
SRWLOCK_INIT \
}
-struct nni_rwlock {
- SRWLOCK rwl;
- BOOLEAN exclusive;
-};
-
-#define NNI_RWLOCK_INITIALIZER \
- { \
- SRWLOCK_INIT \
- }
-
struct nni_plat_cv {
CONDITION_VARIABLE cv;
PSRWLOCK srl;
diff --git a/src/platform/windows/win_thread.c b/src/platform/windows/win_thread.c
index c76209c1..7d865604 100644
--- a/src/platform/windows/win_thread.c
+++ b/src/platform/windows/win_thread.c
@@ -1,5 +1,5 @@
//
-// Copyright 2024 Staysail Systems, Inc. <info@staysail.tech>
+// Copyright 2025 Staysail Systems, Inc. <info@staysail.tech>
// Copyright 2018 Capitar IT Group BV <info@capitar.com>
//
// This software is supplied under the terms of the MIT License, a
@@ -79,42 +79,6 @@ nni_plat_mtx_unlock(nni_plat_mtx *mtx)
}
void
-nni_rwlock_init(nni_rwlock *rwl)
-{
- InitializeSRWLock(&rwl->rwl);
-}
-
-void
-nni_rwlock_fini(nni_rwlock *rwl)
-{
- rwl->exclusive = FALSE;
-}
-
-void
-nni_rwlock_rdlock(nni_rwlock *rwl)
-{
- AcquireSRWLockShared(&rwl->rwl);
-}
-
-void
-nni_rwlock_wrlock(nni_rwlock *rwl)
-{
- AcquireSRWLockExclusive(&rwl->rwl);
- rwl->exclusive = TRUE;
-}
-
-void
-nni_rwlock_unlock(nni_rwlock *rwl)
-{
- if (rwl->exclusive) {
- rwl->exclusive = FALSE;
- ReleaseSRWLockExclusive(&rwl->rwl);
- } else {
- ReleaseSRWLockShared(&rwl->rwl);
- }
-}
-
-void
nni_plat_cv_init(nni_plat_cv *cv, nni_plat_mtx *mtx)
{
InitializeConditionVariable(&cv->cv);