diff options
author | le <le@FreeBSD.org> | 2004-06-23 23:52:55 +0000 |
---|---|---|
committer | le <le@FreeBSD.org> | 2004-06-23 23:52:55 +0000 |
commit | 9eb205c8da3ccebfc8dc3c923d5a0571cb5c528f (patch) | |
tree | 74cd4c748586cf1a9aebc23b58ba1c8d4c8be9d6 /sys/geom/vinum/geom_vinum_plex.c | |
parent | 30666d1f0f431b581eeacc45735ff41d85d27c23 (diff) | |
download | FreeBSD-src-9eb205c8da3ccebfc8dc3c923d5a0571cb5c528f.zip FreeBSD-src-9eb205c8da3ccebfc8dc3c923d5a0571cb5c528f.tar.gz |
Add a function to clean up RAID5 packets and use it when I/O has
finished or when building the complete packet fails.
Diffstat (limited to 'sys/geom/vinum/geom_vinum_plex.c')
-rw-r--r-- | sys/geom/vinum/geom_vinum_plex.c | 2 |
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 1887366..c993917 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; |