From 21789a2117f7485000e0d88c3f76a6b9d507bb5a Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Tue, 28 Jul 2015 14:45:42 +0200 Subject: score: Rename _POSIX_Absolute_timeout_to_ticks() Rename _POSIX_Absolute_timeout_to_ticks() to _TOD_Absolute_timeout_to_ticks() and move it to the score directory. Delete empty . --- cpukit/posix/Makefile.am | 3 +- cpukit/posix/include/rtems/posix/time.h | 72 -------------------- cpukit/posix/preinstall.am | 4 -- cpukit/posix/src/barrierattrdestroy.c | 1 - cpukit/posix/src/clockgetcpuclockid.c | 1 - cpukit/posix/src/clockgetenableattr.c | 1 - cpukit/posix/src/clocksetenableattr.c | 1 - cpukit/posix/src/cond.c | 1 - cpukit/posix/src/condattrdestroy.c | 1 - cpukit/posix/src/condattrgetpshared.c | 1 - cpukit/posix/src/condattrinit.c | 1 - cpukit/posix/src/condattrsetpshared.c | 1 - cpukit/posix/src/condbroadcast.c | 1 - cpukit/posix/src/conddefaultattributes.c | 1 - cpukit/posix/src/conddestroy.c | 1 - cpukit/posix/src/condget.c | 1 - cpukit/posix/src/condinit.c | 1 - cpukit/posix/src/condsignal.c | 1 - cpukit/posix/src/condsignalsupp.c | 1 - cpukit/posix/src/condtimedwait.c | 13 ++-- cpukit/posix/src/condwait.c | 1 - cpukit/posix/src/condwaitsupp.c | 1 - cpukit/posix/src/mqueue.c | 1 - cpukit/posix/src/mqueueclose.c | 1 - cpukit/posix/src/mqueuecreatesupp.c | 1 - cpukit/posix/src/mqueuedeletesupp.c | 1 - cpukit/posix/src/mqueuegetattr.c | 1 - cpukit/posix/src/mqueuenotify.c | 1 - cpukit/posix/src/mqueueopen.c | 1 - cpukit/posix/src/mqueuereceive.c | 1 - cpukit/posix/src/mqueuerecvsupp.c | 1 - cpukit/posix/src/mqueuesend.c | 1 - cpukit/posix/src/mqueuesendsupp.c | 1 - cpukit/posix/src/mqueuesetattr.c | 1 - cpukit/posix/src/mqueuetimedreceive.c | 13 ++-- cpukit/posix/src/mqueuetimedsend.c | 13 ++-- cpukit/posix/src/mqueueunlink.c | 1 - cpukit/posix/src/mutex.c | 1 - cpukit/posix/src/mutexattrdestroy.c | 1 - cpukit/posix/src/mutexattrgetprioceiling.c | 1 - cpukit/posix/src/mutexattrgetprotocol.c | 1 - cpukit/posix/src/mutexattrgetpshared.c | 1 - cpukit/posix/src/mutexattrgettype.c | 1 - cpukit/posix/src/mutexattrinit.c | 1 - cpukit/posix/src/mutexattrsetprioceiling.c | 1 - cpukit/posix/src/mutexattrsetprotocol.c | 1 - cpukit/posix/src/mutexattrsetpshared.c | 1 - cpukit/posix/src/mutexattrsettype.c | 1 - cpukit/posix/src/mutexdestroy.c | 1 - cpukit/posix/src/mutexgetprioceiling.c | 1 - cpukit/posix/src/mutexinit.c | 1 - cpukit/posix/src/mutexlock.c | 1 - cpukit/posix/src/mutexlocksupp.c | 1 - cpukit/posix/src/mutexsetprioceiling.c | 1 - cpukit/posix/src/mutextimedlock.c | 19 +++--- cpukit/posix/src/mutextrylock.c | 1 - cpukit/posix/src/mutexunlock.c | 1 - cpukit/posix/src/posixtimespecabsolutetimeout.c | 88 ------------------------- cpukit/posix/src/prwlocktimedrdlock.c | 18 ++--- cpukit/posix/src/prwlocktimedwrlock.c | 18 ++--- cpukit/posix/src/psignal.c | 1 - cpukit/posix/src/psignalchecksignal.c | 1 - cpukit/posix/src/psignalclearsignals.c | 1 - cpukit/posix/src/psignalsetprocesssignals.c | 1 - cpukit/posix/src/psignalunblockthread.c | 1 - cpukit/posix/src/psxtransschedparam.c | 1 - cpukit/posix/src/pthread.c | 1 - cpukit/posix/src/pthreadcreate.c | 1 - cpukit/posix/src/pthreadinitthreads.c | 1 - cpukit/posix/src/pthreadsetschedparam.c | 1 - cpukit/posix/src/ptimer.c | 1 - cpukit/posix/src/rwlockattrdestroy.c | 1 - cpukit/posix/src/sched_getscheduler.c | 1 - cpukit/posix/src/sched_setparam.c | 1 - cpukit/posix/src/sched_setscheduler.c | 1 - cpukit/posix/src/semaphore.c | 1 - cpukit/posix/src/semaphorecreatesupp.c | 1 - cpukit/posix/src/semaphoredeletesupp.c | 1 - cpukit/posix/src/semaphorewaitsupp.c | 1 - cpukit/posix/src/semclose.c | 1 - cpukit/posix/src/semdestroy.c | 1 - cpukit/posix/src/semgetvalue.c | 1 - cpukit/posix/src/seminit.c | 1 - cpukit/posix/src/semopen.c | 1 - cpukit/posix/src/sempost.c | 1 - cpukit/posix/src/semtimedwait.c | 18 ++--- cpukit/posix/src/semtrywait.c | 1 - cpukit/posix/src/semunlink.c | 1 - cpukit/posix/src/semwait.c | 1 - cpukit/posix/src/sigtimedwait.c | 1 - cpukit/posix/src/timercreate.c | 1 - cpukit/posix/src/timerdelete.c | 1 - cpukit/posix/src/timersettime.c | 1 - cpukit/posix/src/timertsr.c | 1 - cpukit/posix/src/ualarm.c | 1 - cpukit/sapi/src/posixapi.c | 1 - cpukit/score/Makefile.am | 1 + cpukit/score/include/rtems/score/todimpl.h | 39 +++++++++++ cpukit/score/src/coretodabsolutetimeout.c | 77 ++++++++++++++++++++++ 99 files changed, 172 insertions(+), 309 deletions(-) delete mode 100644 cpukit/posix/include/rtems/posix/time.h delete mode 100644 cpukit/posix/src/posixtimespecabsolutetimeout.c create mode 100644 cpukit/score/src/coretodabsolutetimeout.c diff --git a/cpukit/posix/Makefile.am b/cpukit/posix/Makefile.am index 8ffd4e63c4..89621fee59 100644 --- a/cpukit/posix/Makefile.am +++ b/cpukit/posix/Makefile.am @@ -47,7 +47,6 @@ include_rtems_posix_HEADERS += include/rtems/posix/ptimer.h include_rtems_posix_HEADERS += include/rtems/posix/semaphore.h include_rtems_posix_HEADERS += include/rtems/posix/semaphoreimpl.h include_rtems_posix_HEADERS += include/rtems/posix/threadsup.h -include_rtems_posix_HEADERS += include/rtems/posix/time.h include_rtems_posix_HEADERS += include/rtems/posix/timer.h include_rtems_posix_HEADERS += include/rtems/posix/timerimpl.h include_rtems_posix_HEADERS += include/rtems/posix/barrier.h @@ -195,7 +194,7 @@ libposix_a_SOURCES += src/pspin.c src/pspindestroy.c src/pspininit.c \ src/pspinunlock.c ## TIME_C_FILES -libposix_a_SOURCES += src/adjtime.c src/posixtimespecabsolutetimeout.c \ +libposix_a_SOURCES += src/adjtime.c \ src/clockgetcpuclockid.c src/clockgetenableattr.c src/clocksetenableattr.c ## TIMER_C_FILES diff --git a/cpukit/posix/include/rtems/posix/time.h b/cpukit/posix/include/rtems/posix/time.h deleted file mode 100644 index 4eea228a6d..0000000000 --- a/cpukit/posix/include/rtems/posix/time.h +++ /dev/null @@ -1,72 +0,0 @@ -/** - * @file - * - * @brief POSIX Time Types - * - * This defines the interface to implementation helper routines related - * to POSIX time types. - */ - -/* - * COPYRIGHT (c) 1989-2011. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. - */ - -#ifndef _RTEMS_POSIX_TIME_H -#define _RTEMS_POSIX_TIME_H - -#include -#include -/** - * @defgroup POSIX_TIMETYPES POSIX Time Types - * - * @ingroup POSIXAPI - * - */ -/**@{**/ - -/** - * @brief Absolute timeout conversion results. - * - * This enumeration defines the possible results of converting - * an absolute time used for timeouts to POSIX blocking calls to - * a number of ticks. - */ -typedef enum { - /** The timeout is invalid. */ - POSIX_ABSOLUTE_TIMEOUT_INVALID, - /** The timeout represents a time that is in the past. */ - POSIX_ABSOLUTE_TIMEOUT_IS_IN_PAST, - /** The timeout represents a time that is equal to the current time. */ - POSIX_ABSOLUTE_TIMEOUT_IS_NOW, - /** The timeout represents a time that is in the future. */ - POSIX_ABSOLUTE_TIMEOUT_IS_IN_FUTURE, -} POSIX_Absolute_timeout_conversion_results_t; - -/** - * @brief Convert absolute timeout to ticks. - * - * This method takes an absolute time being used as a timeout - * to a blocking directive, validates it and returns the number - * of corresponding clock ticks for use by the SuperCore. - * - * @param[in] abstime is a pointer to the timeout - * @param[out] ticks_out will contain the number of ticks - * - * @return This method returns the number of ticks in @a ticks_out - * and a status value indicating whether the absolute time - * is valid, in the past, equal to the current time or in - * the future as it should be. - */ -POSIX_Absolute_timeout_conversion_results_t _POSIX_Absolute_timeout_to_ticks( - const struct timespec *abstime, - Watchdog_Interval *ticks_out -); - -/** @} */ - -#endif diff --git a/cpukit/posix/preinstall.am b/cpukit/posix/preinstall.am index 64a8c6bb1d..cf1303c954 100644 --- a/cpukit/posix/preinstall.am +++ b/cpukit/posix/preinstall.am @@ -125,10 +125,6 @@ $(PROJECT_INCLUDE)/rtems/posix/threadsup.h: include/rtems/posix/threadsup.h $(PR $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/posix/threadsup.h PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/posix/threadsup.h -$(PROJECT_INCLUDE)/rtems/posix/time.h: include/rtems/posix/time.h $(PROJECT_INCLUDE)/rtems/posix/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/posix/time.h -PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/posix/time.h - $(PROJECT_INCLUDE)/rtems/posix/timer.h: include/rtems/posix/timer.h $(PROJECT_INCLUDE)/rtems/posix/$(dirstamp) $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/posix/timer.h PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/posix/timer.h diff --git a/cpukit/posix/src/barrierattrdestroy.c b/cpukit/posix/src/barrierattrdestroy.c index 40aec79c6a..96c1e2b05d 100644 --- a/cpukit/posix/src/barrierattrdestroy.c +++ b/cpukit/posix/src/barrierattrdestroy.c @@ -24,7 +24,6 @@ #include #include #include -#include #include /* diff --git a/cpukit/posix/src/clockgetcpuclockid.c b/cpukit/posix/src/clockgetcpuclockid.c index 2a224d0bc1..51f8588e74 100644 --- a/cpukit/posix/src/clockgetcpuclockid.c +++ b/cpukit/posix/src/clockgetcpuclockid.c @@ -26,7 +26,6 @@ #include #include -#include /* * 20.1.3 Accessing a Process CPU-time CLock, P1003.4b/D8, p. 55 diff --git a/cpukit/posix/src/clockgetenableattr.c b/cpukit/posix/src/clockgetenableattr.c index eb78850bed..f37984b64b 100644 --- a/cpukit/posix/src/clockgetenableattr.c +++ b/cpukit/posix/src/clockgetenableattr.c @@ -26,7 +26,6 @@ #include #include -#include /* * 20.1.5 CPU-time Clock Attribute Access, P1003.4b/D8, p. 58 diff --git a/cpukit/posix/src/clocksetenableattr.c b/cpukit/posix/src/clocksetenableattr.c index d6d994e4c7..ac15f31ca4 100644 --- a/cpukit/posix/src/clocksetenableattr.c +++ b/cpukit/posix/src/clocksetenableattr.c @@ -26,7 +26,6 @@ #include #include -#include /* * 20.1.5 CPU-time Clock Attribute Access, P1003.4b/D8, p. 58 diff --git a/cpukit/posix/src/cond.c b/cpukit/posix/src/cond.c index ba7b03328a..5ce12d5220 100644 --- a/cpukit/posix/src/cond.c +++ b/cpukit/posix/src/cond.c @@ -26,7 +26,6 @@ #include #include #include -#include #include /* diff --git a/cpukit/posix/src/condattrdestroy.c b/cpukit/posix/src/condattrdestroy.c index 1399ed0d74..d35a3ff651 100644 --- a/cpukit/posix/src/condattrdestroy.c +++ b/cpukit/posix/src/condattrdestroy.c @@ -24,7 +24,6 @@ #include #include #include -#include #include /* diff --git a/cpukit/posix/src/condattrgetpshared.c b/cpukit/posix/src/condattrgetpshared.c index 7d7f13aec9..e1427dfaca 100644 --- a/cpukit/posix/src/condattrgetpshared.c +++ b/cpukit/posix/src/condattrgetpshared.c @@ -24,7 +24,6 @@ #include #include #include -#include #include /** diff --git a/cpukit/posix/src/condattrinit.c b/cpukit/posix/src/condattrinit.c index d9fd6c9473..f4d8e393e4 100644 --- a/cpukit/posix/src/condattrinit.c +++ b/cpukit/posix/src/condattrinit.c @@ -24,7 +24,6 @@ #include #include #include -#include #include /* diff --git a/cpukit/posix/src/condattrsetpshared.c b/cpukit/posix/src/condattrsetpshared.c index a1682e8031..b6700001ec 100644 --- a/cpukit/posix/src/condattrsetpshared.c +++ b/cpukit/posix/src/condattrsetpshared.c @@ -24,7 +24,6 @@ #include #include #include -#include #include /* diff --git a/cpukit/posix/src/condbroadcast.c b/cpukit/posix/src/condbroadcast.c index 718cb9b23a..db73837d09 100644 --- a/cpukit/posix/src/condbroadcast.c +++ b/cpukit/posix/src/condbroadcast.c @@ -24,7 +24,6 @@ #include #include #include -#include #include /** diff --git a/cpukit/posix/src/conddefaultattributes.c b/cpukit/posix/src/conddefaultattributes.c index 8b6d5f161a..84fdbc875f 100644 --- a/cpukit/posix/src/conddefaultattributes.c +++ b/cpukit/posix/src/conddefaultattributes.c @@ -24,7 +24,6 @@ #include #include #include -#include #include /* diff --git a/cpukit/posix/src/conddestroy.c b/cpukit/posix/src/conddestroy.c index cd437a9114..79c50232eb 100644 --- a/cpukit/posix/src/conddestroy.c +++ b/cpukit/posix/src/conddestroy.c @@ -24,7 +24,6 @@ #include #include #include -#include #include /** diff --git a/cpukit/posix/src/condget.c b/cpukit/posix/src/condget.c index 11b3ddff42..6ebba730a3 100644 --- a/cpukit/posix/src/condget.c +++ b/cpukit/posix/src/condget.c @@ -17,7 +17,6 @@ #include #include #include -#include #include POSIX_Condition_variables_Control *_POSIX_Condition_variables_Get ( diff --git a/cpukit/posix/src/condinit.c b/cpukit/posix/src/condinit.c index 0b61d14cb9..eb31da0e80 100644 --- a/cpukit/posix/src/condinit.c +++ b/cpukit/posix/src/condinit.c @@ -24,7 +24,6 @@ #include #include #include -#include #include /** diff --git a/cpukit/posix/src/condsignal.c b/cpukit/posix/src/condsignal.c index cabe35d4a8..6fd743fd6b 100644 --- a/cpukit/posix/src/condsignal.c +++ b/cpukit/posix/src/condsignal.c @@ -24,7 +24,6 @@ #include #include #include -#include #include /** diff --git a/cpukit/posix/src/condsignalsupp.c b/cpukit/posix/src/condsignalsupp.c index 74b97b91a9..938b5e50d2 100644 --- a/cpukit/posix/src/condsignalsupp.c +++ b/cpukit/posix/src/condsignalsupp.c @@ -24,7 +24,6 @@ #include #include #include -#include #include /* diff --git a/cpukit/posix/src/condtimedwait.c b/cpukit/posix/src/condtimedwait.c index 191a09fb46..3c978e41b8 100644 --- a/cpukit/posix/src/condtimedwait.c +++ b/cpukit/posix/src/condtimedwait.c @@ -22,9 +22,8 @@ #include #include -#include +#include #include -#include #include /* @@ -39,7 +38,7 @@ int pthread_cond_timedwait( { Watchdog_Interval ticks; bool already_timedout; - POSIX_Absolute_timeout_conversion_results_t status; + TOD_Absolute_timeout_conversion_results status; /* * POSIX requires that blocking calls with timeouts that take @@ -51,12 +50,12 @@ int pthread_cond_timedwait( * status into the appropriate error. */ already_timedout = false; - status = _POSIX_Absolute_timeout_to_ticks(abstime, &ticks); - if ( status == POSIX_ABSOLUTE_TIMEOUT_INVALID ) + status = _TOD_Absolute_timeout_to_ticks(abstime, &ticks); + if ( status == TOD_ABSOLUTE_TIMEOUT_INVALID ) return EINVAL; - if ( status == POSIX_ABSOLUTE_TIMEOUT_IS_IN_PAST || - status == POSIX_ABSOLUTE_TIMEOUT_IS_NOW ) + if ( status == TOD_ABSOLUTE_TIMEOUT_IS_IN_PAST || + status == TOD_ABSOLUTE_TIMEOUT_IS_NOW ) already_timedout = true; return _POSIX_Condition_variables_Wait_support( diff --git a/cpukit/posix/src/condwait.c b/cpukit/posix/src/condwait.c index 034b9140e4..787c91fadf 100644 --- a/cpukit/posix/src/condwait.c +++ b/cpukit/posix/src/condwait.c @@ -24,7 +24,6 @@ #include #include #include -#include #include /* diff --git a/cpukit/posix/src/condwaitsupp.c b/cpukit/posix/src/condwaitsupp.c index 5a71dc3b54..5b7fb5d7a4 100644 --- a/cpukit/posix/src/condwaitsupp.c +++ b/cpukit/posix/src/condwaitsupp.c @@ -25,7 +25,6 @@ #include #include #include -#include #include int _POSIX_Condition_variables_Wait_support( diff --git a/cpukit/posix/src/mqueue.c b/cpukit/posix/src/mqueue.c index 049ab8a0e3..43878b708c 100644 --- a/cpukit/posix/src/mqueue.c +++ b/cpukit/posix/src/mqueue.c @@ -31,7 +31,6 @@ #include #include #include -#include /* * _POSIX_Message_queue_Manager_initialization diff --git a/cpukit/posix/src/mqueueclose.c b/cpukit/posix/src/mqueueclose.c index 72a7cdc40e..2864e95f3c 100644 --- a/cpukit/posix/src/mqueueclose.c +++ b/cpukit/posix/src/mqueueclose.c @@ -42,7 +42,6 @@ #include #include #include -#include /* * diff --git a/cpukit/posix/src/mqueuecreatesupp.c b/cpukit/posix/src/mqueuecreatesupp.c index 3be64b4cc4..6d407314f2 100644 --- a/cpukit/posix/src/mqueuecreatesupp.c +++ b/cpukit/posix/src/mqueuecreatesupp.c @@ -38,7 +38,6 @@ #include #include #include -#include /* * _POSIX_Message_queue_Create_support diff --git a/cpukit/posix/src/mqueuedeletesupp.c b/cpukit/posix/src/mqueuedeletesupp.c index d701304301..9bf17a38dc 100644 --- a/cpukit/posix/src/mqueuedeletesupp.c +++ b/cpukit/posix/src/mqueuedeletesupp.c @@ -31,7 +31,6 @@ #include #include #include -#include #if defined(RTEMS_DEBUG) #include #endif diff --git a/cpukit/posix/src/mqueuegetattr.c b/cpukit/posix/src/mqueuegetattr.c index 6900f0ebb8..735bb12f01 100644 --- a/cpukit/posix/src/mqueuegetattr.c +++ b/cpukit/posix/src/mqueuegetattr.c @@ -42,7 +42,6 @@ #include #include #include -#include /* * 15.2.8 Get Message Queue Attributes, P1003.1b-1993, p. 283 diff --git a/cpukit/posix/src/mqueuenotify.c b/cpukit/posix/src/mqueuenotify.c index 5027164f38..810097691f 100644 --- a/cpukit/posix/src/mqueuenotify.c +++ b/cpukit/posix/src/mqueuenotify.c @@ -32,7 +32,6 @@ #include #include #include -#include /* * _POSIX_Message_queue_Notify_handler diff --git a/cpukit/posix/src/mqueueopen.c b/cpukit/posix/src/mqueueopen.c index 96721d1f8e..1daedc48f5 100644 --- a/cpukit/posix/src/mqueueopen.c +++ b/cpukit/posix/src/mqueueopen.c @@ -41,7 +41,6 @@ #include #include #include -#include #include #define MQ_OPEN_FAILED ((mqd_t) -1) diff --git a/cpukit/posix/src/mqueuereceive.c b/cpukit/posix/src/mqueuereceive.c index 493ac79219..465cd79cec 100644 --- a/cpukit/posix/src/mqueuereceive.c +++ b/cpukit/posix/src/mqueuereceive.c @@ -30,7 +30,6 @@ #include #include #include -#include ssize_t mq_receive( mqd_t mqdes, diff --git a/cpukit/posix/src/mqueuerecvsupp.c b/cpukit/posix/src/mqueuerecvsupp.c index 2f9bb2d276..54d0ac1d7f 100644 --- a/cpukit/posix/src/mqueuerecvsupp.c +++ b/cpukit/posix/src/mqueuerecvsupp.c @@ -30,7 +30,6 @@ #include #include #include -#include /* * _POSIX_Message_queue_Receive_support diff --git a/cpukit/posix/src/mqueuesend.c b/cpukit/posix/src/mqueuesend.c index 01ea896bfd..6cf67cd3bb 100644 --- a/cpukit/posix/src/mqueuesend.c +++ b/cpukit/posix/src/mqueuesend.c @@ -42,7 +42,6 @@ #include #include #include -#include /* * 15.2.4 Send a Message to a Message Queue, P1003.1b-1993, p. 277 diff --git a/cpukit/posix/src/mqueuesendsupp.c b/cpukit/posix/src/mqueuesendsupp.c index d73538ae88..976d1e0115 100644 --- a/cpukit/posix/src/mqueuesendsupp.c +++ b/cpukit/posix/src/mqueuesendsupp.c @@ -42,7 +42,6 @@ #include #include #include -#include /* diff --git a/cpukit/posix/src/mqueuesetattr.c b/cpukit/posix/src/mqueuesetattr.c index fb773b1e3f..13e6974b96 100644 --- a/cpukit/posix/src/mqueuesetattr.c +++ b/cpukit/posix/src/mqueuesetattr.c @@ -30,7 +30,6 @@ #include #include #include -#include int mq_setattr( mqd_t mqdes, diff --git a/cpukit/posix/src/mqueuetimedreceive.c b/cpukit/posix/src/mqueuetimedreceive.c index 3d433b3c61..19e5430ff2 100644 --- a/cpukit/posix/src/mqueuetimedreceive.c +++ b/cpukit/posix/src/mqueuetimedreceive.c @@ -41,10 +41,9 @@ #include #include -#include +#include #include #include -#include /* * 15.2.5 Receive a Message From a Message Queue, P1003.1b-1993, p. 279 @@ -62,7 +61,7 @@ ssize_t mq_timedreceive( { Watchdog_Interval ticks; bool do_wait = true; - POSIX_Absolute_timeout_conversion_results_t status; + TOD_Absolute_timeout_conversion_results status; /* * POSIX requires that blocking calls with timeouts that take @@ -73,12 +72,12 @@ ssize_t mq_timedreceive( * then we do a polling operation and convert the UNSATISFIED * status into the appropriate error. * - * If the status is POSIX_ABSOLUTE_TIMEOUT_INVALID, - * POSIX_ABSOLUTE_TIMEOUT_IS_IN_PAST, or POSIX_ABSOLUTE_TIMEOUT_IS_NOW, + * If the status is TOD_ABSOLUTE_TIMEOUT_INVALID, + * TOD_ABSOLUTE_TIMEOUT_IS_IN_PAST, or TOD_ABSOLUTE_TIMEOUT_IS_NOW, * then we should not wait. */ - status = _POSIX_Absolute_timeout_to_ticks( abstime, &ticks ); - if ( status != POSIX_ABSOLUTE_TIMEOUT_IS_IN_FUTURE ) + status = _TOD_Absolute_timeout_to_ticks( abstime, &ticks ); + if ( status != TOD_ABSOLUTE_TIMEOUT_IS_IN_FUTURE ) do_wait = false; return _POSIX_Message_queue_Receive_support( diff --git a/cpukit/posix/src/mqueuetimedsend.c b/cpukit/posix/src/mqueuetimedsend.c index 0001ff4a03..ce178fa08d 100644 --- a/cpukit/posix/src/mqueuetimedsend.c +++ b/cpukit/posix/src/mqueuetimedsend.c @@ -27,10 +27,9 @@ #include #include -#include +#include #include #include -#include int mq_timedsend( mqd_t mqdes, @@ -42,7 +41,7 @@ int mq_timedsend( { Watchdog_Interval ticks; bool do_wait = true; - POSIX_Absolute_timeout_conversion_results_t status; + TOD_Absolute_timeout_conversion_results status; /* * POSIX requires that blocking calls with timeouts that take @@ -53,12 +52,12 @@ int mq_timedsend( * then we do a polling operation and convert the UNSATISFIED * status into the appropriate error. * - * If the status is POSIX_ABSOLUTE_TIMEOUT_INVALID, - * POSIX_ABSOLUTE_TIMEOUT_IS_IN_PAST, or POSIX_ABSOLUTE_TIMEOUT_IS_NOW, + * If the status is TOD_ABSOLUTE_TIMEOUT_INVALID, + * TOD_ABSOLUTE_TIMEOUT_IS_IN_PAST, or TOD_ABSOLUTE_TIMEOUT_IS_NOW, * then we should not wait. */ - status = _POSIX_Absolute_timeout_to_ticks( abstime, &ticks ); - if ( status != POSIX_ABSOLUTE_TIMEOUT_IS_IN_FUTURE ) + status = _TOD_Absolute_timeout_to_ticks( abstime, &ticks ); + if ( status != TOD_ABSOLUTE_TIMEOUT_IS_IN_FUTURE ) do_wait = false; return _POSIX_Message_queue_Send_support( diff --git a/cpukit/posix/src/mqueueunlink.c b/cpukit/posix/src/mqueueunlink.c index 92b1976a43..2be096a421 100644 --- a/cpukit/posix/src/mqueueunlink.c +++ b/cpukit/posix/src/mqueueunlink.c @@ -31,7 +31,6 @@ #include #include #include -#include /* * 15.2.2 Remove a Message Queue, P1003.1b-1993, p. 276 diff --git a/cpukit/posix/src/mutex.c b/cpukit/posix/src/mutex.c index dcaf030d8c..89e5b84951 100644 --- a/cpukit/posix/src/mutex.c +++ b/cpukit/posix/src/mutex.c @@ -28,7 +28,6 @@ #include #include #include -#include /* * _POSIX_Mutex_Manager_initialization diff --git a/cpukit/posix/src/mutexattrdestroy.c b/cpukit/posix/src/mutexattrdestroy.c index 677796604e..1817a26cbd 100644 --- a/cpukit/posix/src/mutexattrdestroy.c +++ b/cpukit/posix/src/mutexattrdestroy.c @@ -26,7 +26,6 @@ #include #include #include -#include /** * 11.3.1 Mutex Initialization Attributes, P1003.1c/Draft 10, p. 81 diff --git a/cpukit/posix/src/mutexattrgetprioceiling.c b/cpukit/posix/src/mutexattrgetprioceiling.c index 58c1dbad67..d8bb00761c 100644 --- a/cpukit/posix/src/mutexattrgetprioceiling.c +++ b/cpukit/posix/src/mutexattrgetprioceiling.c @@ -26,7 +26,6 @@ #include #include #include -#include /* * 13.6.1 Mutex Initialization Scheduling Attributes, P1003.1c/Draft 10, p. 128 diff --git a/cpukit/posix/src/mutexattrgetprotocol.c b/cpukit/posix/src/mutexattrgetprotocol.c index b86dc00abb..efb4a7f239 100644 --- a/cpukit/posix/src/mutexattrgetprotocol.c +++ b/cpukit/posix/src/mutexattrgetprotocol.c @@ -26,7 +26,6 @@ #include #include #include -#include /* * 13.6.1 Mutex Initialization Scheduling Attributes, P1003.1c/Draft 10, p. 128 diff --git a/cpukit/posix/src/mutexattrgetpshared.c b/cpukit/posix/src/mutexattrgetpshared.c index 9ece1f7c85..5ef8c59eb0 100644 --- a/cpukit/posix/src/mutexattrgetpshared.c +++ b/cpukit/posix/src/mutexattrgetpshared.c @@ -26,7 +26,6 @@ #include #include #include -#include /* * 11.3.1 Mutex Initialization Attributes, P1003.1c/Draft 10, p. 81 diff --git a/cpukit/posix/src/mutexattrgettype.c b/cpukit/posix/src/mutexattrgettype.c index e0fd2f88fd..3c12dcbc89 100644 --- a/cpukit/posix/src/mutexattrgettype.c +++ b/cpukit/posix/src/mutexattrgettype.c @@ -26,7 +26,6 @@ #include #include #include -#include #if defined(_UNIX98_THREAD_MUTEX_ATTRIBUTES) int pthread_mutexattr_gettype( diff --git a/cpukit/posix/src/mutexattrinit.c b/cpukit/posix/src/mutexattrinit.c index d4fe6f3eaf..7c249ba620 100644 --- a/cpukit/posix/src/mutexattrinit.c +++ b/cpukit/posix/src/mutexattrinit.c @@ -26,7 +26,6 @@ #include #include #include -#include /** * 11.3.1 Mutex Initialization Attributes, P1003.1c/Draft 10, p. 81 diff --git a/cpukit/posix/src/mutexattrsetprioceiling.c b/cpukit/posix/src/mutexattrsetprioceiling.c index 357a73dbb2..ba377a99cc 100644 --- a/cpukit/posix/src/mutexattrsetprioceiling.c +++ b/cpukit/posix/src/mutexattrsetprioceiling.c @@ -26,7 +26,6 @@ #include #include #include -#include /* * 13.6.1 Mutex Initialization Scheduling Attributes, P1003.1c/Draft 10, p. 128 diff --git a/cpukit/posix/src/mutexattrsetprotocol.c b/cpukit/posix/src/mutexattrsetprotocol.c index 8d54cc4b54..eecc04b7ce 100644 --- a/cpukit/posix/src/mutexattrsetprotocol.c +++ b/cpukit/posix/src/mutexattrsetprotocol.c @@ -26,7 +26,6 @@ #include #include #include -#include /* * 13.6.1 Mutex Initialization Scheduling Attributes, P1003.1c/Draft 10, p. 128 diff --git a/cpukit/posix/src/mutexattrsetpshared.c b/cpukit/posix/src/mutexattrsetpshared.c index bff73c204b..bd94679b1a 100644 --- a/cpukit/posix/src/mutexattrsetpshared.c +++ b/cpukit/posix/src/mutexattrsetpshared.c @@ -26,7 +26,6 @@ #include #include #include -#include /* * 11.3.1 Mutex Initialization Attributes, P1003.1c/Draft 10, p. 81 diff --git a/cpukit/posix/src/mutexattrsettype.c b/cpukit/posix/src/mutexattrsettype.c index fee5e36d96..b188e463ef 100644 --- a/cpukit/posix/src/mutexattrsettype.c +++ b/cpukit/posix/src/mutexattrsettype.c @@ -26,7 +26,6 @@ #include #include #include -#include #if defined(_UNIX98_THREAD_MUTEX_ATTRIBUTES) int pthread_mutexattr_settype( diff --git a/cpukit/posix/src/mutexdestroy.c b/cpukit/posix/src/mutexdestroy.c index fce78af715..9ff3dba9f5 100644 --- a/cpukit/posix/src/mutexdestroy.c +++ b/cpukit/posix/src/mutexdestroy.c @@ -26,7 +26,6 @@ #include #include #include -#include /* * 11.3.2 Initializing and Destroying a Mutex, P1003.1c/Draft 10, p. 87 diff --git a/cpukit/posix/src/mutexgetprioceiling.c b/cpukit/posix/src/mutexgetprioceiling.c index 4bfc6a6f96..129f661576 100644 --- a/cpukit/posix/src/mutexgetprioceiling.c +++ b/cpukit/posix/src/mutexgetprioceiling.c @@ -26,7 +26,6 @@ #include #include #include -#include /* * 13.6.2 Change the Priority Ceiling of a Mutex, P1003.1c/Draft 10, p. 131 diff --git a/cpukit/posix/src/mutexinit.c b/cpukit/posix/src/mutexinit.c index fdaa6090ee..db7f6b8466 100644 --- a/cpukit/posix/src/mutexinit.c +++ b/cpukit/posix/src/mutexinit.c @@ -26,7 +26,6 @@ #include #include #include -#include /** * 11.3.2 Initializing and Destroying a Mutex, P1003.1c/Draft 10, p. 87 diff --git a/cpukit/posix/src/mutexlock.c b/cpukit/posix/src/mutexlock.c index 43114fdaca..d4cf4b74bd 100644 --- a/cpukit/posix/src/mutexlock.c +++ b/cpukit/posix/src/mutexlock.c @@ -26,7 +26,6 @@ #include #include #include -#include /* * 11.3.3 Locking and Unlocking a Mutex, P1003.1c/Draft 10, p. 93 diff --git a/cpukit/posix/src/mutexlocksupp.c b/cpukit/posix/src/mutexlocksupp.c index b63a89aa4e..cd95a976d8 100644 --- a/cpukit/posix/src/mutexlocksupp.c +++ b/cpukit/posix/src/mutexlocksupp.c @@ -26,7 +26,6 @@ #include #include #include -#include /* * _POSIX_Mutex_Lock_support diff --git a/cpukit/posix/src/mutexsetprioceiling.c b/cpukit/posix/src/mutexsetprioceiling.c index 32d92107cc..8b966bafc7 100644 --- a/cpukit/posix/src/mutexsetprioceiling.c +++ b/cpukit/posix/src/mutexsetprioceiling.c @@ -26,7 +26,6 @@ #include #include #include -#include /* * 13.6.2 Change the Priority Ceiling of a Mutex, P1003.1c/Draft 10, p. 131 diff --git a/cpukit/posix/src/mutextimedlock.c b/cpukit/posix/src/mutextimedlock.c index 30c4be7753..c2f00785e2 100644 --- a/cpukit/posix/src/mutextimedlock.c +++ b/cpukit/posix/src/mutextimedlock.c @@ -23,10 +23,9 @@ #include #include -#include +#include #include #include -#include /** * 11.3.3 Locking and Unlocking a Mutex, P1003.1c/Draft 10, p. 93 @@ -40,7 +39,7 @@ int pthread_mutex_timedlock( { Watchdog_Interval ticks; bool do_wait = true; - POSIX_Absolute_timeout_conversion_results_t status; + TOD_Absolute_timeout_conversion_results status; int lock_status; /* @@ -52,12 +51,12 @@ int pthread_mutex_timedlock( * then we do a polling operation and convert the UNSATISFIED * status into the appropriate error. * - * If the status is POSIX_ABSOLUTE_TIMEOUT_INVALID, - * POSIX_ABSOLUTE_TIMEOUT_IS_IN_PAST, or POSIX_ABSOLUTE_TIMEOUT_IS_NOW, + * If the status is TOD_ABSOLUTE_TIMEOUT_INVALID, + * TOD_ABSOLUTE_TIMEOUT_IS_IN_PAST, or TOD_ABSOLUTE_TIMEOUT_IS_NOW, * then we should not wait. */ - status = _POSIX_Absolute_timeout_to_ticks( abstime, &ticks ); - if ( status != POSIX_ABSOLUTE_TIMEOUT_IS_IN_FUTURE ) + status = _TOD_Absolute_timeout_to_ticks( abstime, &ticks ); + if ( status != TOD_ABSOLUTE_TIMEOUT_IS_IN_FUTURE ) do_wait = false; lock_status = _POSIX_Mutex_Lock_support( mutex, do_wait, ticks ); @@ -68,10 +67,10 @@ int pthread_mutex_timedlock( * make sure the right reason is returned. */ if ( !do_wait && (lock_status == EBUSY) ) { - if ( status == POSIX_ABSOLUTE_TIMEOUT_INVALID ) + if ( status == TOD_ABSOLUTE_TIMEOUT_INVALID ) return EINVAL; - if ( status == POSIX_ABSOLUTE_TIMEOUT_IS_IN_PAST || - status == POSIX_ABSOLUTE_TIMEOUT_IS_NOW ) + if ( status == TOD_ABSOLUTE_TIMEOUT_IS_IN_PAST || + status == TOD_ABSOLUTE_TIMEOUT_IS_NOW ) return ETIMEDOUT; } diff --git a/cpukit/posix/src/mutextrylock.c b/cpukit/posix/src/mutextrylock.c index e765e91e8e..d029ae5de6 100644 --- a/cpukit/posix/src/mutextrylock.c +++ b/cpukit/posix/src/mutextrylock.c @@ -26,7 +26,6 @@ #include #include #include -#include /** * 11.3.3 Locking and Unlocking a Mutex, P1003.1c/Draft 10, p. 93 diff --git a/cpukit/posix/src/mutexunlock.c b/cpukit/posix/src/mutexunlock.c index c5b2375d1a..a8b28db699 100644 --- a/cpukit/posix/src/mutexunlock.c +++ b/cpukit/posix/src/mutexunlock.c @@ -26,7 +26,6 @@ #include #include #include -#include /* * 11.3.3 Locking and Unlocking a Mutex, P1003.1c/Draft 10, p. 93 diff --git a/cpukit/posix/src/posixtimespecabsolutetimeout.c b/cpukit/posix/src/posixtimespecabsolutetimeout.c deleted file mode 100644 index f3029861d1..0000000000 --- a/cpukit/posix/src/posixtimespecabsolutetimeout.c +++ /dev/null @@ -1,88 +0,0 @@ -/** - * @file - * - * @brief Convert Absolute Timeout to Ticks - * @ingroup POSIX_TIMETYPES Time Types - */ - -/* - * COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. - */ - -#if HAVE_CONFIG_H -#include "config.h" -#endif - -#include - -#include -#include -#include -#include -#include - -#include -#include -#include -#include - -/* - * The abstime is a walltime. We turn it into an interval. - */ -POSIX_Absolute_timeout_conversion_results_t _POSIX_Absolute_timeout_to_ticks( - const struct timespec *abstime, - Watchdog_Interval *ticks_out -) -{ - struct timespec current_time; - struct timespec difference; - - - /* - * Make sure there is always a value returned. - */ - *ticks_out = 0; - - /* - * Is the absolute time even valid? - */ - if ( !_Timespec_Is_valid(abstime) ) - return POSIX_ABSOLUTE_TIMEOUT_INVALID; - - /* - * Is the absolute time in the past? - */ - _TOD_Get_as_timespec( ¤t_time ); - - if ( _Timespec_Less_than( abstime, ¤t_time ) ) - return POSIX_ABSOLUTE_TIMEOUT_IS_IN_PAST; - - /* - * How long until the requested absolute time? - */ - _Timespec_Subtract( ¤t_time, abstime, &difference ); - - /* - * Internally the SuperCore uses ticks, so convert to them. - */ - *ticks_out = _Timespec_To_ticks( &difference ); - - /* - * If the difference was 0, then the future is now. It is so bright - * we better wear shades. - */ - if ( !*ticks_out ) - return POSIX_ABSOLUTE_TIMEOUT_IS_NOW; - - /* - * This is the case we were expecting and it took this long to - * get here. - */ - return POSIX_ABSOLUTE_TIMEOUT_IS_IN_FUTURE; -} - diff --git a/cpukit/posix/src/prwlocktimedrdlock.c b/cpukit/posix/src/prwlocktimedrdlock.c index 38fcb1a9ad..20f66822fd 100644 --- a/cpukit/posix/src/prwlocktimedrdlock.c +++ b/cpukit/posix/src/prwlocktimedrdlock.c @@ -22,8 +22,8 @@ #include #include -#include #include +#include /* * pthread_rwlock_timedrdlock @@ -47,7 +47,7 @@ int pthread_rwlock_timedrdlock( Objects_Locations location; Watchdog_Interval ticks; bool do_wait = true; - POSIX_Absolute_timeout_conversion_results_t status; + TOD_Absolute_timeout_conversion_results status; Thread_Control *executing; /* @@ -59,12 +59,12 @@ int pthread_rwlock_timedrdlock( * then we do a polling operation and convert the UNSATISFIED * status into the appropriate error. * - * If the status is POSIX_ABSOLUTE_TIMEOUT_INVALID, - * POSIX_ABSOLUTE_TIMEOUT_IS_IN_PAST, or POSIX_ABSOLUTE_TIMEOUT_IS_NOW, + * If the status is TOD_ABSOLUTE_TIMEOUT_INVALID, + * TOD_ABSOLUTE_TIMEOUT_IS_IN_PAST, or TOD_ABSOLUTE_TIMEOUT_IS_NOW, * then we should not wait. */ - status = _POSIX_Absolute_timeout_to_ticks( abstime, &ticks ); - if ( status != POSIX_ABSOLUTE_TIMEOUT_IS_IN_FUTURE ) + status = _TOD_Absolute_timeout_to_ticks( abstime, &ticks ); + if ( status != TOD_ABSOLUTE_TIMEOUT_IS_IN_FUTURE ) do_wait = false; the_rwlock = _POSIX_RWLock_Get( rwlock, &location ); @@ -85,10 +85,10 @@ int pthread_rwlock_timedrdlock( _Objects_Put( &the_rwlock->Object ); if ( !do_wait ) { if ( executing->Wait.return_code == CORE_RWLOCK_UNAVAILABLE ) { - if ( status == POSIX_ABSOLUTE_TIMEOUT_INVALID ) + if ( status == TOD_ABSOLUTE_TIMEOUT_INVALID ) return EINVAL; - if ( status == POSIX_ABSOLUTE_TIMEOUT_IS_IN_PAST || - status == POSIX_ABSOLUTE_TIMEOUT_IS_NOW ) + if ( status == TOD_ABSOLUTE_TIMEOUT_IS_IN_PAST || + status == TOD_ABSOLUTE_TIMEOUT_IS_NOW ) return ETIMEDOUT; } } diff --git a/cpukit/posix/src/prwlocktimedwrlock.c b/cpukit/posix/src/prwlocktimedwrlock.c index 2f192d4045..f387dc3835 100644 --- a/cpukit/posix/src/prwlocktimedwrlock.c +++ b/cpukit/posix/src/prwlocktimedwrlock.c @@ -24,8 +24,8 @@ #include #include -#include #include +#include /* * pthread_rwlock_timedwrlock @@ -49,7 +49,7 @@ int pthread_rwlock_timedwrlock( Objects_Locations location; Watchdog_Interval ticks; bool do_wait = true; - POSIX_Absolute_timeout_conversion_results_t status; + TOD_Absolute_timeout_conversion_results status; Thread_Control *executing; /* @@ -61,12 +61,12 @@ int pthread_rwlock_timedwrlock( * then we do a polling operation and convert the UNSATISFIED * status into the appropriate error. * - * If the status is POSIX_ABSOLUTE_TIMEOUT_INVALID, - * POSIX_ABSOLUTE_TIMEOUT_IS_IN_PAST, or POSIX_ABSOLUTE_TIMEOUT_IS_NOW, + * If the status is TOD_ABSOLUTE_TIMEOUT_INVALID, + * TOD_ABSOLUTE_TIMEOUT_IS_IN_PAST, or TOD_ABSOLUTE_TIMEOUT_IS_NOW, * then we should not wait. */ - status = _POSIX_Absolute_timeout_to_ticks( abstime, &ticks ); - if ( status != POSIX_ABSOLUTE_TIMEOUT_IS_IN_FUTURE ) + status = _TOD_Absolute_timeout_to_ticks( abstime, &ticks ); + if ( status != TOD_ABSOLUTE_TIMEOUT_IS_IN_FUTURE ) do_wait = false; the_rwlock = _POSIX_RWLock_Get( rwlock, &location ); @@ -87,10 +87,10 @@ int pthread_rwlock_timedwrlock( _Objects_Put( &the_rwlock->Object ); if ( !do_wait && (executing->Wait.return_code == CORE_RWLOCK_UNAVAILABLE) ) { - if ( status == POSIX_ABSOLUTE_TIMEOUT_INVALID ) + if ( status == TOD_ABSOLUTE_TIMEOUT_INVALID ) return EINVAL; - if ( status == POSIX_ABSOLUTE_TIMEOUT_IS_IN_PAST || - status == POSIX_ABSOLUTE_TIMEOUT_IS_NOW ) + if ( status == TOD_ABSOLUTE_TIMEOUT_IS_IN_PAST || + status == TOD_ABSOLUTE_TIMEOUT_IS_NOW ) return ETIMEDOUT; } diff --git a/cpukit/posix/src/psignal.c b/cpukit/posix/src/psignal.c index 3ca0723860..1f945362cf 100644 --- a/cpukit/posix/src/psignal.c +++ b/cpukit/posix/src/psignal.c @@ -31,7 +31,6 @@ #include #include #include -#include #include #include diff --git a/cpukit/posix/src/psignalchecksignal.c b/cpukit/posix/src/psignalchecksignal.c index d71bfb46d3..2f9fe10a5a 100644 --- a/cpukit/posix/src/psignalchecksignal.c +++ b/cpukit/posix/src/psignalchecksignal.c @@ -34,7 +34,6 @@ #include #include #include -#include #include bool _POSIX_signals_Check_signal( diff --git a/cpukit/posix/src/psignalclearsignals.c b/cpukit/posix/src/psignalclearsignals.c index 8999145941..18bdea5d18 100644 --- a/cpukit/posix/src/psignalclearsignals.c +++ b/cpukit/posix/src/psignalclearsignals.c @@ -30,7 +30,6 @@ #include #include #include -#include #include /* diff --git a/cpukit/posix/src/psignalsetprocesssignals.c b/cpukit/posix/src/psignalsetprocesssignals.c index f54e779b07..8a2586435c 100644 --- a/cpukit/posix/src/psignalsetprocesssignals.c +++ b/cpukit/posix/src/psignalsetprocesssignals.c @@ -30,7 +30,6 @@ #include #include #include -#include #include void _POSIX_signals_Set_process_signals( diff --git a/cpukit/posix/src/psignalunblockthread.c b/cpukit/posix/src/psignalunblockthread.c index 200e9e714b..fd5c30bdf2 100644 --- a/cpukit/posix/src/psignalunblockthread.c +++ b/cpukit/posix/src/psignalunblockthread.c @@ -32,7 +32,6 @@ #include #include #include -#include #include static bool _POSIX_signals_Unblock_thread_done( diff --git a/cpukit/posix/src/psxtransschedparam.c b/cpukit/posix/src/psxtransschedparam.c index 2069b627c8..89fadde253 100644 --- a/cpukit/posix/src/psxtransschedparam.c +++ b/cpukit/posix/src/psxtransschedparam.c @@ -24,7 +24,6 @@ #include #include #include -#include int _POSIX_Thread_Translate_sched_param( int policy, diff --git a/cpukit/posix/src/pthread.c b/cpukit/posix/src/pthread.c index dc31449d82..283ffdfbc0 100644 --- a/cpukit/posix/src/pthread.c +++ b/cpukit/posix/src/pthread.c @@ -39,7 +39,6 @@ #include #include #include -#include #include #include #include diff --git a/cpukit/posix/src/pthreadcreate.c b/cpukit/posix/src/pthreadcreate.c index 498242c02b..59c4e66e9d 100644 --- a/cpukit/posix/src/pthreadcreate.c +++ b/cpukit/posix/src/pthreadcreate.c @@ -27,7 +27,6 @@ #include #include -#include #include #include #include diff --git a/cpukit/posix/src/pthreadinitthreads.c b/cpukit/posix/src/pthreadinitthreads.c index 3738dc44e1..3379b7968c 100644 --- a/cpukit/posix/src/pthreadinitthreads.c +++ b/cpukit/posix/src/pthreadinitthreads.c @@ -33,7 +33,6 @@ #include #include #include -#include #include void _POSIX_Threads_Initialize_user_threads_body(void) diff --git a/cpukit/posix/src/pthreadsetschedparam.c b/cpukit/posix/src/pthreadsetschedparam.c index 067e6ba509..c3be366818 100644 --- a/cpukit/posix/src/pthreadsetschedparam.c +++ b/cpukit/posix/src/pthreadsetschedparam.c @@ -27,7 +27,6 @@ #include #include -#include #include #include #include diff --git a/cpukit/posix/src/ptimer.c b/cpukit/posix/src/ptimer.c index 684ad071c8..a1e06373b8 100644 --- a/cpukit/posix/src/ptimer.c +++ b/cpukit/posix/src/ptimer.c @@ -27,7 +27,6 @@ #include #include -#include /************************************/ /* These includes are now necessary */ diff --git a/cpukit/posix/src/rwlockattrdestroy.c b/cpukit/posix/src/rwlockattrdestroy.c index 3b601f94cb..19bf0ff200 100644 --- a/cpukit/posix/src/rwlockattrdestroy.c +++ b/cpukit/posix/src/rwlockattrdestroy.c @@ -24,7 +24,6 @@ #include #include #include -#include #include /* diff --git a/cpukit/posix/src/sched_getscheduler.c b/cpukit/posix/src/sched_getscheduler.c index 79233ec351..b746a7cb52 100644 --- a/cpukit/posix/src/sched_getscheduler.c +++ b/cpukit/posix/src/sched_getscheduler.c @@ -27,7 +27,6 @@ #include #include #include -#include int sched_getscheduler( pid_t pid __attribute__((unused)) diff --git a/cpukit/posix/src/sched_setparam.c b/cpukit/posix/src/sched_setparam.c index 215e72df39..dbb45303bc 100644 --- a/cpukit/posix/src/sched_setparam.c +++ b/cpukit/posix/src/sched_setparam.c @@ -27,7 +27,6 @@ #include #include #include -#include int sched_setparam( pid_t pid __attribute__((unused)), diff --git a/cpukit/posix/src/sched_setscheduler.c b/cpukit/posix/src/sched_setscheduler.c index 0bf9c6d854..1fe7631bc5 100644 --- a/cpukit/posix/src/sched_setscheduler.c +++ b/cpukit/posix/src/sched_setscheduler.c @@ -25,7 +25,6 @@ #include #include #include -#include int sched_setscheduler( pid_t pid __attribute__((unused)), diff --git a/cpukit/posix/src/semaphore.c b/cpukit/posix/src/semaphore.c index e97b3f42dc..5830373d3a 100644 --- a/cpukit/posix/src/semaphore.c +++ b/cpukit/posix/src/semaphore.c @@ -29,7 +29,6 @@ #include #include #include -#include #include /* diff --git a/cpukit/posix/src/semaphorecreatesupp.c b/cpukit/posix/src/semaphorecreatesupp.c index 7751a58c0e..e4187d697d 100644 --- a/cpukit/posix/src/semaphorecreatesupp.c +++ b/cpukit/posix/src/semaphorecreatesupp.c @@ -30,7 +30,6 @@ #include #include #include -#include #include /* diff --git a/cpukit/posix/src/semaphoredeletesupp.c b/cpukit/posix/src/semaphoredeletesupp.c index 38bf80672c..d9cf1d3cb7 100644 --- a/cpukit/posix/src/semaphoredeletesupp.c +++ b/cpukit/posix/src/semaphoredeletesupp.c @@ -28,7 +28,6 @@ #include #include -#include #include void _POSIX_Semaphore_Delete( diff --git a/cpukit/posix/src/semaphorewaitsupp.c b/cpukit/posix/src/semaphorewaitsupp.c index 8b36561983..5c055bea41 100644 --- a/cpukit/posix/src/semaphorewaitsupp.c +++ b/cpukit/posix/src/semaphorewaitsupp.c @@ -28,7 +28,6 @@ #include #include -#include #include int _POSIX_Semaphore_Wait_support( diff --git a/cpukit/posix/src/semclose.c b/cpukit/posix/src/semclose.c index 9dedc34c1a..f134dc43a7 100644 --- a/cpukit/posix/src/semclose.c +++ b/cpukit/posix/src/semclose.c @@ -28,7 +28,6 @@ #include #include -#include #include int sem_close( diff --git a/cpukit/posix/src/semdestroy.c b/cpukit/posix/src/semdestroy.c index 9a8a993c81..896dece149 100644 --- a/cpukit/posix/src/semdestroy.c +++ b/cpukit/posix/src/semdestroy.c @@ -28,7 +28,6 @@ #include #include -#include #include int sem_destroy( diff --git a/cpukit/posix/src/semgetvalue.c b/cpukit/posix/src/semgetvalue.c index 6f433399d1..ed49c09d38 100644 --- a/cpukit/posix/src/semgetvalue.c +++ b/cpukit/posix/src/semgetvalue.c @@ -28,7 +28,6 @@ #include #include -#include #include int sem_getvalue( diff --git a/cpukit/posix/src/seminit.c b/cpukit/posix/src/seminit.c index a55a1c4e1b..cc47312172 100644 --- a/cpukit/posix/src/seminit.c +++ b/cpukit/posix/src/seminit.c @@ -28,7 +28,6 @@ #include #include -#include #include /* diff --git a/cpukit/posix/src/semopen.c b/cpukit/posix/src/semopen.c index 4e5b61c44f..3a9dc63952 100644 --- a/cpukit/posix/src/semopen.c +++ b/cpukit/posix/src/semopen.c @@ -28,7 +28,6 @@ #include #include -#include #include /* diff --git a/cpukit/posix/src/sempost.c b/cpukit/posix/src/sempost.c index 9c8c673ddb..aa0c974117 100644 --- a/cpukit/posix/src/sempost.c +++ b/cpukit/posix/src/sempost.c @@ -28,7 +28,6 @@ #include #include -#include #include int sem_post( diff --git a/cpukit/posix/src/semtimedwait.c b/cpukit/posix/src/semtimedwait.c index 6427f70436..58d6e24ed9 100644 --- a/cpukit/posix/src/semtimedwait.c +++ b/cpukit/posix/src/semtimedwait.c @@ -27,8 +27,8 @@ #include #include +#include #include -#include #include /* @@ -44,7 +44,7 @@ int sem_timedwait( { Watchdog_Interval ticks; bool do_wait = true; - POSIX_Absolute_timeout_conversion_results_t status; + TOD_Absolute_timeout_conversion_results status; int lock_status; /* @@ -56,12 +56,12 @@ int sem_timedwait( * then we do a polling operation and convert the UNSATISFIED * status into the appropriate error. * - * If the status is POSIX_ABSOLUTE_TIMEOUT_INVALID, - * POSIX_ABSOLUTE_TIMEOUT_IS_IN_PAST, or POSIX_ABSOLUTE_TIMEOUT_IS_NOW, + * If the status is TOD_ABSOLUTE_TIMEOUT_INVALID, + * TOD_ABSOLUTE_TIMEOUT_IS_IN_PAST, or TOD_ABSOLUTE_TIMEOUT_IS_NOW, * then we should not wait. */ - status = _POSIX_Absolute_timeout_to_ticks( abstime, &ticks ); - if ( status != POSIX_ABSOLUTE_TIMEOUT_IS_IN_FUTURE ) + status = _TOD_Absolute_timeout_to_ticks( abstime, &ticks ); + if ( status != TOD_ABSOLUTE_TIMEOUT_IS_IN_FUTURE ) do_wait = false; lock_status = _POSIX_Semaphore_Wait_support( sem, do_wait, ticks ); @@ -73,10 +73,10 @@ int sem_timedwait( * make sure the right reason is returned. */ if ( !do_wait && (lock_status == EBUSY) ) { - if ( lock_status == POSIX_ABSOLUTE_TIMEOUT_INVALID ) + if ( lock_status == TOD_ABSOLUTE_TIMEOUT_INVALID ) rtems_set_errno_and_return_minus_one( EINVAL ); - if ( lock_status == POSIX_ABSOLUTE_TIMEOUT_IS_IN_PAST || - lock_status == POSIX_ABSOLUTE_TIMEOUT_IS_NOW ) + if ( lock_status == TOD_ABSOLUTE_TIMEOUT_IS_IN_PAST || + lock_status == TOD_ABSOLUTE_TIMEOUT_IS_NOW ) rtems_set_errno_and_return_minus_one( ETIMEDOUT ); } diff --git a/cpukit/posix/src/semtrywait.c b/cpukit/posix/src/semtrywait.c index addc071144..a6836d8eaf 100644 --- a/cpukit/posix/src/semtrywait.c +++ b/cpukit/posix/src/semtrywait.c @@ -28,7 +28,6 @@ #include #include -#include #include int sem_trywait( diff --git a/cpukit/posix/src/semunlink.c b/cpukit/posix/src/semunlink.c index d5b6de7d20..863d25801d 100644 --- a/cpukit/posix/src/semunlink.c +++ b/cpukit/posix/src/semunlink.c @@ -28,7 +28,6 @@ #include #include -#include #include int sem_unlink( diff --git a/cpukit/posix/src/semwait.c b/cpukit/posix/src/semwait.c index 88324e5580..30cf5ad344 100644 --- a/cpukit/posix/src/semwait.c +++ b/cpukit/posix/src/semwait.c @@ -28,7 +28,6 @@ #include #include -#include #include int sem_wait( diff --git a/cpukit/posix/src/sigtimedwait.c b/cpukit/posix/src/sigtimedwait.c index 7a8c29ed71..a78e88cef0 100644 --- a/cpukit/posix/src/sigtimedwait.c +++ b/cpukit/posix/src/sigtimedwait.c @@ -26,7 +26,6 @@ #include #include #include -#include #include static int _POSIX_signals_Get_lowest( diff --git a/cpukit/posix/src/timercreate.c b/cpukit/posix/src/timercreate.c index a5261cc57a..697f1ceee1 100644 --- a/cpukit/posix/src/timercreate.c +++ b/cpukit/posix/src/timercreate.c @@ -28,7 +28,6 @@ #include #include #include -#include #include #include diff --git a/cpukit/posix/src/timerdelete.c b/cpukit/posix/src/timerdelete.c index e090be2aca..8438b0d5b0 100644 --- a/cpukit/posix/src/timerdelete.c +++ b/cpukit/posix/src/timerdelete.c @@ -28,7 +28,6 @@ #include #include #include -#include #include diff --git a/cpukit/posix/src/timersettime.c b/cpukit/posix/src/timersettime.c index 2a8cec7652..fe54ff95c1 100644 --- a/cpukit/posix/src/timersettime.c +++ b/cpukit/posix/src/timersettime.c @@ -23,7 +23,6 @@ #include #include -#include #include #include #include diff --git a/cpukit/posix/src/timertsr.c b/cpukit/posix/src/timertsr.c index 512dd06d38..efbfd315d2 100644 --- a/cpukit/posix/src/timertsr.c +++ b/cpukit/posix/src/timertsr.c @@ -24,7 +24,6 @@ #include #include -#include #include #include #include diff --git a/cpukit/posix/src/ualarm.c b/cpukit/posix/src/ualarm.c index dc271b44a8..256d91b116 100644 --- a/cpukit/posix/src/ualarm.c +++ b/cpukit/posix/src/ualarm.c @@ -23,7 +23,6 @@ #include #include -#include #include #include #include diff --git a/cpukit/sapi/src/posixapi.c b/cpukit/sapi/src/posixapi.c index 17ec14319f..4bdb69425c 100644 --- a/cpukit/sapi/src/posixapi.c +++ b/cpukit/sapi/src/posixapi.c @@ -43,7 +43,6 @@ #include #include #include -#include #endif void _POSIX_Fatal_error( POSIX_Fatal_domain domain, int eno ) diff --git a/cpukit/score/Makefile.am b/cpukit/score/Makefile.am index 3e612d4cf8..950004d66c 100644 --- a/cpukit/score/Makefile.am +++ b/cpukit/score/Makefile.am @@ -324,6 +324,7 @@ libscore_a_SOURCES += src/coretod.c src/coretodset.c \ src/coretodtickle.c \ src/coretodtickspersec.c \ src/coretodadjust.c +libscore_a_SOURCES += src/coretodabsolutetimeout.c ## WATCHDOG_C_FILES libscore_a_SOURCES += src/watchdog.c src/watchdogadjust.c \ diff --git a/cpukit/score/include/rtems/score/todimpl.h b/cpukit/score/include/rtems/score/todimpl.h index 56c176d920..a94b140d92 100644 --- a/cpukit/score/include/rtems/score/todimpl.h +++ b/cpukit/score/include/rtems/score/todimpl.h @@ -21,6 +21,7 @@ #include #include #include +#include #include #include @@ -339,6 +340,44 @@ RTEMS_INLINE_ROUTINE bool _TOD_Is_set( void ) return _TOD.is_set; } +/** + * @brief Absolute timeout conversion results. + * + * This enumeration defines the possible results of converting + * an absolute time used for timeouts to POSIX blocking calls to + * a number of ticks for example. + */ +typedef enum { + /** The timeout is invalid. */ + TOD_ABSOLUTE_TIMEOUT_INVALID, + /** The timeout represents a time that is in the past. */ + TOD_ABSOLUTE_TIMEOUT_IS_IN_PAST, + /** The timeout represents a time that is equal to the current time. */ + TOD_ABSOLUTE_TIMEOUT_IS_NOW, + /** The timeout represents a time that is in the future. */ + TOD_ABSOLUTE_TIMEOUT_IS_IN_FUTURE, +} TOD_Absolute_timeout_conversion_results; + +/** + * @brief Convert absolute timeout to ticks. + * + * This method takes an absolute time being used as a timeout + * to a blocking directive, validates it and returns the number + * of corresponding clock ticks for use by the SuperCore. + * + * @param[in] abstime is a pointer to the timeout + * @param[out] ticks_out will contain the number of ticks + * + * @return This method returns the number of ticks in @a ticks_out + * and a status value indicating whether the absolute time + * is valid, in the past, equal to the current time or in + * the future as it should be. + */ +TOD_Absolute_timeout_conversion_results _TOD_Absolute_timeout_to_ticks( + const struct timespec *abstime, + Watchdog_Interval *ticks_out +); + /**@}*/ #ifdef __cplusplus diff --git a/cpukit/score/src/coretodabsolutetimeout.c b/cpukit/score/src/coretodabsolutetimeout.c new file mode 100644 index 0000000000..6c9ffc22d5 --- /dev/null +++ b/cpukit/score/src/coretodabsolutetimeout.c @@ -0,0 +1,77 @@ +/** + * @file + * + * @brief Convert Absolute Timeout to Ticks + * @ingroup ScoreTOD + */ + +/* + * COPYRIGHT (c) 1989-2008. + * On-Line Applications Research Corporation (OAR). + * + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.org/license/LICENSE. + */ + +#if HAVE_CONFIG_H +#include "config.h" +#endif + +#include + +/* + * The abstime is a walltime. We turn it into an interval. + */ +TOD_Absolute_timeout_conversion_results _TOD_Absolute_timeout_to_ticks( + const struct timespec *abstime, + Watchdog_Interval *ticks_out +) +{ + struct timespec current_time; + struct timespec difference; + + + /* + * Make sure there is always a value returned. + */ + *ticks_out = 0; + + /* + * Is the absolute time even valid? + */ + if ( !_Timespec_Is_valid(abstime) ) + return TOD_ABSOLUTE_TIMEOUT_INVALID; + + /* + * Is the absolute time in the past? + */ + _TOD_Get_as_timespec( ¤t_time ); + + if ( _Timespec_Less_than( abstime, ¤t_time ) ) + return TOD_ABSOLUTE_TIMEOUT_IS_IN_PAST; + + /* + * How long until the requested absolute time? + */ + _Timespec_Subtract( ¤t_time, abstime, &difference ); + + /* + * Internally the SuperCore uses ticks, so convert to them. + */ + *ticks_out = _Timespec_To_ticks( &difference ); + + /* + * If the difference was 0, then the future is now. It is so bright + * we better wear shades. + */ + if ( !*ticks_out ) + return TOD_ABSOLUTE_TIMEOUT_IS_NOW; + + /* + * This is the case we were expecting and it took this long to + * get here. + */ + return TOD_ABSOLUTE_TIMEOUT_IS_IN_FUTURE; +} + -- cgit v1.2.3