Revert r331273: "Release the "TUR" reference when clearing the TUR work flag. We mostly"

It exposes other issues, so revert to the pervious state of known issues.
This commit is contained in:
Warner Losh 2018-03-21 12:55:59 +00:00
parent 661722e76f
commit df4ee7639e

View File

@ -3114,7 +3114,6 @@ dastart(struct cam_periph *periph, union ccb *start_ccb)
if (bp == NULL) {
if (cam_iosched_has_work_flags(softc->cam_iosched, DA_WORK_TUR)) {
cam_iosched_clr_work_flags(softc->cam_iosched, DA_WORK_TUR);
da_periph_release_locked(periph, DA_REF_TUR);
scsi_test_unit_ready(&start_ccb->csio,
/*retries*/ da_retry_count,
dadone,
@ -3140,6 +3139,11 @@ dastart(struct cam_periph *periph, union ccb *start_ccb)
}
}
if (cam_iosched_has_work_flags(softc->cam_iosched, DA_WORK_TUR)) {
cam_iosched_clr_work_flags(softc->cam_iosched, DA_WORK_TUR);
da_periph_release_locked(periph, DA_REF_TUR);
}
if ((bp->bio_flags & BIO_ORDERED) != 0 ||
(softc->flags & DA_FLAG_NEED_OTAG) != 0) {
softc->flags &= ~DA_FLAG_NEED_OTAG;