summaryrefslogtreecommitdiffstats
path: root/sys/dev/isp
diff options
context:
space:
mode:
authormjacob <mjacob@FreeBSD.org>2004-01-29 02:40:43 +0000
committermjacob <mjacob@FreeBSD.org>2004-01-29 02:40:43 +0000
commit0de77ec260b24f32964944c0b36ec1893f3ff591 (patch)
treee4e3d4ca4916cd0d1386520672a4b2c0334fbdf3 /sys/dev/isp
parente55550188e5e1aa498740f0372317c40822bf6a3 (diff)
downloadFreeBSD-src-0de77ec260b24f32964944c0b36ec1893f3ff591.zip
FreeBSD-src-0de77ec260b24f32964944c0b36ec1893f3ff591.tar.gz
Fix longstanding buglet- for centrally handled CTIO2s we were checking the wrong
bit for this being the last CTIO2. It didn't matter since it really was the last CTIO2 and the resources recycled, but still.... Add in CTIO3 define for future DAC work.
Diffstat (limited to 'sys/dev/isp')
-rw-r--r--sys/dev/isp/isp_target.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/dev/isp/isp_target.c b/sys/dev/isp/isp_target.c
index 4f7d599..33e8262 100644
--- a/sys/dev/isp/isp_target.c
+++ b/sys/dev/isp/isp_target.c
@@ -159,6 +159,7 @@ isp_target_notify(struct ispsoftc *isp, void *vptr, u_int16_t *optrp)
isp_get_atio2(isp, at2iop, (at2_entry_t *) local);
isp_handle_atio2(isp, (at2_entry_t *) local);
break;
+ case RQSTYPE_CTIO3:
case RQSTYPE_CTIO2:
isp_get_ctio2(isp, ct2iop, (ct2_entry_t *) local);
isp_handle_ctio2(isp, (ct2_entry_t *) local);
@@ -1152,7 +1153,7 @@ isp_handle_ctio2(struct ispsoftc *isp, ct2_entry_t *ct)
* order we got them.
*/
if (ct->ct_syshandle == 0) {
- if ((ct->ct_flags & CT_SENDSTATUS) == 0) {
+ if ((ct->ct_flags & CT2_SENDSTATUS) == 0) {
isp_prt(isp, pl,
"intermediate CTIO completed ok");
} else {
@@ -1168,7 +1169,7 @@ isp_handle_ctio2(struct ispsoftc *isp, ct2_entry_t *ct)
if ((ct->ct_flags & CT2_DATAMASK) != CT2_NO_DATA) {
ISP_DMAFREE(isp, xs, ct->ct_syshandle);
}
- if (ct->ct_flags & CT_SENDSTATUS) {
+ if (ct->ct_flags & CT2_SENDSTATUS) {
/*
* Sent status and command complete.
*
OpenPOWER on IntegriCloud