summaryrefslogtreecommitdiffstats
path: root/sys/dev/isp/isp_freebsd.h
diff options
context:
space:
mode:
authormjacob <mjacob@FreeBSD.org>2002-07-25 16:02:09 +0000
committermjacob <mjacob@FreeBSD.org>2002-07-25 16:02:09 +0000
commitbdf708d20aad82d19c4148d07378c73d30842f12 (patch)
tree83f40fd53730a55bcde551bd5b8091fbc7a4b430 /sys/dev/isp/isp_freebsd.h
parent340952314ae0cef64670a124d66479243a48fb7a (diff)
downloadFreeBSD-src-bdf708d20aad82d19c4148d07378c73d30842f12.zip
FreeBSD-src-bdf708d20aad82d19c4148d07378c73d30842f12.tar.gz
Make sure that if are in fact using 'full SMP', make the interrupt
flags include INTR_MPSAFE. Put the flags in a common place so that both isp_sbus && isp_pci DTRT. In isp_mbxdma setup, drop any locks prior to calling things like bus_dmatag_create. This gets rid of these obnoxious WITNESS messages about 'sleeping with locks held' blah blah blah blah blah.
Diffstat (limited to 'sys/dev/isp/isp_freebsd.h')
-rw-r--r--sys/dev/isp/isp_freebsd.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/sys/dev/isp/isp_freebsd.h b/sys/dev/isp/isp_freebsd.h
index bcdcde3..9beea40 100644
--- a/sys/dev/isp/isp_freebsd.h
+++ b/sys/dev/isp/isp_freebsd.h
@@ -70,6 +70,13 @@
#endif
#define HANDLE_LOOPSTATE_IN_OUTER_LAYERS 1
+#define ISP_SMPLOCK 1
+
+#ifdef ISP_SMPLOCK
+#define ISP_IFLAGS INTR_TYPE_CAM | INTR_ENTROPY | INTR_MPSAFE
+#else
+#define ISP_IFLAGS INTR_TYPE_CAM | INTR_ENTROPY
+#endif
typedef void ispfwfunc(int, int, int, u_int16_t **);
OpenPOWER on IntegriCloud