|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v3 33/39] ARM: new VGIC: Add preliminary stub implementation
Hi Stefano, On 27/03/18 23:48, Stefano Stabellini wrote: On Wed, 21 Mar 2018, Andre Przywara wrote: The interrupts would be delivered when the vCPU is going online. It does not seem against the specification. Actually from the spec, it is valid to route an interrupt any vCPU (even non-existent one). However, as I said on a previous version of this patch, the implementation on the current vGIC is just plain wrong for a few reasons: - lr_mask is reset but the LRs are not. This means when we context switch back, the LR might still be written and injecting unexpected interrupt (whoops). - both lists (inflight and pending) are cleared which means that a physical interrupt pending on that vCPU is lost forever (stay active in the physical so never going to fire again). Furthermore, I don't think that Xen business to reset the GIC on cpu_on. If anything should be done, then is it on CPU_off to migrate the current interrupts to another vCPU. But IIRC the OS is responsible for that. One the same note, similar problem would happen because of vgic_inject_irq would bail out on offline vCPU. This means that interrupt may be lost forever. We are quite lucky that we don't use PSCI on/off very often in Xen. Cheers, -- Julien Grall _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |