]> git.proxmox.com Git - mirror_zfs.git/commitdiff
OpenZFS 8906 - uts: illumos rootfs should support salted cksum
authorToomas Soome <tsoome@me.com>
Wed, 1 Jun 2016 16:18:10 +0000 (19:18 +0300)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Fri, 27 Jul 2018 15:35:28 +0000 (08:35 -0700)
Porting notes:
* As of grub-2.02 these checksums are not supported.  However, as
  pointed out in #6501 there are alternatives such as EFISTUB which
  work and have no such restriction.  A warning was added to the
  checksum property section of the zfs.8 man page.

Authored by: Toomas Soome <tsoome@me.com>
Reviewed by: C Fraire <cfraire@me.com>
Reviewed by: Robert Mustacchi <rm@joyent.com>
Reviewed by: Yuri Pankov <yuripv@yuripv.net>
Approved by: Dan McDonald <danmcd@joyent.com>
Ported-by: Brian Behlendorf <behlendorf1@llnl.gov>
OpenZFS-issue: https://illumos.org/issues/8906
OpenZFS-commit: https://github.com/openzfs/openzfs/commit/7dec52f
Closes #6501
Closes #7714

man/man5/zpool-features.5
man/man8/zfs.8
module/zfs/zfs_ioctl.c

index 8d5f4682174a5a17c9d4608f504d107290f2d5aa..bad432d123469ed1712de61b831f78cbe7e34978 100644 (file)
@@ -14,7 +14,7 @@
 .\" CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your
 .\" own identifying information:
 .\" Portions Copyright [yyyy] [name of copyright owner]
-.TH ZPOOL-FEATURES 5 "Aug 27, 2013"
+.TH ZPOOL-FEATURES 5 "Jun 8, 2018"
 .SH NAME
 zpool\-features \- ZFS pool feature descriptions
 .SH DESCRIPTION
@@ -248,8 +248,9 @@ immediately activate the \fBlz4_compress\fR feature on the underlying
 pool using the \fBzfs\fR(1M) command. Also, all newly written metadata
 will be compressed with \fBlz4\fR algorithm. Since this feature is not
 read-only compatible, this operation will render the pool unimportable
-on systems without support for the \fBlz4_compress\fR feature. Booting
-off of \fBlz4\fR-compressed root pools is supported.
+on systems without support for the \fBlz4_compress\fR feature.
+
+Booting off of \fBlz4\fR-compressed root pools is supported.
 
 This feature becomes \fBactive\fR as soon as it is enabled and will
 never return to being \fBenabled\fB.
@@ -598,8 +599,7 @@ can turn on the \fBsha512\fR checksum on any dataset using the
 and will return to being \fBenabled\fR once all filesystems that have
 ever had their checksum set to \fBsha512\fR are destroyed.
 
-Booting off of pools utilizing SHA-512/256 is supported (provided that
-the updated GRUB stage2 module is installed).
+Booting off of pools utilizing SHA-512/256 is supported.
 
 .RE
 
@@ -633,9 +633,7 @@ can turn on the \fBskein\fR checksum on any dataset using the
 and will return to being \fBenabled\fR once all filesystems that have
 ever had their checksum set to \fBskein\fR are destroyed.
 
-Booting off of pools using \fBskein\fR is \fBNOT\fR supported
--- any attempt to enable \fBskein\fR on a root pool will fail with an
-error.
+Booting off of pools using \fBskein\fR is supported.
 
 .RE
 
@@ -675,9 +673,7 @@ can turn on the \fBedonr\fR checksum on any dataset using the
 and will return to being \fBenabled\fR once all filesystems that have
 ever had their checksum set to \fBedonr\fR are destroyed.
 
-Booting off of pools using \fBedonr\fR is \fBNOT\fR supported
--- any attempt to enable \fBedonr\fR on a root pool will fail with an
-error.
+Booting off of pools using \fBedonr\fR is supported.
 
 .RE
 
index 5a74c66f469b4816f9cb0a566af1e6678c2e50a1..f1eed207f268c329882464d95f9a787d02f364fa 100644 (file)
@@ -30,7 +30,7 @@
 .\" Copyright 2017 Nexenta Systems, Inc.
 .\" Copyright 2018 Joyent, Inc.
 .\"
-.Dd January 10, 2018
+.Dd July 13, 2018
 .Dt ZFS 8 SMM
 .Os Linux
 .Sh NAME
@@ -1184,15 +1184,14 @@ The
 and
 .Sy edonr
 checksum algorithms require enabling the appropriate features on the pool.
+These algorithms are not supported by GRUB and should not be set on the
+.Sy bootfs
+filesystem when using GRUB to boot the system.
 Please see
 .Xr zpool-features 5
 for more information on these algorithms.
 .Pp
 Changing this property affects only newly-written data.
-.Pp
-Salted checksum algorithms
-.Pq Cm edonr , skein
-are currently not supported for any filesystem on the boot pools.
 .It Xo
 .Sy compression Ns = Ns Sy on Ns | Ns Sy off Ns | Ns Sy gzip Ns | Ns
 .Sy gzip- Ns Em N Ns | Ns Sy lz4 Ns | Ns Sy lzjb Ns | Ns Sy zle
index 911bf884a88b3f7c235ec3e804ef284541ba517b..a0d2127fbbcba2bb42b9991bc33382c14809ba60 100644 (file)
@@ -4130,16 +4130,7 @@ zfs_check_settable(const char *dsname, nvpair_t *pair, cred_t *cr)
 
                if ((err = spa_open(dsname, &spa, FTAG)) != 0)
                        return (err);
-               /*
-                * Salted checksums are not supported on root pools.
-                */
-               if (spa_bootfs(spa) != 0 &&
-                   intval < ZIO_CHECKSUM_FUNCTIONS &&
-                   (zio_checksum_table[intval].ci_flags &
-                   ZCHECKSUM_FLAG_SALTED)) {
-                       spa_close(spa, FTAG);
-                       return (SET_ERROR(ERANGE));
-               }
+
                if (!spa_feature_is_enabled(spa, feature)) {
                        spa_close(spa, FTAG);
                        return (SET_ERROR(ENOTSUP));