diff options
author | patacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3> | 2012-08-28 14:40:12 +0000 |
---|---|---|
committer | patacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3> | 2012-08-28 14:40:12 +0000 |
commit | a9ead1328ee2c67363e580946564c80ed91d96ff (patch) | |
tree | 649fb785890c05db65ac6d00418aad80205e729e /apps/examples | |
parent | 814f5dab600d19ffe043363814503c113549e221 (diff) | |
download | px4-nuttx-a9ead1328ee2c67363e580946564c80ed91d96ff.tar.gz px4-nuttx-a9ead1328ee2c67363e580946564c80ed91d96ff.tar.bz2 px4-nuttx-a9ead1328ee2c67363e580946564c80ed91d96ff.zip |
Add some protection to the priority inheritance logic when sem_post() is called from an interrupt handler
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5060 42af7a65-404d-4744-a932-0658087f49c3
Diffstat (limited to 'apps/examples')
-rw-r--r-- | apps/examples/ostest/prioinherit.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/apps/examples/ostest/prioinherit.c b/apps/examples/ostest/prioinherit.c index 87849abcf..eea5a818f 100644 --- a/apps/examples/ostest/prioinherit.c +++ b/apps/examples/ostest/prioinherit.c @@ -59,20 +59,28 @@ # define CONFIG_SEM_PREALLOCHOLDERS 0 #endif +/* If resources were configured for lots of holders, then run 3 low priority + * threads. Otherwise, just one. + */ + #if CONFIG_SEM_PREALLOCHOLDERS > 3 # define NLOWPRI_THREADS 3 #else -# define NLOWPRI_THREADS (CONFIG_SEM_PREALLOCHOLDERS+1) +# define NLOWPRI_THREADS 1 #endif #ifndef CONFIG_SEM_NNESTPRIO # define CONFIG_SEM_NNESTPRIO 0 #endif +/* Where resources configured for lots of waiters? If so then run 3 high + * priority threads. Otherwise, just one. + */ + #if CONFIG_SEM_NNESTPRIO > 3 # define NHIGHPRI_THREADS 3 #else -# define NHIGHPRI_THREADS (CONFIG_SEM_NNESTPRIO+1) +# define NHIGHPRI_THREADS 1 #endif /**************************************************************************** |