svn commit: r234410 - stable/9/sbin/bsdlabel

Andrey V. Elsukov ae at FreeBSD.org
Wed Apr 18 05:16:03 UTC 2012


Author: ae
Date: Wed Apr 18 05:16:02 2012
New Revision: 234410
URL: http://svn.freebsd.org/changeset/base/234410

Log:
  MFC r234122:
    It seems that libdisk(3) incorrectly sets d_secperunit value.
    Automatically fix it like GEOM_PART_BSD does.
  
    PR:		bin/165789

Modified:
  stable/9/sbin/bsdlabel/bsdlabel.c
Directory Properties:
  stable/9/sbin/bsdlabel/   (props changed)

Modified: stable/9/sbin/bsdlabel/bsdlabel.c
==============================================================================
--- stable/9/sbin/bsdlabel/bsdlabel.c	Wed Apr 18 05:12:17 2012	(r234409)
+++ stable/9/sbin/bsdlabel/bsdlabel.c	Wed Apr 18 05:16:02 2012	(r234410)
@@ -1194,7 +1194,8 @@ checklabel(struct disklabel *lp)
 			lp->d_interleave = vl->d_interleave;
 		if (lp->d_secpercyl == 0)
 			lp->d_secpercyl = vl->d_secpercyl;
-		if (lp->d_secperunit == 0)
+		if (lp->d_secperunit == 0 ||
+		    lp->d_secperunit > vl->d_secperunit)
 			lp->d_secperunit = vl->d_secperunit;
 		if (lp->d_bbsize == 0)
 			lp->d_bbsize = vl->d_bbsize;


More information about the svn-src-all mailing list