[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH v3 1/3] xen/x86: add nmi continuation framework
On 20.10.20 15:33, Jan Beulich wrote: On 16.10.2020 10:53, Juergen Gross wrote:Actions in NMI context are rather limited as e.g. locking is rather fragile. Add a generic framework to continue processing in normal interrupt context after leaving NMI processing. This is done by a high priority interrupt vector triggered via a self IPI from NMI context, which will then call the continuation function specified during NMI handling.I'm concerned by there being just a single handler allowed, when the series already introduces two uses. A single NMI instance may signal multiple things in one go. At the very least we then need a priority, such that SERR could override oprofile. A different approach could be not to introduce a generic interface, but to explicitly call the continuation handlers in the interrupt handler. Instead of a function pointer, a parameter pointer and a busy indicator (probably another function pointer) per cpu, we'd need for now only a parameter value per cpu (for the oprofile case) and a global flag (for the SERR case). The downside would be having to add additional fields for other use cases, but for now I think this could be the better way, especially as this would remove the theoretical case of multiple issues overwriting one another. Thoughts? Juergen
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |