Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 12 Aug 2010 05:59:55 +0000 (UTC)
From:      Martin Matuska <mm@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org
Subject:   svn commit: r211205 - stable/8/sys/boot/zfs
Message-ID:  <201008120559.o7C5xtDR090364@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: mm
Date: Thu Aug 12 05:59:55 2010
New Revision: 211205
URL: http://svn.freebsd.org/changeset/base/211205

Log:
  MFC r211091:
  
  Return EIO if vdev->v_phys_read is NULL.
  
  This fixes booting from a ZFS mirror with a unavailable primary device.
  
  PR:		kern/148655
  Reviewed by:	avg
  Approved by:	delphij (mentor)

Modified:
  stable/8/sys/boot/zfs/zfsimpl.c
Directory Properties:
  stable/8/sys/   (props changed)
  stable/8/sys/amd64/include/xen/   (props changed)
  stable/8/sys/cam/   (props changed)
  stable/8/sys/cddl/contrib/opensolaris/   (props changed)
  stable/8/sys/contrib/dev/acpica/   (props changed)
  stable/8/sys/contrib/pf/   (props changed)
  stable/8/sys/dev/xen/xenpci/   (props changed)

Modified: stable/8/sys/boot/zfs/zfsimpl.c
==============================================================================
--- stable/8/sys/boot/zfs/zfsimpl.c	Thu Aug 12 01:08:50 2010	(r211204)
+++ stable/8/sys/boot/zfs/zfsimpl.c	Thu Aug 12 05:59:55 2010	(r211205)
@@ -328,6 +328,9 @@ vdev_read_phys(vdev_t *vdev, const blkpt
 	size_t psize;
 	int rc;
 
+	if (!vdev->v_phys_read)
+		return (EIO);
+
 	if (bp) {
 		psize = BP_GET_PSIZE(bp);
 	} else {



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