Change to calling conditions of UnthreadV.
Detail: Previously, UnthreadV was only called when the IRQsema chain was empty, the link for the just-completed interrupt having just been removed. However, the information in the link is necessary to allow OS_Heap to be called from UnthreadV context, and patching up IRQsema within the UnthreadV handler prevents the implementation of a prioritised threading scheme. As a result, we must call UnthreadV every time the interrupt dispatch unthreads, and leave it up to the UnthreadV handler to distinguish between return to thread context and return from a nested interrupt handler. Admin: Will require some sort of patch to enable heap-safe prioritised threading on RISC OS-STB 5.0.0 or RISC OS 5.07, the only two released OSes with the previous UnthreadV behaviour. Version 5.35, 4.79.2.77. Tagged as 'Kernel-5_35-4_79_2_77'
Showing
Please register or sign in to comment