Commit Graph

28874 Commits

Author SHA1 Message Date
Gregory Nutt
eb344d7260 Fix an assertion noted by Jussi Kivilinna.
This was a consequence of the recent robust mutex changes.  If robust mutexes are selected, then each mutex that a thread takes is retained in a list in threads TCB.  If the thread exits and that list is not empty, then we know that the thread exitted while holding mutexes.  And, in that case, each will be marked as inconsistent and the any waiter for the thread is awakened.

For the case of pthread_mutex_trywait(), the mutex was not being added to the list!  while not usually a fatal error, this was caught by an assertion when pthread_mutex_unlock() was called:  It tried to remove the mutex from the TCB list and it was not there when, of course, it shoule be.

The fix was to add pthread_mutex_trytake() which does sem_trywait() and if successful, does correctly add the mutext to the TCB list.  This should eliminated the assertion.
2017-03-29 07:50:40 -06:00
Sebastien Lorquet
28e74ec058 Nucleo L476RG: More naming fixes. 2017-03-29 07:16:27 -06:00
Juha Niskanen
5577f58458 STM32 RNG: Fix semaphore initial value and disable priority inheritance 2017-03-29 07:12:19 -06:00
Juha Niskanen
9f3b24a4a1 STM32 F7: add stm32 RNG support. This is copied from stm32l4. Tested on STM32F746ZG board. 2017-03-29 07:08:10 -06:00
Gregory Nutt
ae5b5ae431 Add Rime address macros 2017-03-28 17:26:53 -06:00
Gregory Nutt
c3c8f8ed31 6loWPAN: Simplify some logic in send() if there is only an IEEE802.15.4 MAC 2017-03-28 16:14:58 -06:00
Anthony Merlino
abe7753e32 Merged in merlin17/nuttx (pull request #302)
configs/clicker2-stm32: Fixes minor SPI configuration issues

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2017-03-28 21:10:10 +00:00
Anthony Merlino
abab1e68a8 configs/clicker2-stm32: Fixes minor SPI configuration issues 2017-03-28 17:06:34 -04:00
Gregory Nutt
64933246c3 6loWPAN: Tie 6loWPAN send into common socket send logic. 2017-03-28 14:08:54 -06:00
Gregory Nutt
75a8ad636c 6loWPAN: Framework to support commpress/uncompress operations. 2017-03-28 12:23:19 -06:00
Gregory Nutt
25496936cc 6loWPAN: Add dummy files to handle 6loWPAN formmatted input and output packets. 2017-03-28 11:35:46 -06:00
Gregory Nutt
d9e32ee337 6loWPAN: More configurtion settings. 2017-03-28 11:16:28 -06:00
Gregory Nutt
f32fe172d4 6loWPAN: Add HC06 initialization 2017-03-28 10:47:25 -06:00
Gregory Nutt
898b769910 6loWPAN: Add framework for initialization; move globals into a separate file. 2017-03-28 09:32:52 -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
913daa908a 6loWPAN: Add some more configuration settings that will be needed. 2017-03-28 09:00:25 -06:00
Sebastien Lorquet
db8b38f848 STM32 L4: More SPI clean-up. Lower case replacements. 2017-03-28 08:58:43 -06:00
Sebastien Lorquet
45a0af8c03 STM32 L4: More SPI clean-up. Lower case replacements. 2017-03-28 08:52:49 -06:00
Sebastien Lorquet
9221e15811 STM32 L4: Fix some bad naming in the SPI driver. 2017-03-28 07:28:55 -06:00
Gregory Nutt
0064dc52e5 realloc(): When realloc() has to fall back to calling malloc(), size including overhead was being provided to malloc(), causing a slightly larger allocation than needed. Noted by initialkjc@yahoo.com 2017-03-28 07:23:46 -06:00
Martin Lederhilger
91f96b6ecb drivers/analog: Add driver for the LTC1767L ADC. 2017-03-28 06:34:37 -06:00
Gregory Nutt
65e95b95f2 Add a little more 6loWPAN logic 2017-03-27 18:15:20 -06:00
Gregory Nutt
dab2fb2eb3 Add a comment 2017-03-27 16:19:46 -06:00
Gregory Nutt
a522fc4f34 6loWPAN: Rename net/6lowpan to net/sixlowpan; Add Contike sixlowpan.h to include/nuttx/net 2017-03-27 14:53:52 -06:00
Gregory Nutt
6c4dac459a lcd/: PCF8574 backpack logic needs to include poll.h CONFIG_DISABLE_POLL is not set. 2017-03-27 12:28:34 -06:00
Gregory Nutt
941360bf12 Correct some spacing 2017-03-27 10:49:41 -06:00
Alan Carvalho de Assis
dbc074edab Include wcstold in C++ cwchar header file 2017-03-27 09:49:44 -06:00
Matias vo1d
5c56d8a411 Fix strange invisible characters in this declaration. 2017-03-27 09:47:02 -06:00
Gregory Nutt
77e4953fe3 Eliminate a 'make menuconfig' warning 2017-03-27 09:42:36 -06:00
Gregory Nutt
7dea99ff9d Parts of last syscall commit that were omitted. 2017-03-27 09:38:27 -06:00
Gregory Nutt
4800d3f545 Add syscall support for pthread_mutex_consistent() 2017-03-27 09:36:03 -06:00
Gregory Nutt
c071e2a30c Make sure that CONFIG_PTHREAD_MUTEX_ROBUST=y is selected every configuration that enabled pthreads. 2017-03-27 09:21:03 -06:00
Gregory Nutt
b07d3fc305 Rename CONFIG_MUTEX_TYPES to CONFIG_PTHREAD_MUTEX_TYPES 2017-03-27 09:08:14 -06:00
Gregory Nutt
9484ac5c22 Merge branch 'robust' 2017-03-27 08:51:53 -06:00
Gregory Nutt
5dbf0b8d9c Merge remote-tracking branch 'origin/master' into robust 2017-03-27 08:51:19 -06:00
Gregory Nutt
f2f798cb29 pthread mutexes: Finish logic to support configuration mutex robustness. 2017-03-27 08:50:45 -06:00
Gregory Nutt
d1196ddb60 pthread mutex: Forgot to add files in last commit 2017-03-27 07:49:13 -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
2c755b535a Merge branch 'robust' 2017-03-26 17:38:57 -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
86ab384d77 Forget to add some files in previous commits 2017-03-26 15:46:19 -06:00
Gregory Nutt
8b23c16b90 pthreads: pthread_mutex_consistent() needs to clear flags. 2017-03-26 14:44:57 -06:00
Gregory Nutt
34c5e1c18f Minor cleanup from recent changes. 2017-03-26 14:04:07 -06:00
Gregory Nutt
5a69453e16 pthreads: Add some assertions. 2017-03-26 13:54:43 -06:00
Gregory Nutt
fe03ef02c4 when pthread exits or is cancelled, mutexes held by thread are marked inconsistent and the highest priority thread waiting for the mutex is awakened. 2017-03-26 13:37:05 -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
2c37d369ab pthread: Fix return value of pthread_give/takesemaphore(). Add option to pthread_takesemaphore to ignore EINTR or not. 2017-03-26 11:22:17 -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
bacc4e9b93 Update errno values. Add new values; remove obsolete values 2017-03-26 09:22:00 -06:00
Gregory Nutt
92da8068ed Merge branch 'master' of bitbucket.org:nuttx/nuttx 2017-03-26 06:57:35 -06:00