summaryrefslogtreecommitdiff
path: root/cpukit/posix (follow)
AgeCommit message (Collapse)Author
2009-12-102009-12-10 Joel Sherrill <joel.sherrill@OARcorp.com>Joel Sherrill
PR 1482 * posix/src/ptimer1.c: Exit dispatching critical section.
2008-08-152008-08-15 Joel Sherrill <joel.sherrill@OARcorp.com>Joel Sherrill
PR 1297/cpukit * posix/src/prwlockinit.c: Fix NULL attribute pointer handling.
2008-07-222008-07-18 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill
PR 1291/cpukit * itron/inline/rtems/itron/semaphore.inl, itron/src/twai_sem.c, posix/include/mqueue.h, posix/include/rtems/posix/mqueue.h, posix/include/rtems/posix/semaphore.h, posix/include/rtems/posix/time.h, posix/src/condtimedwait.c, posix/src/mqueuereceive.c, posix/src/mqueuerecvsupp.c, posix/src/mqueuesend.c, posix/src/mqueuesendsupp.c, posix/src/mqueuetimedreceive.c, posix/src/mqueuetimedsend.c, posix/src/mutextimedlock.c, posix/src/mutextranslatereturncode.c, posix/src/posixtimespecabsolutetimeout.c, posix/src/prwlocktimedrdlock.c, posix/src/prwlocktimedwrlock.c, posix/src/semaphoretranslatereturncode.c, posix/src/semaphorewaitsupp.c, posix/src/semtimedwait.c, posix/src/semtrywait.c, posix/src/semwait.c, posix/src/sigtimedwait.c, posix/src/timersettime.c, posix/src/ualarm.c, rtems/src/semobtain.c, rtems/src/semtranslatereturncode.c, score/include/rtems/score/coremutex.h, score/include/rtems/score/coresem.h, score/src/coresemseize.c: This patch addresses issues on implementation of the timeout on the following POSIX services. Some of these services incorrectly took a timeout as a relative time. Others would compute a 0 delta to timeout if the absolute time and the current time were equal and thus incorrectly block the caller forever. The root of the confusion is that POSIX specifies that if the timeout is incorrect (e.g. in the past, is now, or is numerically invalid), that it does not matter if the call would succeed without blocking. This is in contrast to RTEMS programming style where all errors are checked before any critical sections are entered. This fix implemented a more uniform way of handling POSIX absolute time timeouts. + pthread_cond_timedwait - could block forever + mq_timedreceive - used relative not absolute time + mq_timedsend - used relative not absolute time + pthread_mutex_timedlock - used relative not absolute time + pthread_rwlock_timedrdlock- used relative not absolute time + pthread_rwlock_timedwrlock- used relative not absolute time + sem_timedwait - could block forever
2008-02-052008-02-05 Joel Sherrill <joel.sherrill@OARcorp.com>Joel Sherrill
* posix/Makefile.am: Remove these. They were proposed but never standardized. * posix/src/pthreadgetcputime.c, posix/src/pthreadsetcputime.c: Removed.
2007-11-272007-11-27 Glenn Humphrey <glenn.humphrey@OARcorp.com>Glenn Humphrey
* posix/src/prwlocktimedrdlock.c, posix/src/prwlocktimedwrlock.c, rtems/include/rtems/rtems/barrier.h, score/src/corerwlockobtainread.c, score/src/corerwlockobtainwrite.c, score/src/corerwlockrelease.c: Fixed several implementation errors.
2007-11-062007-11-06 Joel Sherrill <joel.sherrill@OARcorp.com>Joel Sherrill
PR 1266/cpukit * posix/src/keycreate.c, posix/src/keyrundestructors.c: Use API instead of class for key indexing.
2007-11-062007-11-06 Glenn Humphrey <glenn.humphrey@OARcorp.com>Glenn Humphrey
Miscellaneous changes made after a review against the POSIX spec. * posix/src/pbarrierinit.c, posix/src/prwlockinit.c: If the caller passes a NULL in the attributes parameter, default attributes are used. * posix/src/prwlockdestroy.c: If there is at least one thread waiting, do not allow deletion. * posix/src/prwlockwrlock.c: Corrected parameter passed to the core operation used to obtain a RWLock for writing. * posix/src/pspinlocktranslatereturncode.c, score/include/rtems/score/corespinlock.h, score/src/corespinlockrelease.c: If the current thread is not the holder of the lock, do not allow an unlock and return EPERM. * score/src/corerwlockobtainwrite.c: Corrected to use the operation for queueing with a timeout handler.
2007-09-172007-09-17 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill
* posix/src/semaphorecreatesupp.c: Fixed warning.
2007-09-142007-09-14 Joel Sherrill <joel.sherrill@OARcorp.com>Joel Sherrill
PR 1261/cpukit * posix/src/semaphorecreatesupp.c: Initialize all fields during semaphore creation.
2007-09-142007-09-14 Joel Sherrill <joel.sherrill@OARcorp.com>Joel Sherrill
PR 1260/cpukit * posix/src/pthread.c: Get initial signals blocked from creating thread not from ourselves.
2007-08-282007-08-28 Joel Sherrill <joel.sherrill@OARcorp.com>Joel Sherrill
* posix/Makefile.am: Always build nanosleep.
2007-04-172007-04-17 Joel Sherrill <joel@OARcorp.com>Joel Sherrill
* itron/Makefile.am, itron/src/eventflags.c, itron/src/fmempool.c, itron/src/itronintr.c, itron/src/itrontime.c, itron/src/network.c, itron/src/port.c, itron/src/sysmgmt.c, itron/src/task.c, itron/src/vmempool.c, posix/Makefile.am, posix/src/pthread.c, rtems/src/taskinitusers.c, rtems/src/tasks.c, sapi/include/confdefs.h, sapi/src/io.c: Various modification to reduce executable size. Most were refactoring of files. Split ITRON API files. Implemented mechanism to avoid initialization task/thread loop being linked in when that style of task initialization was not being used. * itron/src/acp_por.c, itron/src/act_cyc.c, itron/src/cal_por.c, itron/src/chg_iXX.c, itron/src/clr_flg.c, itron/src/cre_flg.c, itron/src/cre_mpf.c, itron/src/cre_mpl.c, itron/src/cre_por.c, itron/src/def_alm.c, itron/src/def_cyc.c, itron/src/def_exc.c, itron/src/def_int.c, itron/src/def_svc.c, itron/src/del_flg.c, itron/src/del_mpf.c, itron/src/del_mpl.c, itron/src/del_por.c, itron/src/dis_int.c, itron/src/dly_tsk.c, itron/src/ena_int.c, itron/src/fwd_por.c, itron/src/get_blf.c, itron/src/get_blk.c, itron/src/get_tim.c, itron/src/get_ver.c, itron/src/itroninittasks.c, itron/src/loc_cpu.c, itron/src/nget_nod.c, itron/src/nget_ver.c, itron/src/nrea_dat.c, itron/src/nwri_dat.c, itron/src/pacp_por.c, itron/src/pcal_por.c, itron/src/pget_blf.c, itron/src/pget_blk.c, itron/src/pol_flg.c, itron/src/ref_alm.c, itron/src/ref_cfg.c, itron/src/ref_cyc.c, itron/src/ref_flg.c, itron/src/ref_iXX.c, itron/src/ref_mpf.c, itron/src/ref_mpl.c, itron/src/ref_por.c, itron/src/ref_sys.c, itron/src/rel_blf.c, itron/src/rel_blk.c, itron/src/ret_int.c, itron/src/ret_tmr.c, itron/src/ret_wup.c, itron/src/rpl_rdv.c, itron/src/set_flg.c, itron/src/set_tim.c, itron/src/tacp_por.c, itron/src/tcal_por.c, itron/src/tget_blf.c, itron/src/tget_blk.c, itron/src/twai_flg.c, itron/src/unl_cpu.c, itron/src/wai_flg.c, posix/src/pthreadinitthreads.c: New files.
2007-04-142007-04-14 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius
* posix/src/usleep.c, libcsupport/src/readlink.c: Update API to SUSv3.
2007-04-13Regenerate.Ralf Corsepius
2007-04-132007-04-13 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius
* posix/Makefile.am: Unconditionally build src/sleep.c, src/usleep.c.
2007-04-13#ifdef CLOCK_MONOTONIC the CLOCK_MONOTONIC case.Ralf Corsepius
2007-04-13Cosmetics.Ralf Corsepius
2007-04-13Regenerate.Ralf Corsepius
2007-04-13Rename AM_CONDITIONAL(HAS_POSIX) into LIBPOSIX.Ralf Corsepius
2007-04-13Don't include rtems/posix/time.hRalf Corsepius
2007-04-132007-04-13 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius
* posix/src/nanosleep.c: Include rtems/score/timespec.h instead of rtems/posix/time.h.
2007-04-052007-04-05 Joel Sherrill <joel@OARcorp.com>Joel Sherrill
* posix/Makefile.am: Fix formatting.
2007-04-052007-04-05 Joel Sherrill <joel@OARcorp.com>Joel Sherrill
* posix/Makefile.am, posix/include/rtems/posix/time.h, posix/src/adjtime.c, posix/src/alarm.c, posix/src/clockgetres.c, posix/src/condtimedwait.c, posix/src/mqueuetimedreceive.c, posix/src/mqueuetimedsend.c, posix/src/mutextimedlock.c, posix/src/nanosleep.c, posix/src/posixtimespecabsolutetimeout.c, posix/src/pthread.c, posix/src/pthreadcreate.c, posix/src/pthreadsetschedparam.c, posix/src/ptimer1.c, posix/src/sched.c, posix/src/semtimedwait.c, posix/src/sigtimedwait.c, posix/src/ualarm.c, rtems/src/clocktodtoseconds.c, score/Makefile.am, score/preinstall.am, score/include/rtems/score/tod.h, score/inline/rtems/score/tod.inl, score/src/coretod.c, score/src/coretodget.c, score/src/coretodgetuptime.c, score/src/coretodset.c, score/src/coretodtickle.c: Provide timespec manipulation routines in the SuperCore. Use them everywhere possible. This lead to significant cleanup in the API routines and eliminated some of the same code from the POSIX API. At this point, the SuperCore keeps time in POSIX timespec format properly from 1970. You just cannot set it before 1988 in keeping with RTEMS traditional behavior. * score/include/rtems/score/timespec.h, score/src/timespecaddto.c, score/src/timespecfromticks.c, score/src/timespecisvalid.c, score/src/timespeclessthan.c, score/src/timespecsubtract.c, score/src/timespectoticks.c: New files. * posix/src/posixintervaltotimespec.c, posix/src/posixtimespecsubtract.c, posix/src/posixtimespectointerval.c: Removed.
2007-04-022007-04-02 Joel Sherrill <joel@OARcorp.com>Joel Sherrill
* posix/Makefile.am, score/src/objectgetnoprotection.c: Eliminate some dead code. * posix/src/time.c: Removed.
2007-04-022007-04-02 Joel Sherrill <joel@OARcorp.com>Joel Sherrill
* posix/include/rtems/posix/timer.h, posix/src/alarm.c, posix/src/posixtimespectointerval.c, posix/src/ptimer1.c, posix/src/sysconf.c, posix/src/ualarm.c, rtems/src/clockget.c, rtems/src/clocktodvalidate.c, score/include/rtems/score/tod.h, score/inline/rtems/score/tod.inl, score/src/coretod.c: Eliminate TOD_Ticks_per_second variable.
2007-04-022007-04-02 Joel Sherrill <joel@OARcorp.com>Joel Sherrill
* itron/src/itrontime.c, libcsupport/src/__gettod.c, posix/include/rtems/posix/time.h, posix/include/rtems/posix/timer.h, posix/src/clockgettime.c, posix/src/clocksettime.c, posix/src/nanosleep.c, posix/src/posixtimespecsubtract.c, posix/src/posixtimespectointerval.c, posix/src/ptimer1.c, posix/src/sleep.c, rtems/Makefile.am, rtems/include/rtems/rtems/clock.h, rtems/include/rtems/rtems/timer.h, rtems/include/rtems/rtems/types.h, rtems/src/clockget.c, rtems/src/clockset.c, rtems/src/clocktodtoseconds.c, rtems/src/clocktodvalidate.c, rtems/src/taskwakewhen.c, score/Makefile.am, score/include/rtems/score/tod.h, score/inline/rtems/score/tod.inl, score/src/coretod.c, score/src/coretodset.c: Convert from Classic API style TOD_Control as fundamental time structure to POSIX struct timespec. Add clock_get_uptime(). * rtems/src/clockgetuptime.c, score/src/coretodget.c, score/src/coretodgetuptime.c: New files. * score/src/coretodtickle.c, score/src/coretodtoseconds.c, score/src/coretodvalidate.c: Removed.
2007-03-262007-03-26 Joel Sherrill <joel@OARcorp.com>Joel Sherrill
PR 1231/cpukit * posix/src/adasupp.c, posix/src/clockgetcpuclockid.c, posix/src/clockgetenableattr.c, posix/src/clockgetres.c, posix/src/clockgettime.c, posix/src/clocksetenableattr.c, posix/src/mutex.c, posix/src/mutexattrdestroy.c, posix/src/mutexattrgetprioceiling.c, posix/src/mutexattrgetprotocol.c, posix/src/mutexattrgetpshared.c, posix/src/mutexattrinit.c, posix/src/mutexattrsetprioceiling.c, posix/src/mutexattrsetprotocol.c, posix/src/mutexattrsetpshared.c, posix/src/mutexdefaultattributes.c, posix/src/mutexdestroy.c, posix/src/mutexgetprioceiling.c, posix/src/mutexlock.c, posix/src/mutexlocksupp.c, posix/src/mutexmp.c, posix/src/mutexsetprioceiling.c, posix/src/mutextimedlock.c, posix/src/mutextrylock.c, posix/src/mutexunlock.c, posix/src/nanosleep.c, posix/src/posixintervaltotimespec.c, posix/src/posixtimespecsubtract.c, posix/src/posixtimespectointerval.c, posix/src/psignalclearprocesssignals.c, posix/src/psignalclearsignals.c, posix/src/psignalsetprocesssignals.c, posix/src/psignalunblockthread.c, posix/src/ptimer.c, posix/src/ptimer1.c, posix/src/sched.c, posix/src/time.c: Remove unneeded includes of assert.h
2007-03-052007-03-05 Joel Sherrill <joel@OARcorp.com>Joel Sherrill
PR 1221/cpukit * posix/src/pthreadequal.c: Fix critical section nesting.
2007-02-06Remove getpagesize.c.Ralf Corsepius
2007-02-06Removed (moved to libcsupport/src).Ralf Corsepius
2007-02-062007-02-06 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius
* posix/src/sysconf.c: Add support for _SC_PAGESIZE (PR 1215).
2007-02-062007-02-06 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius
* posix/src/mqueuesendsupp.c: Remove cast to make broken const cast visible.
2007-02-06Use size_t for sizes.Ralf Corsepius
2007-02-05Use size_t for sizes.Ralf Corsepius
2007-01-08Regenerate.Ralf Corsepius
2007-01-022007-01-02 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius
* posix/include/aio.h: s/aoi_lio_opcode/aio_lio_opcode/ (BZ 1203).
2006-12-042006-12-04 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill
* posix/src/prwlockunlock.c, rtems/Makefile.am, rtems/src/barrierrelease.c, rtems/src/barrierwait.c, score/src/corerwlockobtainread.c, score/src/corerwlockrelease.c: Complete implementation of barrier as the rest of the test code is now implemented. Also add blocking code to rwlock.
2006-11-172006-11-17 Joel Sherrill <joel@OARcorp.com>Joel Sherrill
* posix/src/semtimedwait.c: Used wrong constant for blocking with bad timeout value.
2006-11-172006-11-17 Joel Sherrill <joel@OARcorp.com>Joel Sherrill
* posix/src/semtimedwait.c: Reverse accidentally included semtimedwait.c.
2006-11-172006-11-17 Joel Sherrill <joel@OARcorp.com>Joel Sherrill
* posix/src/keygetspecific.c, posix/src/keysetspecific.c, posix/src/semtimedwait.c: Correct indexing of key data to use api and index NOT class and index. Class is always 1.
2006-11-152006-11-15 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill
* posix/Makefile.am: Add file missed in previous commit. * posix/src/posixtimespecabsolutetimeout.c: New file.
2006-11-15Regenerate.Ralf Corsepius
2006-11-152006-11-15 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill
* libcsupport/src/termios.c, posix/Makefile.am, posix/preinstall.am, posix/include/rtems/posix/config.h, posix/include/rtems/posix/time.h, sapi/src/posixapi.c, score/Makefile.am, score/preinstall.am, score/include/rtems/score/corerwlock.h, score/include/rtems/score/threadq.h, score/src/corerwlockobtainread.c, score/src/threadqenqueue.c, score/src/threadqtimeout.c: Adding POSIX barriers, POSIX spinlocks, and partial implementation of POSIX rwlocks. * posix/include/rtems/posix/barrier.h, posix/include/rtems/posix/rwlock.h, posix/include/rtems/posix/spinlock.h, posix/inline/rtems/posix/barrier.inl, posix/inline/rtems/posix/rwlock.inl, posix/inline/rtems/posix/spinlock.inl, posix/src/barrierattrdestroy.c, posix/src/barrierattrgetpshared.c, posix/src/barrierattrinit.c, posix/src/barrierattrsetpshared.c, posix/src/pbarrier.c, posix/src/pbarrierdestroy.c, posix/src/pbarrierinit.c, posix/src/pbarriertranslatereturncode.c, posix/src/pbarrierwait.c, posix/src/prwlock.c, posix/src/prwlockdestroy.c, posix/src/prwlockinit.c, posix/src/prwlockrdlock.c, posix/src/prwlocktimedrdlock.c, posix/src/prwlocktimedwrlock.c, posix/src/prwlocktranslatereturncode.c, posix/src/prwlocktryrdlock.c, posix/src/prwlocktrywrlock.c, posix/src/prwlockunlock.c, posix/src/prwlockwrlock.c, posix/src/pspin.c, posix/src/pspindestroy.c, posix/src/pspininit.c, posix/src/pspinlock.c, posix/src/pspinlocktranslatereturncode.c, posix/src/pspintrylock.c, posix/src/pspinunlock.c, posix/src/rwlockattrdestroy.c, posix/src/rwlockattrgetpshared.c, posix/src/rwlockattrinit.c, posix/src/rwlockattrsetpshared.c: New files.
2006-10-302006-10-30 Joel Sherrill <joel@OARcorp.com>Joel Sherrill
PR 841/rtems * itron/inline/rtems/itron/semaphore.inl, itron/src/twai_sem.c, posix/include/rtems/posix/semaphore.h, posix/inline/rtems/posix/semaphore.inl, posix/src/semaphorewaitsupp.c, posix/src/semtimedwait.c, posix/src/semwait.c, rtems/src/semobtain.c, rtems/src/semtranslatereturncode.c, score/include/rtems/score/coresem.h, score/src/coresemseize.c: Make sem_timedwait more conformant to Open Group specification.
2006-10-192006-10-19 Joel Sherrill <joel@OARcorp.com>Joel Sherrill
* configure.ac, itron/Makefile.am, itron/preinstall.am, posix/Makefile.am, posix/preinstall.am, rtems/Makefile.am, rtems/preinstall.am, sapi/Makefile.am, sapi/preinstall.am, score/Makefile.am, score/preinstall.am, score/include/rtems/system.h, score/include/rtems/score/chain.h, score/include/rtems/score/thread.h, score/src/chain.c, score/src/coremutexseize.c, score/src/threadget.c: Remove all macro implementations and use only the static inline. Static inline functions are now well supported so there is no reason for duplicate maintenance. * itron/macros/rtems/itron/eventflags.inl, itron/macros/rtems/itron/fmempool.inl, itron/macros/rtems/itron/intr.inl, itron/macros/rtems/itron/mbox.inl, itron/macros/rtems/itron/msgbuffer.inl, itron/macros/rtems/itron/network.inl, itron/macros/rtems/itron/port.inl, itron/macros/rtems/itron/semaphore.inl, itron/macros/rtems/itron/sysmgmt.inl, itron/macros/rtems/itron/task.inl, itron/macros/rtems/itron/time.inl, itron/macros/rtems/itron/vmempool.inl, posix/macros/rtems/posix/cond.inl, posix/macros/rtems/posix/key.inl, posix/macros/rtems/posix/mqueue.inl, posix/macros/rtems/posix/mutex.inl, posix/macros/rtems/posix/priority.inl, posix/macros/rtems/posix/pthread.inl, posix/macros/rtems/posix/semaphore.inl, posix/macros/rtems/posix/timer.inl, rtems/macros/rtems/rtems/asr.inl, rtems/macros/rtems/rtems/attr.inl, rtems/macros/rtems/rtems/barrier.inl, rtems/macros/rtems/rtems/dpmem.inl, rtems/macros/rtems/rtems/event.inl, rtems/macros/rtems/rtems/eventset.inl, rtems/macros/rtems/rtems/message.inl, rtems/macros/rtems/rtems/modes.inl, rtems/macros/rtems/rtems/options.inl, rtems/macros/rtems/rtems/part.inl, rtems/macros/rtems/rtems/ratemon.inl, rtems/macros/rtems/rtems/region.inl, rtems/macros/rtems/rtems/sem.inl, rtems/macros/rtems/rtems/status.inl, rtems/macros/rtems/rtems/support.inl, rtems/macros/rtems/rtems/tasks.inl, rtems/macros/rtems/rtems/timer.inl, sapi/macros/rtems/extension.inl, score/macros/README, score/macros/rtems/score/address.inl, score/macros/rtems/score/chain.inl, score/macros/rtems/score/corebarrier.inl, score/macros/rtems/score/coremsg.inl, score/macros/rtems/score/coremutex.inl, score/macros/rtems/score/corerwlock.inl, score/macros/rtems/score/coresem.inl, score/macros/rtems/score/corespinlock.inl, score/macros/rtems/score/heap.inl, score/macros/rtems/score/isr.inl, score/macros/rtems/score/mppkt.inl, score/macros/rtems/score/object.inl, score/macros/rtems/score/objectmp.inl, score/macros/rtems/score/priority.inl, score/macros/rtems/score/stack.inl, score/macros/rtems/score/states.inl, score/macros/rtems/score/sysstate.inl, score/macros/rtems/score/thread.inl, score/macros/rtems/score/threadmp.inl, score/macros/rtems/score/tod.inl, score/macros/rtems/score/tqdata.inl, score/macros/rtems/score/userext.inl, score/macros/rtems/score/watchdog.inl, score/macros/rtems/score/wkspace.inl: Removed.
2006-07-06convert to utf-8Ralf Corsepius
2006-06-18PR 1088/rtemsRalf Corsepius
Add missing #include <limits.h>.
2006-06-18Remove duplicate #include <limits.h>.Ralf Corsepius
2006-06-082006-06-08 Joel Sherrill <joel@OARcorp.com>Joel Sherrill
* posix/Makefile.am, posix/preinstall.am, posix/include/rtems/posix/timer.h, posix/src/ptimer.c, posix/src/ptimer1.c, sapi/src/posixapi.c, score/include/rtems/score/object.h:
2006-06-032006-06-02 Joel Sherrill <joel@OARcorp.com>Joel Sherrill
* itron/src/trcv_mbf.c, posix/src/semopen.c, rtems/src/taskvariableadd.c, score/macros/rtems/score/heap.inl: Fix warnings.