aarch64: timer interrupts not delivered on non-primary cores

4 views
Skip to first unread message

Waldek Kozaczuk

unread,
Mar 29, 2021, 1:15:59 AM3/29/21
to OSv Development
I turns out that apart from the waiter issue I described in other email last week, there is another issue affecting SMP and causing many tests to hang when running with more than 1 cpu.

I have discovered that the timer events are never delivered on non-primary cpus which obviously prevents the scheduler from functioning correctly on those cores. As I am describing in the issue https://github.com/cloudius-systems/osv/issues/1132, we seem to be missing to unmask interrupts on non-primary cpus. Doing exactly that seems to fix all the unit tests that used to hang. 

But I wonder if we have similar issue with other types of interrupts - SPI and SGI. Weirdly I noticed that SGI (Software Generated Interrupts) used for IPI seem to be functioning correctly even though we only seem to unmask them on primary core. So more research is needed.

Waldek 
Reply all
Reply to author
Forward
0 new messages