Nested Interrupts for ARMv8 #191
Replies: 1 comment
-
Bao is fully not preemtible, therefore it does not support nested interrupts. Here are a few points that come to mind for achieving this:
However, this is not trivial at all. Because Bao was implemented assuming non-preemtability a lot of more issues will arise. For example, in mutual exclusive sections, interrupts must be disabled. Otherwise you may encounter deadlocks. Making these regions preemtible would require major modifications. Moreover, for CPU private structures and for example vCPUs, Bao assumes that no other thread of execution will access these structures, which is not true if you have two nested interrupt handlers running in the same CPU. Probably many more issues that I don't recall or don't understand will come up. May I ask what would be the purpose of such endeavor? Remember that Bao does not implement any driver or "heavy" interrupt handler. In most cases, when Bao receives an interrupt it just reinjects it on the guest. So what do you wish to gain by having nested handlers? |
Beta Was this translation helpful? Give feedback.
-
Hi,
I am trying trying to see if I can get nested interrupts on ZCU102 board Hypervisor level. Does Bao currently support this? If not, what would the support look like if nested interrupts are required?
Thank you.
Beta Was this translation helpful? Give feedback.
All reactions