svn commit: r307313 - in vendor-sys/illumos/dist/uts/common/fs/zfs: . sys
Alexander Motin
mav at FreeBSD.org
Fri Oct 14 11:41:08 UTC 2016
Author: mav
Date: Fri Oct 14 11:41:06 2016
New Revision: 307313
URL: https://svnweb.freebsd.org/changeset/base/307313
Log:
5120 zfs should allow large block/gzip/raidz boot pool (loader project)
Reviewed by: George Wilson <george.wilson at delphix.com>
Reviewed by: Yuri Pankov <yuri.pankov at nexenta.com>
Reviewed by: Andrew Stormont <andyjstormont at gmail.com>
Reviewed by: Matthew Ahrens <mahrens at delphix.com>
Approved by: Robert Mustacchi <rm at joyent.com>
Author: Toomas Soome <tsoome at me.com>
openzfs/openzfs at c8811bd3e2427dddbac6c05a59cfe117d8fea370
Modified:
vendor-sys/illumos/dist/uts/common/fs/zfs/spa.c
vendor-sys/illumos/dist/uts/common/fs/zfs/sys/zio.h
vendor-sys/illumos/dist/uts/common/fs/zfs/vdev.c
vendor-sys/illumos/dist/uts/common/fs/zfs/zfs_ioctl.c
Modified: vendor-sys/illumos/dist/uts/common/fs/zfs/spa.c
==============================================================================
--- vendor-sys/illumos/dist/uts/common/fs/zfs/spa.c Fri Oct 14 09:34:48 2016 (r307312)
+++ vendor-sys/illumos/dist/uts/common/fs/zfs/spa.c Fri Oct 14 11:41:06 2016 (r307313)
@@ -26,6 +26,7 @@
* Copyright (c) 2014 Spectra Logic Corporation, All rights reserved.
* Copyright 2013 Saso Kiselkov. All rights reserved.
* Copyright (c) 2014 Integros [integros.com]
+ * Copyright 2016 Toomas Soome <tsoome at me.com>
*/
/*
@@ -519,12 +520,6 @@ spa_prop_validate(spa_t *spa, nvlist_t *
&propval)) == 0 &&
!BOOTFS_COMPRESS_VALID(propval)) {
error = SET_ERROR(ENOTSUP);
- } else if ((error =
- dsl_prop_get_int_ds(dmu_objset_ds(os),
- zfs_prop_to_name(ZFS_PROP_RECORDSIZE),
- &propval)) == 0 &&
- propval > SPA_OLD_MAXBLOCKSIZE) {
- error = SET_ERROR(ENOTSUP);
} else {
objnum = dmu_objset_id(os);
}
Modified: vendor-sys/illumos/dist/uts/common/fs/zfs/sys/zio.h
==============================================================================
--- vendor-sys/illumos/dist/uts/common/fs/zfs/sys/zio.h Fri Oct 14 09:34:48 2016 (r307312)
+++ vendor-sys/illumos/dist/uts/common/fs/zfs/sys/zio.h Fri Oct 14 11:41:06 2016 (r307313)
@@ -25,6 +25,7 @@
* Copyright (c) 2012, 2016 by Delphix. All rights reserved.
* Copyright (c) 2013 by Saso Kiselkov. All rights reserved.
* Copyright (c) 2013, Joyent, Inc. All rights reserved.
+ * Copyright 2016 Toomas Soome <tsoome at me.com>
*/
#ifndef _ZIO_H
@@ -141,6 +142,15 @@ enum zio_compress {
#define BOOTFS_COMPRESS_VALID(compress) \
((compress) == ZIO_COMPRESS_LZJB || \
(compress) == ZIO_COMPRESS_LZ4 || \
+ (compress) == ZIO_COMPRESS_GZIP_1 || \
+ (compress) == ZIO_COMPRESS_GZIP_2 || \
+ (compress) == ZIO_COMPRESS_GZIP_3 || \
+ (compress) == ZIO_COMPRESS_GZIP_4 || \
+ (compress) == ZIO_COMPRESS_GZIP_5 || \
+ (compress) == ZIO_COMPRESS_GZIP_6 || \
+ (compress) == ZIO_COMPRESS_GZIP_7 || \
+ (compress) == ZIO_COMPRESS_GZIP_8 || \
+ (compress) == ZIO_COMPRESS_GZIP_9 || \
(compress) == ZIO_COMPRESS_ON || \
(compress) == ZIO_COMPRESS_OFF)
Modified: vendor-sys/illumos/dist/uts/common/fs/zfs/vdev.c
==============================================================================
--- vendor-sys/illumos/dist/uts/common/fs/zfs/vdev.c Fri Oct 14 09:34:48 2016 (r307312)
+++ vendor-sys/illumos/dist/uts/common/fs/zfs/vdev.c Fri Oct 14 11:41:06 2016 (r307313)
@@ -24,6 +24,7 @@
* Copyright (c) 2011, 2015 by Delphix. All rights reserved.
* Copyright 2015 Nexenta Systems, Inc. All rights reserved.
* Copyright (c) 2014 Integros [integros.com]
+ * Copyright 2016 Toomas Soome <tsoome at me.com>
*/
#include <sys/zfs_context.h>
@@ -3319,9 +3320,8 @@ vdev_set_state(vdev_t *vd, boolean_t iso
/*
* Check the vdev configuration to ensure that it's capable of supporting
- * a root pool. Currently, we do not support RAID-Z or partial configuration.
- * In addition, only a single top-level vdev is allowed and none of the leaves
- * can be wholedisks.
+ * a root pool. We do not support partial configuration.
+ * In addition, only a single top-level vdev is allowed.
*/
boolean_t
vdev_is_bootable(vdev_t *vd)
@@ -3332,8 +3332,7 @@ vdev_is_bootable(vdev_t *vd)
if (strcmp(vdev_type, VDEV_TYPE_ROOT) == 0 &&
vd->vdev_children > 1) {
return (B_FALSE);
- } else if (strcmp(vdev_type, VDEV_TYPE_RAIDZ) == 0 ||
- strcmp(vdev_type, VDEV_TYPE_MISSING) == 0) {
+ } else if (strcmp(vdev_type, VDEV_TYPE_MISSING) == 0) {
return (B_FALSE);
}
}
Modified: vendor-sys/illumos/dist/uts/common/fs/zfs/zfs_ioctl.c
==============================================================================
--- vendor-sys/illumos/dist/uts/common/fs/zfs/zfs_ioctl.c Fri Oct 14 09:34:48 2016 (r307312)
+++ vendor-sys/illumos/dist/uts/common/fs/zfs/zfs_ioctl.c Fri Oct 14 11:41:06 2016 (r307313)
@@ -30,6 +30,7 @@
* Copyright (c) 2013 by Saso Kiselkov. All rights reserved.
* Copyright (c) 2013 Steven Hartland. All rights reserved.
* Copyright (c) 2014 Integros [integros.com]
+ * Copyright 2016 Toomas Soome <tsoome at me.com>
*/
/*
@@ -3837,16 +3838,6 @@ zfs_check_settable(const char *dsname, n
spa_t *spa;
/*
- * If this is a bootable dataset then
- * the we don't allow large (>128K) blocks,
- * because GRUB doesn't support them.
- */
- if (zfs_is_bootfs(dsname) &&
- intval > SPA_OLD_MAXBLOCKSIZE) {
- return (SET_ERROR(ERANGE));
- }
-
- /*
* We don't allow setting the property above 1MB,
* unless the tunable has been changed.
*/
More information about the svn-src-all
mailing list