Mark Schulte
35ca733108
pthread.h: Fix rwlock initializer
2017-04-08 12:34:08 -06:00
Gregory Nutt
dea251783a
pthread.h: Remove duplicate, possible erroneous definitino of PTHREAD_MUTEX_INITIALIZER that crept in with some recent changes.
2017-04-08 08:14:11 -06:00
Mark Schulte
2b1ca79b4b
pthread rwlock bugfixes
2017-04-07 15:45:24 -06:00
Gregory Nutt
b631dc886f
Remove CONFIG_PTHREAD_RWLOCK. Rwlock interfaces built unconditionally.
2017-04-07 07:34:22 -06:00
Mark Schulte
7bb26d2615
pthreads: Adding rwlock implementation
...
Adding an implementation for read/write locks into the pthread library.
These locks are writer priority, such that if any writers come in they
are given priority for writing.
2017-04-07 07:03:00 -06:00
Jussi Kivilinna
1879f5127b
Fix PTHREAD_MUTEX_INITIALIZER which was not updated with last mutex changes.
2017-03-28 09:07:32 -06:00
Gregory Nutt
b07d3fc305
Rename CONFIG_MUTEX_TYPES to CONFIG_PTHREAD_MUTEX_TYPES
2017-03-27 09:08:14 -06:00
Gregory Nutt
f2f798cb29
pthread mutexes: Finish logic to support configuration mutex robustness.
2017-03-27 08:50:45 -06:00
Gregory Nutt
666208cf23
pthread mutexes: Add option to support both unsafe and robust mutexes via pthread_mutexattr_get/setrobust().
2017-03-26 18:37:24 -06:00
Gregory Nutt
8b3c554e45
pthreads: Add a configuration option to disable robust mutexes and revert to the traditional unsafe mutexes.
2017-03-26 17:37:28 -06:00
Gregory Nutt
34c5e1c18f
Minor cleanup from recent changes.
2017-03-26 14:04:07 -06:00
Gregory Nutt
6e623ce06f
pthreads: Partial implementation of final part of robust mutexes: Keep list of all mutexes held by a thread in a list in the TCB.
2017-03-26 12:46:57 -06:00
Gregory Nutt
363403fb1f
pthreads: Add more robustness characteristics: pthread_mutex_lock() and trylock() will now return EOWNERDEAD if the mutex is locked by a thread that no longer exists. Add pthread_mutex_consistent() to recover from this situation.
2017-03-26 10:35:23 -06:00
Gregory Nutt
acaae12e8b
Add pthread_testcancel(), pthread_testcancel(), and definitiions for cancellation types.
2016-12-09 07:23:00 -06:00
Gregory Nutt
a1fbc2ad0d
pthreads: Add pthread_cleanup_push() and pthread_cleanup_pop()
2016-12-08 09:27:13 -06:00
Gregory Nutt
796969f6b6
Update TODO. Provide do-nothing stubs for mutex attribute interfaces if features not enabled. pthread_cond includes a signaling semaphore and should call sem_setprotocol.
2016-11-05 11:06:52 -06:00
Gregory Nutt
97bf82ee05
Semaphores: Provide macros for sem_setprotobol() and sem_getprotocol() if priority inheritance is not enabled. More SEM_PRIO_* definitions to include/nuttx/semaphore.h
2016-11-02 18:21:46 -06:00
Gregory Nutt
92d3022411
Add pthread_mutexattr_get/set_protocol and non-standard sem_get/set_protocol. These may use to enable or disable priority inheritance on a single semaphore.
2016-11-02 09:05:18 -06:00
Gregory Nutt
86b79b33cf
Reserver the name 'err' for other purposes
2016-06-11 14:40:07 -06:00
Gregory Nutt
0eadf1dcad
Costmetic change + update submodules
2016-02-20 14:57:05 -06:00
Gregory Nutt
5a590e99b9
Add SYSCALLS for pthread_setaffinity() and pthread_getaffinity()
2016-02-19 18:13:06 -06:00
Gregory Nutt
a633353ec3
Add a CPU affinity set to the TCB if SMP is enable and use this CPU set as a mask for determining which CPUs the thread may run on. Add an affinity field to the attrributes to permit controlling which CPUs a pthread may run on. Implements pthread_att_setaffinity_np() and pthread_attr_getaffinity_np().
2016-02-19 17:33:35 -06:00
Gregory Nutt
72d3920295
Rename cpuset_t to cpu_set_t which is the type used in some non-standard Linux/GNU interfaces. Move definitions of cpu_set_t to include/sys/types.h. Add prototypes for sched_setaffinity(), sched_getaffinity(), pthread_attr_setaffinity_np(), pthread_attr_getaffinity_np(), pthread_setaffinity_np(), and pthread_getaffinity_np(). No implementation is yet in place.
2016-02-19 15:57:07 -06:00
Gregory Nutt
b1938c065d
sys/time.h: Fix timersub macro; time_t is unsigned
2015-12-31 09:05:35 -06:00
Gregory Nutt
c1fff4706c
signals: Adds a very limited, minimal implementation for SIGEV_THREAD
2015-12-30 15:01:14 -06:00
Gregory Nutt
9835eeb181
signals: Basic framework to support SIGEV_THREAD
2015-12-30 13:20:31 -06:00
Gregory Nutt
9cbac41e78
Clean-up/standardize a few header files
2015-08-03 11:01:41 -06:00
Gregory Nutt
f6c102d4c0
A few cosmetic fixes from the last commit
2015-07-23 13:26:41 -06:00
Gregory Nutt
9095e8eab4
include/, sched/, and libc/: Add support for sporadic scheduling parameters in struct sched_param, posix_spawnattr_t, and pthread_attr_t. Update all user interfaces to pass sporadic scheduling parameters. Feature is dependent on EXPERIMENTAL and no changes have yet been made to core scheduling logic.
2015-07-23 13:16:32 -06:00
Juha Niskanen
d16053c33c
sched/pthread: Use -1 instead of 0 as PID for unclaimed mutexes
2015-06-16 08:27:38 -06:00
Gregory Nutt
35a6ef7c40
Fix PTHREAD_COND_INITIALIZER
2015-02-24 20:26:42 -06:00
Gregory Nutt
a41c1de32c
Add basic data structures that will allow us to move named semaphore support out of the OS and into the VFS (not complete).
2014-09-28 10:15:33 -06:00
Gregory Nutt
e953fb11cd
A const storage class to to phthread parameters. From Freddie Chopin
2014-09-08 06:21:48 -06:00
Gregory Nutt
3a1324741a
More trailing whilespace removal
2014-04-13 14:32:20 -06:00
patacongo
76d1ad21f2
Fix bad conditional logic in mkconfig.c; Add user-mode pthread start-up logic
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5748 42af7a65-404d-4744-a932-0658087f49c3
2013-03-16 17:37:40 +00:00
patacongo
fe49f7c965
configs/sim/nxwm now uses kconfig-frontends
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5449 42af7a65-404d-4744-a932-0658087f49c3
2012-12-21 21:30:33 +00:00
patacongo
cc022f93df
Patches from Petteri Aimonen (plus a few other things)
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5448 42af7a65-404d-4744-a932-0658087f49c3
2012-12-21 20:09:32 +00:00
patacongo
97301a8aed
Add interfaces to support getting/setting of thread/task names
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4658 42af7a65-404d-4744-a932-0658087f49c3
2012-04-26 15:00:35 +00:00
patacongo
7163506799
Fix pascal build problem
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4554 42af7a65-404d-4744-a932-0658087f49c3
2012-04-04 13:01:14 +00:00
patacongo
2f6adf5714
FTPD daemon and example now build without errors
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4371 42af7a65-404d-4744-a932-0658087f49c3
2012-02-05 17:36:13 +00:00
patacongo
a521443817
Move more files into subdirectories under lib/
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3445 42af7a65-404d-4744-a932-0658087f49c3
2011-03-31 01:42:50 +00:00
patacongo
21ae727f6f
Add syscall directory
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3438 42af7a65-404d-4744-a932-0658087f49c3
2011-03-30 02:59:01 +00:00
patacongo
e385b1074b
Clean-up from big switch to stdint/stdbool
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@2362 42af7a65-404d-4744-a932-0658087f49c3
2009-12-16 23:23:46 +00:00
patacongo
eeec4073a9
Switching to C99 stdint.h types
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@2340 42af7a65-404d-4744-a932-0658087f49c3
2009-12-14 23:32:23 +00:00
patacongo
166b4da551
Add support for priority inheritance
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@1581 42af7a65-404d-4744-a932-0658087f49c3
2009-03-08 23:33:41 +00:00
patacongo
b08da21f90
Add support for recursive mutexes
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@753 42af7a65-404d-4744-a932-0658087f49c3
2008-05-31 17:13:08 +00:00
patacongo
1358cc1911
Fix z16f addressing issues
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@592 42af7a65-404d-4744-a932-0658087f49c3
2008-01-30 21:59:12 +00:00
patacongo
3d5eebad25
Add pthread_setschedprio() prototype
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@139 42af7a65-404d-4744-a932-0658087f49c3
2007-03-24 15:54:42 +00:00
patacongo
7a1f5f61bd
Add new pthread_* APIs
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@134 42af7a65-404d-4744-a932-0658087f49c3
2007-03-23 23:22:22 +00:00
patacongo
3f1b80218e
Restructure header files for POSIX compliance; eliminate compile warnings
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@107 42af7a65-404d-4744-a932-0658087f49c3
2007-03-20 16:51:12 +00:00