summaryrefslogtreecommitdiffstats
path: root/cpukit/include/rtems/posix/psignalimpl.h (unfollow)
Commit message (Collapse)AuthorFilesLines
2022-09-19Do not use RTEMS_INLINE_ROUTINESebastian Huber1-2/+2
Directly use "static inline" which is available in C99 and later. This brings the RTEMS implementation closer to standard C. Close #3935.
2022-02-28cpukit/include/rtems/posix/*.h: Change license to BSD-2Joel Sherrill1-3/+22
Updates #3053.
2018-01-25Remove make preinstallChris Johns1-0/+0
A speciality of the RTEMS build system was the make preinstall step. It copied header files from arbitrary locations into the build tree. The header files were included via the -Bsome/build/tree/path GCC command line option. This has at least seven problems: * The make preinstall step itself needs time and disk space. * Errors in header files show up in the build tree copy. This makes it hard for editors to open the right file to fix the error. * There is no clear relationship between source and build tree header files. This makes an audit of the build process difficult. * The visibility of all header files in the build tree makes it difficult to enforce API barriers. For example it is discouraged to use BSP-specifics in the cpukit. * An introduction of a new build system is difficult. * Include paths specified by the -B option are system headers. This may suppress warnings. * The parallel build had sporadic failures on some hosts. This patch removes the make preinstall step. All installed header files are moved to dedicated include directories in the source tree. Let @RTEMS_CPU@ be the target architecture, e.g. arm, powerpc, sparc, etc. Let @RTEMS_BSP_FAMILIY@ be a BSP family base directory, e.g. erc32, imx, qoriq, etc. The new cpukit include directories are: * cpukit/include * cpukit/score/cpu/@RTEMS_CPU@/include * cpukit/libnetworking The new BSP include directories are: * bsps/include * bsps/@RTEMS_CPU@/include * bsps/@RTEMS_CPU@/@RTEMS_BSP_FAMILIY@/include There are build tree include directories for generated files. The include directory order favours the most general header file, e.g. it is not possible to override general header files via the include path order. The "bootstrap -p" option was removed. The new "bootstrap -H" option should be used to regenerate the "headers.am" files. Update #3254.
2016-09-08score: Simplify thread queue acquire/releaseSebastian Huber1-8/+2
2016-05-30score: _CORE_mutex_Check_dispatch_for_seize()Sebastian Huber1-5/+19
Move the safety check performed by _CORE_mutex_Check_dispatch_for_seize() out of the performance critical path and generalize it. Blocking on a thread queue with an unexpected thread dispatch disabled level is illegal in all system states. Add the expected thread dispatch disable level (which may be 1 or 2 depending on the operation) to Thread_queue_Context and use it in _Thread_queue_Enqueue_critical().
2016-05-12posix: Make _POSIX_signals_Action_handler() staticSebastian Huber1-7/+0
2016-04-12posix: Rename killinfo()Sebastian Huber1-1/+1
Apparently killinfo() is not defined by POSIX, glibc or FreeBSD. Rename killinfo() to _POSIX_signals_Send() to cleary mark it as an internal function.
2016-04-06posix: Make _POSIX_signals_Check_signal() staticSebastian Huber1-9/+0
2016-03-29score: Remove Thread_queue_Queue::operations fieldSebastian Huber1-0/+2
Remove the Thread_queue_Queue::operations field to reduce the size of this structure. Add a thread queue operations parameter to the _Thread_queue_First(), _Thread_queue_First_locked(), _Thread_queue_Enqueue(), _Thread_queue_Dequeue() and _Thread_queue_Flush() functions. This is a preparation patch to reduce the size of several synchronization objects.
2016-02-03Delete unused API extensionsSebastian Huber1-1/+0
2016-02-03Optional POSIX Signals initializationSebastian Huber1-5/+0
Update #2408.
2015-06-25score: Simplify <rtems/score/thread.h>Sebastian Huber1-0/+1
Avoid Thread_Control typedef in <rtems/score/percpu.h>. This helps to get rid of the <rtems/score/percpu.h> include in <rtems/score/thread.h> which exposes a lot of implementation details.
2015-05-19score: Add Thread_queue_Control::LockSebastian Huber1-5/+3
Move the complete thread queue enqueue procedure into _Thread_queue_Enqueue_critical(). It is possible to use the thread queue lock to protect state of the object embedding the thread queue. This enables per object fine grained locking in the future. Delete _Thread_queue_Enter_critical_section(). Update #2273.
2014-03-31posix: Use thread action for signalsSebastian Huber1-6/+6
2014-03-21Change all references of rtems.com to rtems.org.Chris Johns1-1/+1
2014-03-11score: Add local context to SMP lock APISebastian Huber1-4/+4
Add a local context structure to the SMP lock API for acquire and release pairs. This context can be used to store the ISR level and profiling information. It may be later used to enable more sophisticated lock algorithms, e.g. MCS locks. There is only one lock that cannot be used with a local context. This is the per-CPU lock since here we would have to transfer the local context through a context switch which is very complicated.
2013-12-09psignalimpl.h: Remove dead commentJoel Sherrill1-3/+1
2013-08-27posix: Add and use _POSIX_signals_Acquire()Sebastian Huber1-1/+11
Add and use _POSIX_signals_Release(). The post-switch handler is not protected by disabled thread dispatching. Use proper SMP lock for signal management.
2013-07-26score: Create threadq implementation headerSebastian Huber1-0/+1
Move implementation specific parts of tqdata.h, threadq.h and threadq.inl into new header file threadqimpl.h. The threadq.h contains now only the application visible API. Delete tqdata.h.
2013-07-22posix: Statically init _POSIX_signals_Ualarm_timerSebastian Huber1-2/+0
2013-07-22posix: Statically init _POSIX_signals_Alarm_timerSebastian Huber1-2/+0
2013-01-10cpukit: Use Consistent Beginning of Doxygen Group NotationJoel Sherrill1-1/+1
This is the result of a sed script which converts all uses of @{ into a consistent form.
2013-01-10cpukit: Doxygen group fixes and many warnings addressedJoel Sherrill1-1/+1
The output of the modules.html is much improved. Most filesystem and POSIX API related groups are properly nested. Some formatting issues were addressed as were multiple inconsistencies.
2013-01-07posix: Doxygen Clean Up Task #1Alex Ivanov1-6/+12
2012-12-16posix: Doxygen Enhancement Task #7Mathew Kallada1-0/+3
http://www.google-melange.com/gci/task/view/google/gci2012/7958218
2012-12-15posix: Doxygen Enhancement Task #2Alex Ivanov1-0/+5
http://www.google-melange.com/gci/task/view/google/gci2012/7988213
2012-12-15posix: Doxygen Enhancement Task #5Alex Ivanov1-0/+6
http://www.google-melange.com/gci/task/view/google/gci2012/7959229
2012-12-15posix: Doxygen Enhancement Task #1Alex Ivanov1-0/+11
http://www.google-melange.com/gci/task/view/google/gci2012/7987220
2012-12-05posix: Add signal post switch extension on the flySebastian Huber1-3/+7
2012-12-05posix: Add and use <rtems/posix/psignalimpl.h>Sebastian Huber1-11/+3
This file contains the parts of <rtems/posix/psignal.h> that are only necessary for the POSIX API implementation.
2012-05-11Remove All CVS Id Strings Possible Using a ScriptJoel Sherrill1-2/+0
Script does what is expected and tries to do it as smartly as possible. + remove occurrences of two blank comment lines next to each other after Id string line removed. + remove entire comment blocks which only exited to contain CVS Ids + If the processing left a blank line at the top of a file, it was removed.
2011-06-242011-06-24 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill1-1/+3
* include/rtems/bspIo.h, include/rtems/concat.h, include/rtems/endian.h, include/rtems/fs.h, include/rtems/irq.h, include/rtems/pci.h, include/rtems/userenv.h, libblock/include/rtems/flashdisk.h, libblock/include/rtems/nvdisk-sram.h, libblock/include/rtems/nvdisk.h, libcsupport/include/clockdrv.h, libcsupport/include/console.h, libcsupport/include/iosupp.h, libcsupport/include/spurious.h, libcsupport/include/motorola/mc68230.h, libcsupport/include/rtems/assoc.h, libcsupport/include/rtems/error.h, libcsupport/include/rtems/framebuffer.h, libcsupport/include/rtems/gxx_wrappers.h, libcsupport/include/rtems/libcsupport.h, libcsupport/include/rtems/libio_.h, libcsupport/include/rtems/malloc.h, libcsupport/include/rtems/termiostypes.h, libcsupport/include/sys/statvfs.h, libcsupport/include/sys/termios.h, libcsupport/include/sys/utsname.h, libcsupport/include/zilog/z8036.h, libcsupport/include/zilog/z8530.h, libcsupport/include/zilog/z8536.h, libfs/src/imfs/imfs.h, libfs/src/pipe/pipe.h, libmisc/capture/capture-cli.h, libmisc/capture/capture.h, libmisc/cpuuse/cpuuse.h, libmisc/devnull/devnull.h, libmisc/devnull/devzero.h, libmisc/dumpbuf/dumpbuf.h, libmisc/fb/fb.h, libmisc/fb/mw_uid.h, libmisc/mouse/mouse_parser.h, libmisc/shell/shellconfig.h, libmisc/stringto/stringto.h, libmisc/untar/untar.h, libnetworking/memory.h, posix/include/aio.h, posix/include/mqueue.h, posix/include/semaphore.h, posix/include/rtems/posix/aio_misc.h, posix/include/rtems/posix/barrier.h, posix/include/rtems/posix/cond.h, posix/include/rtems/posix/config.h, posix/include/rtems/posix/key.h, posix/include/rtems/posix/mqueue.h, posix/include/rtems/posix/mutex.h, posix/include/rtems/posix/posixapi.h, posix/include/rtems/posix/priority.h, posix/include/rtems/posix/psignal.h, posix/include/rtems/posix/pthread.h, posix/include/rtems/posix/ptimer.h, posix/include/rtems/posix/rwlock.h, posix/include/rtems/posix/semaphore.h, posix/include/rtems/posix/sigset.h, posix/include/rtems/posix/spinlock.h, posix/include/rtems/posix/threadsup.h, posix/include/rtems/posix/time.h, posix/include/rtems/posix/timer.h, posix/inline/rtems/posix/barrier.inl, posix/inline/rtems/posix/cond.inl, posix/inline/rtems/posix/mqueue.inl, posix/inline/rtems/posix/mutex.inl, posix/inline/rtems/posix/priority.inl, posix/inline/rtems/posix/pthread.inl, posix/inline/rtems/posix/rwlock.inl, posix/inline/rtems/posix/semaphore.inl, posix/inline/rtems/posix/spinlock.inl, posix/inline/rtems/posix/timer.inl, rtems/mainpage.h, rtems/include/rtems/rtems/barrier.h, rtems/include/rtems/rtems/object.h, rtems/include/rtems/rtems/timer.h, rtems/inline/rtems/rtems/barrier.inl, rtems/inline/rtems/rtems/timer.inl, rtems/src/semtranslatereturncode.c, sapi/include/rtems/config.h, sapi/include/rtems/fatal.h, sapi/include/rtems/mptables.h, score/include/rtems/score/object.h, score/include/rtems/score/priority.h, score/inline/rtems/score/object.inl, score/inline/rtems/score/priority.inl: Add @file Doxygen directives and descriptions to files which originated with RTEMS. This improves the file list page generated by Doxygen.
2009-12-04Reflect having split out posix/include/rtems/posix/sigset.h.Ralf Corsepius1-17/+1
2009-10-042009-10-04 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill1-0/+2
* posix/include/rtems/posix/psignal.h: Add extern for ualarm timer. * posix/src/alarm.c, posix/src/ualarm.c: Change from switch to if since many enumerated values have no action. * posix/src/psignal.c: Initialize ualarm and alarm timers.
2009-08-052009-08-05 Joel Sherrill <joel.sherrill@OARcorp.com>Joel Sherrill1-1/+1
* posix/include/rtems/posix/psignal.h, posix/src/mqueuecreatesupp.c, posix/src/psignalclearprocesssignals.c, posix/src/psignalclearsignals.c: Minor rework to ease coverage analysis.
2009-05-082009-05-08 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill1-1/+1
* posix/include/rtems/posix/psignal.h, rtems/inline/rtems/rtems/support.inl: Remove warnings.
2008-12-172008-12-17 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill1-4/+2
* posix/include/rtems/posix/barrier.h, posix/include/rtems/posix/cond.h, posix/include/rtems/posix/key.h, posix/include/rtems/posix/mqueue.h, posix/include/rtems/posix/mutex.h, posix/include/rtems/posix/psignal.h, posix/include/rtems/posix/pthread.h, posix/include/rtems/posix/ptimer.h, posix/include/rtems/posix/rwlock.h, posix/include/rtems/posix/semaphore.h, posix/include/rtems/posix/spinlock.h, posix/include/rtems/posix/timer.h, posix/src/cond.c, posix/src/key.c, posix/src/mqueue.c, posix/src/mutex.c, posix/src/pbarrier.c, posix/src/prwlock.c, posix/src/psignal.c, posix/src/pspin.c, posix/src/pthread.c, posix/src/pthreadinitthreads.c, posix/src/ptimer.c, posix/src/semaphore.c, sapi/src/posixapi.c: Convert POSIX manager initialization routines to directly pull parameters from configuration table.
2008-11-242008-11-24 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill1-1/+1
* posix/include/rtems/posix/psignal.h: Fix typo in converting method from macro to static inline.
2008-11-202008-11-20 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill1-3/+8
* posix/Makefile.am, posix/include/rtems/posix/psignal.h: Add stubs for gettimer() and setitimer(). * posix/src/getitimer.c, posix/src/setitimer.c: New files.
2008-09-04Convert to "bool".Ralf Corsepius1-6/+6
2008-05-27Added const qualifier to various pointers and data tables toThomas Doerfler1-1/+1
reduce size of data area. IMFS: Fixed creation of symbolic links to avoid a compiler warning. DOSFS: Use LibBlock instead of read() to read the boot record.
2007-12-172007-12-17 Joel Sherrill <joel.sherrill@OARcorp.com>Joel Sherrill1-0/+7
* posix/preinstall.am, posix/include/aio.h, posix/include/devctl.h, posix/include/mqueue.h, posix/include/sched.h, posix/include/semaphore.h, posix/include/rtems/posix/cancel.h, posix/include/rtems/posix/priority.h, posix/include/rtems/posix/psignal.h, posix/include/rtems/posix/threadsup.h, posix/include/rtems/posix/timer.h, posix/inline/rtems/posix/priority.inl, posix/src/barrierattrdestroy.c, posix/src/barrierattrgetpshared.c, posix/src/barrierattrinit.c, posix/src/barrierattrsetpshared.c, posix/src/cancel.c, posix/src/cancelrun.c, posix/src/cleanuppop.c, posix/src/cleanuppush.c, posix/src/cond.c, posix/src/condattrdestroy.c, posix/src/condattrgetpshared.c, posix/src/condattrinit.c, posix/src/condattrsetpshared.c, posix/src/condbroadcast.c, posix/src/conddefaultattributes.c, posix/src/conddestroy.c, posix/src/condinit.c, posix/src/condsignal.c, posix/src/condsignalsupp.c, posix/src/condwait.c, posix/src/condwaitsupp.c, posix/src/key.c, posix/src/keycreate.c, posix/src/keydelete.c, posix/src/keygetspecific.c, posix/src/keyrundestructors.c, posix/src/keysetspecific.c, posix/src/mqueue.c, posix/src/mqueueclose.c, posix/src/mqueuecreatesupp.c, posix/src/mqueuedeletesupp.c, posix/src/mqueuegetattr.c, posix/src/mqueuenametoid.c, posix/src/mqueuenotify.c, posix/src/mqueueopen.c, posix/src/mqueuereceive.c, posix/src/mqueuerecvsupp.c, posix/src/mqueuesend.c, posix/src/mqueuesendsupp.c, posix/src/mqueuesetattr.c, posix/src/mqueueunlink.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/mutexsetprioceiling.c, posix/src/mutextrylock.c, posix/src/mutexunlock.c, posix/src/psignal.c, posix/src/psignalchecksignal.c, posix/src/psignalclearprocesssignals.c, posix/src/psignalclearsignals.c, posix/src/psignalsetprocesssignals.c, posix/src/psignalunblockthread.c, posix/src/ptimer.c, posix/src/rwlockattrdestroy.c, posix/src/rwlockattrgetpshared.c, posix/src/rwlockattrinit.c, posix/src/rwlockattrsetpshared.c, posix/src/semaphore.c, posix/src/semaphoredeletesupp.c, posix/src/semaphorenametoid.c, posix/src/semaphorewaitsupp.c, posix/src/semclose.c, posix/src/semdestroy.c, posix/src/semgetvalue.c, posix/src/seminit.c, posix/src/semopen.c, posix/src/sempost.c, posix/src/semtrywait.c, posix/src/semunlink.c, posix/src/semwait.c, posix/src/setcancelstate.c, posix/src/setcanceltype.c, posix/src/sysconf.c, posix/src/testcancel.c: Add missing copyright statements.
2005-02-21New header guards.Ralf Corsepius1-2/+2
2004-11-21Add doxygen preamble.Ralf Corsepius1-0/+4
2004-04-16Remove stray white spaces.Ralf Corsepius1-1/+1
1999-11-02Split the POSIX semaphore manager into multiple files.Joel Sherrill1-0/+6
1999-03-30Fixed typo where _POSIX_signals_Clear_process_signals was not prototypedJoel Sherrill1-1/+1
and _POSIX_signals_Set_process_signals was done twice.
1999-03-01Part of the automake VI patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>:Joel Sherrill1-2/+2
> 5) rtems-rc-19990202-1.diff/reorg-install.sh > > reorg-install.sh fixes a Makefile variable name clash of RTEMS > configuration files and automake/autoconf standards. > Until now, RTEMS used $(INSTALL) for install-if-change. Automake and > autoconf use $(INSTALL) for a bsd-compatible install. As > install-if-change and bsd-install are not compatible, I renamed all > references to install-if-changed to $(INSTALL_CHANGED) and used > $(INSTALL) for bsd-install (==automake/autoconf standard). When > automake will be introduced install-if-change will probably be replaced > by $(INSTALL) and therefore will slowly vanish. For the moment, this > patch fixes a very nasty problem which prevents adding any automake file > until now (There are still more).
1999-01-31Split psignal.c into many more files. This reduced the amount ofJoel Sherrill1-0/+93
object code that has to be loaded just for initializing the signal manager.
1998-04-27Changed __POSIX_SIGNALS_h to __RTEMS_POSIX_SIGNALS_h to avoid conflict withJoel Sherrill1-2/+7
the system signals.h file. Moved POSIX_signals_Siginfo_node type definition to this file to allow confdefs.h to know the size per queued signal.