aboutsummaryrefslogtreecommitdiff
path: root/sys/geom/vinum/geom_vinum_plex.c
diff options
context:
space:
mode:
authorLukas Ertl <le@FreeBSD.org>2004-06-23 23:52:55 +0000
committerLukas Ertl <le@FreeBSD.org>2004-06-23 23:52:55 +0000
commit3a1e11b485453996ee24a92a03ec0753ff6dfe5c (patch)
tree74cd4c748586cf1a9aebc23b58ba1c8d4c8be9d6 /sys/geom/vinum/geom_vinum_plex.c
parentbdf8ab4692a4f24cc321f4876f4d0c8b39dff4c9 (diff)
Add a function to clean up RAID5 packets and use it when I/O has
finished or when building the complete packet fails.
Notes
Notes: svn path=/head/; revision=131000
Diffstat (limited to 'sys/geom/vinum/geom_vinum_plex.c')
-rw-r--r--sys/geom/vinum/geom_vinum_plex.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/geom/vinum/geom_vinum_plex.c b/sys/geom/vinum/geom_vinum_plex.c
index 1887366f0f50..c993917a7da2 100644
--- a/sys/geom/vinum/geom_vinum_plex.c
+++ b/sys/geom/vinum/geom_vinum_plex.c
@@ -275,6 +275,8 @@ gv_plex_start(struct bio *bp)
boff);
if (err) {
+ if (p->org == GV_PLEX_RAID5)
+ gv_free_raid5_packet(wp);
bp->bio_completed += bcount;
if (bp->bio_error == 0)
bp->bio_error = err;