summaryrefslogtreecommitdiffstats
path: root/testsuites/smptests/smpmulticast01
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2019-04-18 07:08:32 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2019-05-20 08:49:39 +0200
commit3b2481f9a7c7e9926b221acdca3678d80c6c9ec7 (patch)
tree4eb078ca678b46c6d92c0d3e0a79b490ab7c0b78 /testsuites/smptests/smpmulticast01
parent7fdf48aaf241cb050607a8aa441ff19a34a7ddb7 (diff)
downloadrtems-3b2481f9a7c7e9926b221acdca3678d80c6c9ec7.tar.bz2
score: Simplify _SMP_Multicast_action()
Move resposibility to disable thread dispatching to the caller of _SMP_Multicast_action(). Using an interrupt disable for this purpose is questionable.
Diffstat (limited to '')
-rw-r--r--testsuites/smptests/smpmulticast01/init.c14
1 files changed, 4 insertions, 10 deletions
diff --git a/testsuites/smptests/smpmulticast01/init.c b/testsuites/smptests/smpmulticast01/init.c
index 7b2556d5e9..5f10400ce6 100644
--- a/testsuites/smptests/smpmulticast01/init.c
+++ b/testsuites/smptests/smpmulticast01/init.c
@@ -227,8 +227,12 @@ static void test_broadcast_body(
ctx = (test_context *) base;
while (!rtems_test_parallel_stop_job(&ctx->base)) {
+ Per_CPU_Control *cpu_self;
+
clear_ids_by_worker(ctx, worker_index);
+ cpu_self = _Thread_Dispatch_disable();
_SMP_Multicast_action(NULL, action, &ctx->id[worker_index][0]);
+ _Thread_Dispatch_enable(cpu_self);
}
}
@@ -347,11 +351,6 @@ static void test_wrong_cpu_state_to_perform_jobs(void)
rtems_fatal(RTEMS_FATAL_SOURCE_APPLICATION, 0);
}
-T_TEST_CASE(UnicastDuringMultitasking)
-{
- test_unicast(&test_instance, _SMP_Multicast_action);
-}
-
T_TEST_CASE(UnicastDuringMultitaskingIRQDisabled)
{
test_unicast(&test_instance, multicast_action_irq_disabled);
@@ -362,11 +361,6 @@ T_TEST_CASE(UnicastDuringMultitaskingDispatchDisabled)
test_unicast(&test_instance, multicast_action_dispatch_disabled);
}
-T_TEST_CASE(BroadcastDuringMultitasking)
-{
- test_broadcast(&test_instance, _SMP_Broadcast_action);
-}
-
T_TEST_CASE(BroadcastDuringMultitaskingIRQDisabled)
{
test_broadcast(&test_instance, broadcast_action_irq_disabled);