summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@oarcorp.com>2015-04-15 14:39:56 -0500
committerJoel Sherrill <joel.sherrill@oarcorp.com>2015-04-17 09:49:45 -0500
commit491434cd7c19da945a909547ff3cde0e616e1410 (patch)
tree9e769eaada71af73747e99f1e18ea326383b3756
parentuser/libpci.t: Make it build and clean up (diff)
downloadrtems-491434cd7c19da945a909547ff3cde0e616e1410.tar.bz2
sp13: Document message buffer usage and adjust configuration
-rw-r--r--testsuites/sptests/sp13/system.h31
1 files changed, 26 insertions, 5 deletions
diff --git a/testsuites/sptests/sp13/system.h b/testsuites/sptests/sp13/system.h
index 3b170bf2ac..f879096e12 100644
--- a/testsuites/sptests/sp13/system.h
+++ b/testsuites/sptests/sp13/system.h
@@ -66,13 +66,34 @@ TEST_EXTERN rtems_name Queue_name[ 4 ]; /* array of queue names */
#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
/*
- * First three created in init.c, last created in task1.c.
+ * Created in init.c:
+ * Q1 - CONFIGURE_MESSAGE_BUFFERS_FOR_QUEUE( 100, MESSAGE_SIZE ) (1600)
+ * Q2 - CONFIGURE_MESSAGE_BUFFERS_FOR_QUEUE( 10, MESSAGE_SIZE ) (160)
+ * Q3 - CONFIGURE_MESSAGE_BUFFERS_FOR_QUEUE( 100, MESSAGE_SIZE ) (1600)
+ *
+ * Q1 and Q2 deleted in task1.c.
+ *
+ * Q1 recreated in task1.c:
+ * Q1 - CONFIGURE_MESSAGE_BUFFERS_FOR_QUEUE( 100, 20 ) (2000)
+ *
+ * Q1 deleted again in task1.c.
+ *
+ * Q1 repeatedly created and deleted for 2 messages of 1-1030 bytes
+ * in length. Account for peak usage:
+ * Q1 - CONFIGURE_MESSAGE_BUFFERS_FOR_QUEUE( 2, 1030 ) (2060)
+ *
+ * Because each message requires memory for the message plus two
+ * pointers to place the buffer on lists, it is easier to just
+ * allocate memory for all the message queues. But we can safely
+ * ignore Q2 and the last instance of Q1 since enough memory is
+ * free when the third instance of Q1 is created.
*/
#define CONFIGURE_MESSAGE_BUFFER_MEMORY \
- CONFIGURE_MESSAGE_BUFFERS_FOR_QUEUE( 100, MESSAGE_SIZE ) + \
- CONFIGURE_MESSAGE_BUFFERS_FOR_QUEUE( 10, MESSAGE_SIZE ) + \
- CONFIGURE_MESSAGE_BUFFERS_FOR_QUEUE( 100, MESSAGE_SIZE ) + \
- CONFIGURE_MESSAGE_BUFFERS_FOR_QUEUE( 100, 20 )
+ /* Q1 */ CONFIGURE_MESSAGE_BUFFERS_FOR_QUEUE( 100, MESSAGE_SIZE ) + \
+ /* Q2 */ /* CONFIGURE_MESSAGE_BUFFERS_FOR_QUEUE( 10, MESSAGE_SIZE ) + */ \
+ /* Q3 */ CONFIGURE_MESSAGE_BUFFERS_FOR_QUEUE( 100, MESSAGE_SIZE ) + \
+ /* Q1 */ CONFIGURE_MESSAGE_BUFFERS_FOR_QUEUE( 100, 20 ) + \
+ /* Q1 */ /* CONFIGURE_MESSAGE_BUFFERS_FOR_QUEUE( 2, 1030 ) */
#define CONFIGURE_EXTRA_TASK_STACKS (3 * RTEMS_MINIMUM_STACK_SIZE)