Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 4 Sep 2014 00:10:06 +0000 (UTC)
From:      Benno Rice <benno@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r271070 - head/sys/kern
Message-ID:  <201409040010.s840A6Jf052681@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: benno
Date: Thu Sep  4 00:10:06 2014
New Revision: 271070
URL: http://svnweb.freebsd.org/changeset/base/271070

Log:
  Add KASSERTs to catch the case where a developer may have forgotten to
  set bo_bsize on a bufobj.
  
  This is a slight modification of the patch provided.
  
  PR:		193146
  Submitted by:	Conrad Meyer <conrad.meyer@isilon.com>
  Sponsored by:	EMC Isilon Storage Division

Modified:
  head/sys/kern/vfs_bio.c

Modified: head/sys/kern/vfs_bio.c
==============================================================================
--- head/sys/kern/vfs_bio.c	Wed Sep  3 23:29:06 2014	(r271069)
+++ head/sys/kern/vfs_bio.c	Thu Sep  4 00:10:06 2014	(r271070)
@@ -2971,6 +2971,7 @@ bp_unmapped_get_kva(struct buf *bp, dadd
 	 * if the buffer was mapped.
 	 */
 	bsize = vn_isdisk(bp->b_vp, NULL) ? DEV_BSIZE : bp->b_bufobj->bo_bsize;
+	KASSERT(bsize != 0, ("bsize == 0, check bo->bo_bsize"));
 	offset = blkno * bsize;
 	maxsize = size + (offset & PAGE_MASK);
 	maxsize = imax(maxsize, bsize);
@@ -3220,6 +3221,7 @@ loop:
 			return NULL;
 
 		bsize = vn_isdisk(vp, NULL) ? DEV_BSIZE : bo->bo_bsize;
+		KASSERT(bsize != 0, ("bsize == 0, check bo->bo_bsize"));
 		offset = blkno * bsize;
 		vmio = vp->v_object != NULL;
 		if (vmio) {



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201409040010.s840A6Jf052681>