summaryrefslogtreecommitdiff
path: root/sys/scsi
diff options
context:
space:
mode:
authorArtur Grabowski <art@cvs.openbsd.org>2002-06-09 00:03:55 +0000
committerArtur Grabowski <art@cvs.openbsd.org>2002-06-09 00:03:55 +0000
commit428508505653ffa1dbf3972c1e1cb44dd13f0165 (patch)
tree76771026f4c95397de0f162c9a2b96bc43b3246b /sys/scsi
parent1025c005279f1e99b2ce492903cb512d84e705f2 (diff)
some splassert and protection of biodone.
Diffstat (limited to 'sys/scsi')
-rw-r--r--sys/scsi/scsi_ioctl.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/sys/scsi/scsi_ioctl.c b/sys/scsi/scsi_ioctl.c
index a2b2629516e..5934ce99fe6 100644
--- a/sys/scsi/scsi_ioctl.c
+++ b/sys/scsi/scsi_ioctl.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: scsi_ioctl.c,v 1.15 2002/03/14 01:27:13 millert Exp $ */
+/* $OpenBSD: scsi_ioctl.c,v 1.16 2002/06/09 00:03:54 art Exp $ */
/* $NetBSD: scsi_ioctl.c,v 1.23 1996/10/12 23:23:17 christos Exp $ */
/*
@@ -126,6 +126,8 @@ scsi_user_done(xs)
scsireq_t *screq;
struct scsi_link *sc_link;
+ splassert(IPL_BIO);
+
bp = xs->bp;
if (!bp) { /* ALL user requests must have a buf */
sc_print_addr(xs->sc_link);
@@ -267,7 +269,9 @@ scsistrategy(bp)
bad:
bp->b_flags |= B_ERROR;
bp->b_error = error;
+ s = splbio();
biodone(bp);
+ splx(s);
}
/*