diff options
author | phk <phk@FreeBSD.org> | 2003-04-28 06:10:35 +0000 |
---|---|---|
committer | phk <phk@FreeBSD.org> | 2003-04-28 06:10:35 +0000 |
commit | 600f5cf898c0247ef04cdb52bd6aeb4c726db69f (patch) | |
tree | ab8f46790ca1c676efdbfddfc6ab013fbc5487fb /sys/geom/bde | |
parent | afa5d8b791a6e87a1fd1647989760f03a0fb1566 (diff) | |
download | FreeBSD-src-600f5cf898c0247ef04cdb52bd6aeb4c726db69f.zip FreeBSD-src-600f5cf898c0247ef04cdb52bd6aeb4c726db69f.tar.gz |
Explicitly set the sector state to JUNK if we encounter a read-error.
Diffstat (limited to 'sys/geom/bde')
-rw-r--r-- | sys/geom/bde/g_bde_work.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/geom/bde/g_bde_work.c b/sys/geom/bde/g_bde_work.c index 9fd0f98..036f01e 100644 --- a/sys/geom/bde/g_bde_work.c +++ b/sys/geom/bde/g_bde_work.c @@ -479,7 +479,10 @@ g_bde_read_done(struct bio *bp) sc = bp->bio_caller2; mtx_lock(&sc->worklist_mutex); sp->error = bp->bio_error; - sp->state = VALID; + if (sp->error == 0) + sp->state = VALID; + else + sp->state = JUNK; wakeup(sc); g_destroy_bio(bp); mtx_unlock(&sc->worklist_mutex); |