svn commit: r247918 - head/sys/geom/raid

Alexander Motin mav at FreeBSD.org
Thu Mar 7 18:55:38 UTC 2013


Author: mav
Date: Thu Mar  7 18:55:37 2013
New Revision: 247918
URL: http://svnweb.freebsd.org/changeset/base/247918

Log:
  Fix panic when Secondary_Element_Count == 1 and Secondary_Element_Seq
  is not set (255).
  
  Reported by:	sbruno
  MFC after:	1 week

Modified:
  head/sys/geom/raid/md_ddf.c

Modified: head/sys/geom/raid/md_ddf.c
==============================================================================
--- head/sys/geom/raid/md_ddf.c	Thu Mar  7 16:50:07 2013	(r247917)
+++ head/sys/geom/raid/md_ddf.c	Thu Mar  7 18:55:37 2013	(r247918)
@@ -881,7 +881,10 @@ ddf_vol_meta_update(struct ddf_vol_meta 
 	hdr = src->hdr;
 	vde = &src->vdr->entry[ddf_meta_find_vd(src, GUID)];
 	vdc = ddf_meta_find_vdc(src, GUID);
-	bvd = GET8D(src, vdc->Secondary_Element_Seq);
+	if (GET8D(src, vdc->Secondary_Element_Count) == 1)
+		bvd = 0;
+	else
+		bvd = GET8D(src, vdc->Secondary_Element_Seq);
 	size = GET16(src, hdr->Configuration_Record_Length) * src->sectorsize;
 
 	if (dst->vdc == NULL ||


More information about the svn-src-all mailing list