From 6ca60e5dc94654504dc4c9974733afd0f58d86e3 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Fri, 1 Apr 2016 15:10:08 +0200 Subject: score: Delete MP support for RW locks MP support was not implemented. --- cpukit/posix/src/prwlockrdlock.c | 4 +-- cpukit/posix/src/prwlocktimedrdlock.c | 4 +-- cpukit/posix/src/prwlocktimedwrlock.c | 4 +-- cpukit/posix/src/prwlocktryrdlock.c | 4 +-- cpukit/posix/src/prwlocktrywrlock.c | 4 +-- cpukit/posix/src/prwlockwrlock.c | 4 +-- cpukit/score/include/rtems/score/corerwlockimpl.h | 35 ++++++----------------- cpukit/score/src/corerwlockobtainread.c | 10 +++---- cpukit/score/src/corerwlockobtainwrite.c | 4 +-- 9 files changed, 19 insertions(+), 54 deletions(-) diff --git a/cpukit/posix/src/prwlockrdlock.c b/cpukit/posix/src/prwlockrdlock.c index 168a34a8c6..c6bf5fcd9f 100644 --- a/cpukit/posix/src/prwlockrdlock.c +++ b/cpukit/posix/src/prwlockrdlock.c @@ -50,10 +50,8 @@ int pthread_rwlock_rdlock( _CORE_RWLock_Obtain_for_reading( &the_rwlock->RWLock, executing, - *rwlock, true, /* we are willing to wait forever */ - 0, - NULL + 0 ); _Objects_Put( &the_rwlock->Object ); diff --git a/cpukit/posix/src/prwlocktimedrdlock.c b/cpukit/posix/src/prwlocktimedrdlock.c index 20f66822fd..b94fe1b4fe 100644 --- a/cpukit/posix/src/prwlocktimedrdlock.c +++ b/cpukit/posix/src/prwlocktimedrdlock.c @@ -76,10 +76,8 @@ int pthread_rwlock_timedrdlock( _CORE_RWLock_Obtain_for_reading( &the_rwlock->RWLock, executing, - *rwlock, do_wait, - ticks, - NULL + ticks ); _Objects_Put( &the_rwlock->Object ); diff --git a/cpukit/posix/src/prwlocktimedwrlock.c b/cpukit/posix/src/prwlocktimedwrlock.c index f387dc3835..42a80681e5 100644 --- a/cpukit/posix/src/prwlocktimedwrlock.c +++ b/cpukit/posix/src/prwlocktimedwrlock.c @@ -78,10 +78,8 @@ int pthread_rwlock_timedwrlock( _CORE_RWLock_Obtain_for_writing( &the_rwlock->RWLock, executing, - *rwlock, do_wait, - ticks, - NULL + ticks ); _Objects_Put( &the_rwlock->Object ); diff --git a/cpukit/posix/src/prwlocktryrdlock.c b/cpukit/posix/src/prwlocktryrdlock.c index 6a70de5931..72413e4814 100644 --- a/cpukit/posix/src/prwlocktryrdlock.c +++ b/cpukit/posix/src/prwlocktryrdlock.c @@ -54,10 +54,8 @@ int pthread_rwlock_tryrdlock( _CORE_RWLock_Obtain_for_reading( &the_rwlock->RWLock, executing, - *rwlock, false, /* do not wait for the rwlock */ - 0, - NULL + 0 ); diff --git a/cpukit/posix/src/prwlocktrywrlock.c b/cpukit/posix/src/prwlocktrywrlock.c index 7afd41a17a..23f7d80f90 100644 --- a/cpukit/posix/src/prwlocktrywrlock.c +++ b/cpukit/posix/src/prwlocktrywrlock.c @@ -54,10 +54,8 @@ int pthread_rwlock_trywrlock( _CORE_RWLock_Obtain_for_writing( &the_rwlock->RWLock, executing, - *rwlock, false, /* we are not willing to wait */ - 0, - NULL + 0 ); _Objects_Put( &the_rwlock->Object ); diff --git a/cpukit/posix/src/prwlockwrlock.c b/cpukit/posix/src/prwlockwrlock.c index 1905460a2a..49bc114c17 100644 --- a/cpukit/posix/src/prwlockwrlock.c +++ b/cpukit/posix/src/prwlockwrlock.c @@ -58,10 +58,8 @@ int pthread_rwlock_wrlock( _CORE_RWLock_Obtain_for_writing( &the_rwlock->RWLock, executing, - *rwlock, true, /* do not timeout -- wait forever */ - 0, - NULL + 0 ); _Objects_Put( &the_rwlock->Object ); diff --git a/cpukit/score/include/rtems/score/corerwlockimpl.h b/cpukit/score/include/rtems/score/corerwlockimpl.h index e41c6995aa..6d563a56cc 100644 --- a/cpukit/score/include/rtems/score/corerwlockimpl.h +++ b/cpukit/score/include/rtems/score/corerwlockimpl.h @@ -35,15 +35,6 @@ extern "C" { #define CORE_RWLOCK_TQ_OPERATIONS &_Thread_queue_Operations_FIFO -/** - * The following type defines the callout which the API provides - * to support global/multiprocessor operations on RWLocks. - */ -typedef void ( *CORE_RWLock_API_mp_support_callout )( - Thread_Control *, - Objects_Id - ); - /** * Core RWLock handler return statuses. */ @@ -103,23 +94,18 @@ RTEMS_INLINE_ROUTINE void _CORE_RWLock_Destroy( * This routine attempts to obtain the RWLock for read access. * * @param[in] the_rwlock is the RWLock to wait for - * @param[in] id is the id of the object being waited upon * @param[in] wait is true if the calling thread is willing to wait * @param[in] timeout is the number of ticks the calling thread is willing * to wait if @a wait is true. - * @param[in] api_rwlock_mp_support is the routine to invoke if the - * thread unblocked is remote * * @note Status is returned via the thread control block. */ void _CORE_RWLock_Obtain_for_reading( - CORE_RWLock_Control *the_rwlock, - Thread_Control *executing, - Objects_Id id, - bool wait, - Watchdog_Interval timeout, - CORE_RWLock_API_mp_support_callout api_rwlock_mp_support + CORE_RWLock_Control *the_rwlock, + Thread_Control *executing, + bool wait, + Watchdog_Interval timeout ); /** @@ -128,22 +114,17 @@ void _CORE_RWLock_Obtain_for_reading( * This routine attempts to obtain the RWLock for write exclusive access. * * @param[in] the_rwlock is the RWLock to wait for - * @param[in] id is the id of the object being waited upon * @param[in] wait is true if the calling thread is willing to wait * @param[in] timeout is the number of ticks the calling thread is willing * to wait if @a wait is true. - * @param[in] api_rwlock_mp_support is the routine to invoke if the - * thread unblocked is remote * * @note Status is returned via the thread control block. */ void _CORE_RWLock_Obtain_for_writing( - CORE_RWLock_Control *the_rwlock, - Thread_Control *executing, - Objects_Id id, - bool wait, - Watchdog_Interval timeout, - CORE_RWLock_API_mp_support_callout api_rwlock_mp_support + CORE_RWLock_Control *the_rwlock, + Thread_Control *executing, + bool wait, + Watchdog_Interval timeout ); /** diff --git a/cpukit/score/src/corerwlockobtainread.c b/cpukit/score/src/corerwlockobtainread.c index 4676dd7424..71cdf2641d 100644 --- a/cpukit/score/src/corerwlockobtainread.c +++ b/cpukit/score/src/corerwlockobtainread.c @@ -24,12 +24,10 @@ #include void _CORE_RWLock_Obtain_for_reading( - CORE_RWLock_Control *the_rwlock, - Thread_Control *executing, - Objects_Id id, - bool wait, - Watchdog_Interval timeout, - CORE_RWLock_API_mp_support_callout api_rwlock_mp_support + CORE_RWLock_Control *the_rwlock, + Thread_Control *executing, + bool wait, + Watchdog_Interval timeout ) { ISR_lock_Context lock_context; diff --git a/cpukit/score/src/corerwlockobtainwrite.c b/cpukit/score/src/corerwlockobtainwrite.c index 04416505c2..3ae1826611 100644 --- a/cpukit/score/src/corerwlockobtainwrite.c +++ b/cpukit/score/src/corerwlockobtainwrite.c @@ -26,10 +26,8 @@ void _CORE_RWLock_Obtain_for_writing( CORE_RWLock_Control *the_rwlock, Thread_Control *executing, - Objects_Id id, bool wait, - Watchdog_Interval timeout, - CORE_RWLock_API_mp_support_callout api_rwlock_mp_support + Watchdog_Interval timeout ) { ISR_lock_Context lock_context; -- cgit v1.2.3