From e90486ab41a4edf045a6153675b6be9dcd422b71 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Thu, 11 Apr 2019 15:16:40 +0200 Subject: score: Rework SMP multicast action Use a FIFO list of jobs per processor to carry out the SMP multicast action. Use a done indicator per job to reduce the bus traffic a bit. --- testsuites/smptests/smpmulticast01/init.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'testsuites/smptests/smpmulticast01/init.c') diff --git a/testsuites/smptests/smpmulticast01/init.c b/testsuites/smptests/smpmulticast01/init.c index 2319582ab6..e599a78bde 100644 --- a/testsuites/smptests/smpmulticast01/init.c +++ b/testsuites/smptests/smpmulticast01/init.c @@ -59,11 +59,14 @@ static void multicast_action_irq_disabled( void *arg ) { + Per_CPU_Control *cpu_self; rtems_interrupt_level level; + cpu_self = _Thread_Dispatch_disable(); rtems_interrupt_local_disable(level); _SMP_Multicast_action(targets, handler, arg); rtems_interrupt_local_enable(level); + _Thread_Dispatch_enable(cpu_self); } static void multicast_action_dispatch_disabled( -- cgit v1.2.3