Deleted Added
full compact
71c71
< __FBSDID("$FreeBSD: head/sys/cam/scsi/scsi_ch.c 164906 2006-12-05 07:45:28Z mjacob $");
---
> __FBSDID("$FreeBSD: head/sys/cam/scsi/scsi_ch.c 168752 2007-04-15 08:49:19Z scottl $");
176,177d175
< #define CHUNIT(x) (minor((x)))
<
216c214
< .d_flags = D_NEEDGIANT,
---
> .d_flags = 0,
378a377
> cam_periph_unlock(periph);
381a381
> cam_periph_lock(periph);
396c396
< * Lock this peripheral until we are setup.
---
> * Lock this periph until we are setup.
399c399
< (void)cam_periph_lock(periph, PRIBIO);
---
> (void)cam_periph_hold(periph, PRIBIO);
411d410
< int s;
414,415c413,414
< if (periph == NULL)
< return(ENXIO);
---
> if (cam_periph_acquire(periph) != CAM_REQ_CMP)
> return (ENXIO);
419c418,419
< s = splsoftcam();
---
> cam_periph_lock(periph);
>
421c421,422
< splx(s);
---
> cam_periph_unlock(periph);
> cam_periph_release(periph);
425,426c426,433
< if ((error = cam_periph_lock(periph, PRIBIO | PCATCH)) != 0) {
< splx(s);
---
> if ((softc->flags & CH_FLAG_OPEN) == 0)
> softc->flags |= CH_FLAG_OPEN;
> else
> cam_periph_release(periph);
>
> if ((error = cam_periph_hold(periph, PRIBIO | PCATCH)) != 0) {
> cam_periph_unlock(periph);
> cam_periph_release(periph);
429,430d435
<
< splx(s);
432,437d436
< if ((softc->flags & CH_FLAG_OPEN) == 0) {
< if (cam_periph_acquire(periph) != CAM_REQ_CMP)
< return(ENXIO);
< softc->flags |= CH_FLAG_OPEN;
< }
<
447a447
> cam_periph_unhold(periph);
468,469c468
< if ((error = cam_periph_lock(periph, PRIBIO)) != 0)
< return(error);
---
> cam_periph_lock(periph);
483d481
< int s;
490d487
< s = splbio();
497d493
< splx(s);
499,500c495
< } else
< splx(s);
---
> }
673c668
< cam_periph_unlock(periph);
---
> cam_periph_unhold(periph);
711a707
> cam_periph_lock(periph);
732c728,729
< if ((flag & FWRITE) == 0)
---
> if ((flag & FWRITE) == 0) {
> cam_periph_unlock(periph);
733a731
> }
757,758c755,758
< if (new_picker > (softc->sc_counts[CHET_MT] - 1))
< return (EINVAL);
---
> if (new_picker > (softc->sc_counts[CHET_MT] - 1)) {
> error = EINVAL;
> break;
> }
796a797
> cam_periph_unlock(periph);
1093a1095
> cam_periph_unlock(periph);
1095a1098
> cam_periph_lock(periph);
1115a1119
> cam_periph_unlock(periph);
1132a1137
> cam_periph_lock(periph);
1151a1157
> cam_periph_unlock(periph);
1188a1195
> cam_periph_lock(periph);