From a9ead1328ee2c67363e580946564c80ed91d96ff Mon Sep 17 00:00:00 2001 From: patacongo Date: Tue, 28 Aug 2012 14:40:12 +0000 Subject: 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 --- apps/examples/ostest/prioinherit.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'apps/examples') 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 /**************************************************************************** -- cgit v1.2.3