mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2025-03-11 22:13:10 +03:00
OpenZFS 8906 - uts: illumos rootfs should support salted cksum
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
This commit is contained in:
parent
6857950e46
commit
1bd93ea1e0
@ -14,7 +14,7 @@
|
|||||||
.\" CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your
|
.\" CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your
|
||||||
.\" own identifying information:
|
.\" own identifying information:
|
||||||
.\" Portions Copyright [yyyy] [name of copyright owner]
|
.\" Portions Copyright [yyyy] [name of copyright owner]
|
||||||
.TH ZPOOL-FEATURES 5 "Aug 27, 2013"
|
.TH ZPOOL-FEATURES 5 "Jun 8, 2018"
|
||||||
.SH NAME
|
.SH NAME
|
||||||
zpool\-features \- ZFS pool feature descriptions
|
zpool\-features \- ZFS pool feature descriptions
|
||||||
.SH DESCRIPTION
|
.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
|
pool using the \fBzfs\fR(1M) command. Also, all newly written metadata
|
||||||
will be compressed with \fBlz4\fR algorithm. Since this feature is not
|
will be compressed with \fBlz4\fR algorithm. Since this feature is not
|
||||||
read-only compatible, this operation will render the pool unimportable
|
read-only compatible, this operation will render the pool unimportable
|
||||||
on systems without support for the \fBlz4_compress\fR feature. Booting
|
on systems without support for the \fBlz4_compress\fR feature.
|
||||||
off of \fBlz4\fR-compressed root pools is supported.
|
|
||||||
|
Booting off of \fBlz4\fR-compressed root pools is supported.
|
||||||
|
|
||||||
This feature becomes \fBactive\fR as soon as it is enabled and will
|
This feature becomes \fBactive\fR as soon as it is enabled and will
|
||||||
never return to being \fBenabled\fB.
|
never return to being \fBenabled\fB.
|
||||||
@ -510,8 +511,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
|
and will return to being \fBenabled\fR once all filesystems that have
|
||||||
ever had their checksum set to \fBsha512\fR are destroyed.
|
ever had their checksum set to \fBsha512\fR are destroyed.
|
||||||
|
|
||||||
Booting off of pools utilizing SHA-512/256 is supported (provided that
|
Booting off of pools utilizing SHA-512/256 is supported.
|
||||||
the updated GRUB stage2 module is installed).
|
|
||||||
|
|
||||||
.RE
|
.RE
|
||||||
|
|
||||||
@ -545,9 +545,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
|
and will return to being \fBenabled\fR once all filesystems that have
|
||||||
ever had their checksum set to \fBskein\fR are destroyed.
|
ever had their checksum set to \fBskein\fR are destroyed.
|
||||||
|
|
||||||
Booting off of pools using \fBskein\fR is \fBNOT\fR supported
|
Booting off of pools using \fBskein\fR is supported.
|
||||||
-- any attempt to enable \fBskein\fR on a root pool will fail with an
|
|
||||||
error.
|
|
||||||
|
|
||||||
.RE
|
.RE
|
||||||
|
|
||||||
@ -587,9 +585,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
|
and will return to being \fBenabled\fR once all filesystems that have
|
||||||
ever had their checksum set to \fBedonr\fR are destroyed.
|
ever had their checksum set to \fBedonr\fR are destroyed.
|
||||||
|
|
||||||
Booting off of pools using \fBedonr\fR is \fBNOT\fR supported
|
Booting off of pools using \fBedonr\fR is supported.
|
||||||
-- any attempt to enable \fBedonr\fR on a root pool will fail with an
|
|
||||||
error.
|
|
||||||
|
|
||||||
.RE
|
.RE
|
||||||
|
|
||||||
|
@ -29,7 +29,7 @@
|
|||||||
.\" Copyright 2016 Nexenta Systems, Inc.
|
.\" Copyright 2016 Nexenta Systems, Inc.
|
||||||
.\" Copyright 2016 Richard Laager. All rights reserved.
|
.\" Copyright 2016 Richard Laager. All rights reserved.
|
||||||
.\"
|
.\"
|
||||||
.Dd June 28, 2017
|
.Dd July 13, 2018
|
||||||
.Dt ZFS 8 SMM
|
.Dt ZFS 8 SMM
|
||||||
.Os Linux
|
.Os Linux
|
||||||
.Sh NAME
|
.Sh NAME
|
||||||
@ -1049,6 +1049,9 @@ The
|
|||||||
and
|
and
|
||||||
.Sy edonr
|
.Sy edonr
|
||||||
checksum algorithms require enabling the appropriate features on the pool.
|
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
|
Please see
|
||||||
.Xr zpool-features 5
|
.Xr zpool-features 5
|
||||||
for more information on these algorithms.
|
for more information on these algorithms.
|
||||||
|
@ -3985,16 +3985,7 @@ zfs_check_settable(const char *dsname, nvpair_t *pair, cred_t *cr)
|
|||||||
|
|
||||||
if ((err = spa_open(dsname, &spa, FTAG)) != 0)
|
if ((err = spa_open(dsname, &spa, FTAG)) != 0)
|
||||||
return (err);
|
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)) {
|
if (!spa_feature_is_enabled(spa, feature)) {
|
||||||
spa_close(spa, FTAG);
|
spa_close(spa, FTAG);
|
||||||
return (SET_ERROR(ENOTSUP));
|
return (SET_ERROR(ENOTSUP));
|
||||||
|
Loading…
Reference in New Issue
Block a user