mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2026-05-22 02:27:36 +03:00
Disable EDONR on FreeBSD
FreeBSD uses its own crypto framework in-kernel which, at this time, has no EDONR implementation. Reviewed-by: Jorgen Lundman <lundman@lundman.net> Reviewed-by: Allan Jude <allanjude@freebsd.org> Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Matt Macy <mmacy@FreeBSD.org> Signed-off-by: Ryan Moeller <ryan@ixsystems.com> Closes #9664
This commit is contained in:
committed by
Brian Behlendorf
parent
054a049841
commit
f95704ca5e
@@ -421,6 +421,8 @@ zpool_feature_init(void)
|
||||
skein_deps);
|
||||
}
|
||||
|
||||
#if !defined(__FreeBSD__)
|
||||
|
||||
{
|
||||
static const spa_feature_t edonr_deps[] = {
|
||||
SPA_FEATURE_EXTENSIBLE_DATASET,
|
||||
@@ -432,6 +434,7 @@ zpool_feature_init(void)
|
||||
ZFEATURE_FLAG_PER_DATASET, ZFEATURE_TYPE_BOOLEAN,
|
||||
edonr_deps);
|
||||
}
|
||||
#endif
|
||||
|
||||
{
|
||||
static const spa_feature_t redact_books_deps[] = {
|
||||
|
||||
@@ -81,7 +81,10 @@ zfs_prop_init(void)
|
||||
{ "noparity", ZIO_CHECKSUM_NOPARITY },
|
||||
{ "sha512", ZIO_CHECKSUM_SHA512 },
|
||||
{ "skein", ZIO_CHECKSUM_SKEIN },
|
||||
#if !defined(__FreeBSD__)
|
||||
|
||||
{ "edonr", ZIO_CHECKSUM_EDONR },
|
||||
#endif
|
||||
{ NULL }
|
||||
};
|
||||
|
||||
@@ -98,8 +101,11 @@ zfs_prop_init(void)
|
||||
{ "skein", ZIO_CHECKSUM_SKEIN },
|
||||
{ "skein,verify",
|
||||
ZIO_CHECKSUM_SKEIN | ZIO_CHECKSUM_VERIFY },
|
||||
#if !defined(__FreeBSD__)
|
||||
|
||||
{ "edonr,verify",
|
||||
ZIO_CHECKSUM_EDONR | ZIO_CHECKSUM_VERIFY },
|
||||
#endif
|
||||
{ NULL }
|
||||
};
|
||||
|
||||
@@ -297,12 +303,22 @@ zfs_prop_init(void)
|
||||
zprop_register_index(ZFS_PROP_CHECKSUM, "checksum",
|
||||
ZIO_CHECKSUM_DEFAULT, PROP_INHERIT, ZFS_TYPE_FILESYSTEM |
|
||||
ZFS_TYPE_VOLUME,
|
||||
"on | off | fletcher2 | fletcher4 | sha256 | sha512 | "
|
||||
"skein | edonr", "CHECKSUM", checksum_table);
|
||||
#if !defined(__FreeBSD__)
|
||||
"on | off | fletcher2 | fletcher4 | sha256 | sha512 | skein"
|
||||
" | edonr",
|
||||
#else
|
||||
"on | off | fletcher2 | fletcher4 | sha256 | sha512 | skein",
|
||||
#endif
|
||||
"CHECKSUM", checksum_table);
|
||||
zprop_register_index(ZFS_PROP_DEDUP, "dedup", ZIO_CHECKSUM_OFF,
|
||||
PROP_INHERIT, ZFS_TYPE_FILESYSTEM | ZFS_TYPE_VOLUME,
|
||||
"on | off | verify | sha256[,verify], sha512[,verify], "
|
||||
"skein[,verify], edonr,verify", "DEDUP", dedup_table);
|
||||
#if !defined(__FreeBSD__)
|
||||
"skein[,verify], edonr,verify",
|
||||
#else
|
||||
"skein[,verify]",
|
||||
#endif
|
||||
"DEDUP", dedup_table);
|
||||
zprop_register_index(ZFS_PROP_COMPRESSION, "compression",
|
||||
ZIO_COMPRESS_DEFAULT, PROP_INHERIT,
|
||||
ZFS_TYPE_FILESYSTEM | ZFS_TYPE_VOLUME,
|
||||
|
||||
@@ -191,10 +191,12 @@ zio_checksum_info_t zio_checksum_table[ZIO_CHECKSUM_FUNCTIONS] = {
|
||||
abd_checksum_skein_tmpl_init, abd_checksum_skein_tmpl_free,
|
||||
ZCHECKSUM_FLAG_METADATA | ZCHECKSUM_FLAG_DEDUP |
|
||||
ZCHECKSUM_FLAG_SALTED | ZCHECKSUM_FLAG_NOPWRITE, "skein"},
|
||||
#if !defined(__FreeBSD__)
|
||||
{{abd_checksum_edonr_native, abd_checksum_edonr_byteswap},
|
||||
abd_checksum_edonr_tmpl_init, abd_checksum_edonr_tmpl_free,
|
||||
ZCHECKSUM_FLAG_METADATA | ZCHECKSUM_FLAG_SALTED |
|
||||
ZCHECKSUM_FLAG_NOPWRITE, "edonr"},
|
||||
#endif
|
||||
};
|
||||
|
||||
/*
|
||||
@@ -211,8 +213,10 @@ zio_checksum_to_feature(enum zio_checksum cksum)
|
||||
return (SPA_FEATURE_SHA512);
|
||||
case ZIO_CHECKSUM_SKEIN:
|
||||
return (SPA_FEATURE_SKEIN);
|
||||
#if !defined(__FreeBSD__)
|
||||
case ZIO_CHECKSUM_EDONR:
|
||||
return (SPA_FEATURE_EDONR);
|
||||
#endif
|
||||
default:
|
||||
return (SPA_FEATURE_NONE);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user