svn commit: r262077 - stable/9/sys/cddl/contrib/opensolaris/uts/common/fs/zfs
Andriy Gapon
avg at FreeBSD.org
Mon Feb 17 16:17:57 UTC 2014
Author: avg
Date: Mon Feb 17 16:17:56 2014
New Revision: 262077
URL: http://svnweb.freebsd.org/changeset/base/262077
Log:
MFC r253441: Manually merge part of vendor import r238583 from Illumos
Modified:
stable/9/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c
Directory Properties:
stable/9/sys/ (props changed)
stable/9/sys/cddl/contrib/opensolaris/ (props changed)
Modified: stable/9/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c
==============================================================================
--- stable/9/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c Mon Feb 17 16:07:58 2014 (r262076)
+++ stable/9/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c Mon Feb 17 16:17:56 2014 (r262077)
@@ -1258,12 +1258,16 @@ vdev_open(vdev_t *vd)
vd->vdev_ashift = MAX(ashift, vd->vdev_ashift);
} else {
/*
- * Make sure the alignment requirement hasn't increased.
+ * Detect if the alignment requirement has increased.
+ * We don't want to make the pool unavailable, just
+ * issue a warning instead.
*/
- if (ashift > vd->vdev_top->vdev_ashift) {
- vdev_set_state(vd, B_TRUE, VDEV_STATE_CANT_OPEN,
- VDEV_AUX_BAD_LABEL);
- return (EINVAL);
+ if (ashift > vd->vdev_top->vdev_ashift &&
+ vd->vdev_ops->vdev_op_leaf) {
+ cmn_err(CE_WARN,
+ "Disk, '%s', has a block alignment that is "
+ "larger than the pool's alignment\n",
+ vd->vdev_path);
}
vd->vdev_max_asize = max_asize;
}
More information about the svn-src-stable-9
mailing list