diff options
author | mjacob <mjacob@FreeBSD.org> | 2004-01-29 02:40:43 +0000 |
---|---|---|
committer | mjacob <mjacob@FreeBSD.org> | 2004-01-29 02:40:43 +0000 |
commit | 0de77ec260b24f32964944c0b36ec1893f3ff591 (patch) | |
tree | e4e3d4ca4916cd0d1386520672a4b2c0334fbdf3 /sys/dev/isp | |
parent | e55550188e5e1aa498740f0372317c40822bf6a3 (diff) | |
download | FreeBSD-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.c | 5 |
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. * |