> The interrupts interrupts should be restore when the new context is > instantiated in up_unblock_task(). There is no call to irq_restore(). > I don't use RISC-V, but I can show you for ARMv7-M: > > arch/arm/src/armv7-m/arm_unblocktask.c > > 103 /* Then switch contexts */ > 104 > 105 arm_restorestate(rtcb->xcp.regs); > > The state of the interrupts is just part of the state of the task that > is saved and restore on context switches.
Thanks Greg. This helps point me in the right place, this core does not quite follow the full RISC-V spec which I think is where I am hitting some walls. It is interesting to me because of how small it is, it is fairly trivial to implement a design with several hundred cores. --Brennan