summaryrefslogtreecommitdiffstats
path: root/sys/geom/vinum
diff options
context:
space:
mode:
authorle <le@FreeBSD.org>2005-08-22 23:24:26 +0000
committerle <le@FreeBSD.org>2005-08-22 23:24:26 +0000
commitff1cc2947addaed59af757417ccf13eba9c9e855 (patch)
tree43bd1859ae8353eff44b4b907a8e617c61477a99 /sys/geom/vinum
parent9b00236fed95ecaefebce94aa850d4a5343eb83d (diff)
downloadFreeBSD-src-ff1cc2947addaed59af757417ccf13eba9c9e855.zip
FreeBSD-src-ff1cc2947addaed59af757417ccf13eba9c9e855.tar.gz
Correct the check if a plex is accessible in case it is not up.
This makes degraded RAID5 plexes actually work.
Diffstat (limited to 'sys/geom/vinum')
-rw-r--r--sys/geom/vinum/geom_vinum_volume.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/geom/vinum/geom_vinum_volume.c b/sys/geom/vinum/geom_vinum_volume.c
index 1ecb1da..510d3f0 100644
--- a/sys/geom/vinum/geom_vinum_volume.c
+++ b/sys/geom/vinum/geom_vinum_volume.c
@@ -261,7 +261,7 @@ gv_vol_normal_request(struct gv_volume *v, struct bio *bp)
if (p == NULL ||
(p->org == GV_PLEX_RAID5 && p->state < GV_PLEX_DEGRADED) ||
- (p->state <= GV_PLEX_DEGRADED)) {
+ (p->org != GV_PLEX_RAID5 && p->state <= GV_PLEX_DEGRADED)) {
g_destroy_bio(cbp);
bp->bio_children--;
g_io_deliver(bp, ENXIO);
OpenPOWER on IntegriCloud