Skip to content
  • Alexander Motin's avatar
    Allow swi_sched() to be called from NMI context. · aba10e13
    Alexander Motin authored
    For purposes of handling hardware error reported via NMIs I need a way to
    escape NMI context, being too restrictive to do something significant.
    
    To do it this change introduces new swi_sched() flag SWI_FROMNMI, making
    it careful about used KPIs.  On platforms allowing IPI sending from NMI
    context (x86 for now) it immediately wakes clk_intr_event via new IPI_SWI,
    otherwise it works just like SWI_DELAY.  To handle the delayed SWIs this
    patch calls clk_intr_event on every hardclock() tick.
    
    MFC after:	2 weeks
    Sponsored by:	iXsystems, Inc.
    Differential Revision:	https://reviews.freebsd.org/D25754
    aba10e13