<div dir="ltr">Hi,<div><br></div><div>While trying to debug my code, I realised that the heir set on another processor does not become that cpu's per_cpu_control->executing after some time.</div><div><br></div><div>On checking the allocate_processor call that set the heir, I saw the call trace as:</div><div><br></div><div>_Scheduler_SMP_Allocate_processor_exact -> _Thread_Dispatch_update_heir :<br></div><div><br></div><div>-------------------------------------</div><div>...</div><div>  } else { (Here this gets executed since the current cpu is different than the one that gets its executing changed)<br>    _Atomic_Fetch_or_ulong( &cpu_target->message, 0, ATOMIC_ORDER_RELEASE );<br>    _CPU_SMP_Send_interrupt( _Per_CPU_Get_index( cpu_target ) );<br>  }<br></div><div><br></div><div>............................................</div><div><br></div><div>So, how long does it take for heir to become executing on another cpu? This question is wrt my code at this <a href="https://github.com/richidubey/rtems/blob/03d08d02b3e61570f2022845caa44ec6a261f677/cpukit/score/src/schedulerstrongapa.c#L297">line</a>. Is it okay if i use heir here instead of executing (To get the latest thread intended to be scheduled on the cpu)? Would it mean the same thing? Is heir==executing when thread_dispatch is set to false?</div><div><br></div><div>Please help me out.</div><div><br></div><div>Thanks,</div><div>Richi. </div></div>