diff options
| author | Greg Lehey <grog@FreeBSD.org> | 1999-10-17 23:55:10 +0000 |
|---|---|---|
| committer | Greg Lehey <grog@FreeBSD.org> | 1999-10-17 23:55:10 +0000 |
| commit | 54cd2d33094236800838d3d5a13e070bfaa23885 (patch) | |
| tree | d358a81d983c6371a19104f55e16de5e3dd95e62 /sys/dev | |
| parent | eb5fe92141568ad04a12580f1360cf342ad280ec (diff) | |
Notes
Diffstat (limited to 'sys/dev')
| -rw-r--r-- | sys/dev/vinum/vinumrequest.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/sys/dev/vinum/vinumrequest.c b/sys/dev/vinum/vinumrequest.c index 346527e0d285..d52784543f86 100644 --- a/sys/dev/vinum/vinumrequest.c +++ b/sys/dev/vinum/vinumrequest.c @@ -383,6 +383,7 @@ launch_requests(struct request *rq, int reviveok) } /* Now fire off the requests */ + s = splbio(); /* lock out the interrupt routines */ for (rqg = rq->rqg; rqg != NULL; rqg = rqg->next) { /* through the whole request chain */ for (rqno = 0; rqno < rqg->count; rqno++) { rqe = &rqg->rqe[rqno]; @@ -419,11 +420,9 @@ launch_requests(struct request *rq, int reviveok) logrq(loginfo_rqe, (union rqinfou) rqe, rq->bp); #endif - if ((rqe->b.b_flags & B_READ) == 0) { - s = splbio(); + if ((rqe->b.b_flags & B_READ) == 0) rqe->b.b_vp->v_numoutput++; /* one more output going */ - splx(s); - } + rqe->b.b_flags |= B_ORDERED; /* stick to the request order */ /* fire off the request */ @@ -431,6 +430,7 @@ launch_requests(struct request *rq, int reviveok) } } } + splx(s); return 0; } |
