svn commit: r331296 - head/sys/sparc64/sbus
Warner Losh
imp at FreeBSD.org
Wed Mar 21 14:47:04 UTC 2018
Author: imp
Date: Wed Mar 21 14:47:03 2018
New Revision: 331296
URL: https://svnweb.freebsd.org/changeset/base/331296
Log:
These interrupts call shutdown_nice() which should be called Giant
unlocked. Rather than dropping it in the interrupt handler, mark these
handlers as MPSAFE.
Modified:
head/sys/sparc64/sbus/sbus.c
Modified: head/sys/sparc64/sbus/sbus.c
==============================================================================
--- head/sys/sparc64/sbus/sbus.c Wed Mar 21 14:46:59 2018 (r331295)
+++ head/sys/sparc64/sbus/sbus.c Wed Mar 21 14:47:03 2018 (r331296)
@@ -411,7 +411,7 @@ sbus_attach(device_t dev)
INTIGN(vec = rman_get_start(sc->sc_ot_ires)) != sc->sc_ign ||
INTVEC(SYSIO_READ8(sc, SBR_THERM_INT_MAP)) != vec ||
intr_vectors[vec].iv_ic != &sbus_ic ||
- bus_setup_intr(dev, sc->sc_ot_ires, INTR_TYPE_MISC | INTR_BRIDGE,
+ bus_setup_intr(dev, sc->sc_ot_ires, INTR_TYPE_MISC | INTR_BRIDGE | INTR_MPSAFE,
NULL, sbus_overtemp, sc, &sc->sc_ot_ihand) != 0)
panic("%s: failed to set up temperature interrupt", __func__);
i = 3;
@@ -421,7 +421,7 @@ sbus_attach(device_t dev)
INTIGN(vec = rman_get_start(sc->sc_pf_ires)) != sc->sc_ign ||
INTVEC(SYSIO_READ8(sc, SBR_POWER_INT_MAP)) != vec ||
intr_vectors[vec].iv_ic != &sbus_ic ||
- bus_setup_intr(dev, sc->sc_pf_ires, INTR_TYPE_MISC | INTR_BRIDGE,
+ bus_setup_intr(dev, sc->sc_pf_ires, INTR_TYPE_MISC | INTR_BRIDGE | INTR_MPSAFE,
NULL, sbus_pwrfail, sc, &sc->sc_pf_ihand) != 0)
panic("%s: failed to set up power fail interrupt", __func__);
More information about the svn-src-head
mailing list