diff options
author | mjacob <mjacob@FreeBSD.org> | 2007-03-14 05:58:07 +0000 |
---|---|---|
committer | mjacob <mjacob@FreeBSD.org> | 2007-03-14 05:58:07 +0000 |
commit | 5578c406a968d3f657817f4afb165224d6297d3b (patch) | |
tree | 3771907afe13d02c6362cc7e321caf2f7b19d82a /sys/dev/isp | |
parent | 35376076cb34e672b8b3b6bda741b7bb15317a9c (diff) | |
download | FreeBSD-src-5578c406a968d3f657817f4afb165224d6297d3b.zip FreeBSD-src-5578c406a968d3f657817f4afb165224d6297d3b.tar.gz |
Don't call isp_intr from isp_start- this seems to, in rare cases,
cause confusion with at least the 23XX chipsets where the output
queue index pointer just gets a bit whacko.
MFC after: 1 day
Diffstat (limited to 'sys/dev/isp')
-rw-r--r-- | sys/dev/isp/isp.c | 8 |
1 files changed, 1 insertions, 7 deletions
diff --git a/sys/dev/isp/isp.c b/sys/dev/isp/isp.c index cef6487..6e938bc 100644 --- a/sys/dev/isp/isp.c +++ b/sys/dev/isp/isp.c @@ -3995,8 +3995,7 @@ int isp_start(XS_T *xs) { ispsoftc_t *isp; - uint32_t nxti, optr, handle, isr; - uint16_t sema, mbox; + uint32_t nxti, optr, handle; uint8_t local[QENTRY_LEN]; ispreq_t *reqp, *qep; void *cdbp; @@ -4261,11 +4260,6 @@ isp_start(XS_T *xs) (long) XS_XFRLEN(xs)); ISP_ADD_REQUEST(isp, nxti); isp->isp_nactive++; - if (IS_23XX(isp) || IS_24XX(isp)) { - if (ISP_READ_ISR(isp, &isr, &sema, &mbox)) { - isp_intr(isp, isr, sema, mbox); - } - } return (CMD_QUEUED); } |