<div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr">Hi,<div>This assert may not be directly related to my issue because I reproduced it a few times (with RTEMS_DEBUG enabled in the build)</div><div>without seeing the assert being hit. What I discovered is that after a while _Scheduler_priotity_Unblock is not called for my task anymore.</div><div>And since _Scheduler_priotity_Unblock calls _Scheduler_Update_heir, my task will not be set as the heir and no context switch will be made for it.</div><div><br></div><div>My question is why would _Scheduler_priority_Unblock not beeing called ?</div><div>rtems_event_send called from my USB ISR calls _Event_Surrender and that calls _Thread_Unblock</div><div>Is there a conceptual problem calling rtems_event_send from an ISR ? </div><div>I saw there is a rtems_event_system_send function. should I call this one instead ? what is the difference? </div><div><br></div><div>regards,</div><div>Catalin</div><div><br></div></div></div></div></div></div></div><br><div class="gmail_quote"><div dir="ltr">On Mon, Oct 1, 2018 at 10:16 AM Sebastian Huber <<a href="mailto:sebastian.huber@embedded-brains.de">sebastian.huber@embedded-brains.de</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On 01/10/2018 08:55, Catalin Demergian wrote:<br>
> Hello,<br>
> After enabling RTEMS_DEBUG like you told me, I found the test I left <br>
> running over the weekend like this<br>
><br>
> [/] #<br>
><br>
> [/] #<br>
><br>
> [/] # assertion "first != _Chain_Tail( &ready_queues[ index ] )" <br>
> failed: file <br>
> "../../cpukit/../../../stm32f7/lib/include/rtems/score/schedulerpriorityimpl.h", <br>
> line 166, function: _Scheduler_priority_Ready_queue_first<br>
><br>
<br>
This means that the scheduler tries to use the first thread of an empty <br>
ready queue. Someone corrupted the scheduler data structures. This could <br>
be a general scheduler bug, a heap corruption, a stack overflow, some <br>
arbitrary memory corruption.<br>
<br>
Which RTEMS 4.11 release do you use exactly?<br>
<br>
-- <br>
Sebastian Huber, embedded brains GmbH<br>
<br>
Address : Dornierstr. 4, D-82178 Puchheim, Germany<br>
Phone   : +49 89 189 47 41-16<br>
Fax     : +49 89 189 47 41-09<br>
E-Mail  : <a href="mailto:sebastian.huber@embedded-brains.de" target="_blank">sebastian.huber@embedded-brains.de</a><br>
PGP     : Public key available on request.<br>
<br>
Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.<br>
<br>
</blockquote></div>