summaryrefslogtreecommitdiffstats
path: root/testsuites
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2018-04-27 07:20:27 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2018-04-27 07:22:38 +0200
commit8b5a801e85e273aa9778bbf5b41269ae15fceb30 (patch)
tree29826de1768ff28bf85153f5aaf2b6718c1c0d2a /testsuites
parentbsp/pc386: Remove bin2boot support (diff)
downloadrtems-8b5a801e85e273aa9778bbf5b41269ae15fceb30.tar.bz2
smptests/smpschededf02: Add test case
Diffstat (limited to 'testsuites')
-rw-r--r--testsuites/smptests/smpschededf02/init.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/testsuites/smptests/smpschededf02/init.c b/testsuites/smptests/smpschededf02/init.c
index 03556bdd2b..e9a521caf5 100644
--- a/testsuites/smptests/smpschededf02/init.c
+++ b/testsuites/smptests/smpschededf02/init.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016, 2017 embedded brains GmbH. All rights reserved.
+ * Copyright (c) 2016, 2018 embedded brains GmbH. All rights reserved.
*
* embedded brains GmbH
* Dornierstr. 4
@@ -117,10 +117,10 @@ static const test_action test_actions[] = {
UNBLOCK( 0, 0, 1),
BLOCK( 1, 0, IDLE),
UNBLOCK( 1, 0, 1),
- RESET,
/*
* Show that FIFO order is honoured across all threads of the same priority.
*/
+ RESET,
SET_PRIORITY( 1, P(0), IDLE, IDLE),
SET_PRIORITY( 2, P(1), IDLE, IDLE),
SET_PRIORITY( 3, P(1), IDLE, IDLE),
@@ -135,12 +135,12 @@ static const test_action test_actions[] = {
BLOCK( 1, 0, 2),
BLOCK( 2, 3, 0),
BLOCK( 3, 4, 0),
- RESET,
/*
* Schedule a high priority affine thread directly with a low priority affine
* thread in the corresponding ready queue. In this case we, remove the
* affine ready queue in _Scheduler_EDF_SMP_Allocate_processor().
*/
+ RESET,
UNBLOCK( 0, 0, IDLE),
UNBLOCK( 1, 0, 1),
SET_PRIORITY( 1, P(2), 0, 1),
@@ -151,6 +151,11 @@ static const test_action test_actions[] = {
UNBLOCK( 2, 0, 2),
BLOCK( 1, 0, 2),
BLOCK( 2, 0, 3),
+ /* Force migration of a higher priority one-to-all thread */
+ RESET,
+ UNBLOCK( 0, 0, IDLE),
+ SET_AFFINITY( 1, A(1, 0), 0, IDLE),
+ UNBLOCK( 1, 1, 0),
RESET
};