DF-1887 / fix.diff
diff --git a/sys/dev/raid/vinum/vinumrevive.c b/sys/dev/raid/vinum/vinumrevive.c --- a/sys/dev/raid/vinum/vinumrevive.c +++ b/sys/dev/raid/vinum/vinumrevive.c @@ -181,6 +181,10 @@ bp->b_bio1.bio_done = biodone_sync; sdio(&bp->b_bio1); /* perform the I/O */ biowait(&bp->b_bio1, "drvwr"); + if (lock) { + unlockrange(sd->plexno, lock); + lock = 0; + } if (bp->b_flags & B_ERROR) error = bp->b_error; else { |