aboutsummaryrefslogtreecommitdiffstats
path: root/include/sys
diff options
context:
space:
mode:
authorнаб <[email protected]>2021-05-27 17:09:32 +0200
committerBrian Behlendorf <[email protected]>2021-05-29 14:26:32 -0700
commite618e4a4ff0b0512e6b6a5230d101a4baad1aabd (patch)
tree3016f5a76f4c8943454455a4311aab5dbff4e82c /include/sys
parentf00f469052145ebe18d5d71ee5086194aca82a2d (diff)
include: move SPA_MINBLOCKSHIFT and zio_encrypt to sys/fs/zfs.h
These are used by userspace, so should live in a public header Reviewed-by: Brian Behlendorf <[email protected]> Reviewed-by: Ryan Moeller <[email protected]> Signed-off-by: Ahelenia Ziemiańska <[email protected]> Closes #12116
Diffstat (limited to 'include/sys')
-rw-r--r--include/sys/fs/zfs.h41
-rw-r--r--include/sys/spa.h21
-rw-r--r--include/sys/zio.h17
3 files changed, 41 insertions, 38 deletions
diff --git a/include/sys/fs/zfs.h b/include/sys/fs/zfs.h
index 71d736d5c..254750642 100644
--- a/include/sys/fs/zfs.h
+++ b/include/sys/fs/zfs.h
@@ -1613,6 +1613,47 @@ typedef enum {
#define ZFS_EV_HIST_DSID "history_dsid"
#define ZFS_EV_RESILVER_TYPE "resilver_type"
+
+/*
+ * We currently support block sizes from 512 bytes to 16MB.
+ * The benefits of larger blocks, and thus larger IO, need to be weighed
+ * against the cost of COWing a giant block to modify one byte, and the
+ * large latency of reading or writing a large block.
+ *
+ * Note that although blocks up to 16MB are supported, the recordsize
+ * property can not be set larger than zfs_max_recordsize (default 1MB).
+ * See the comment near zfs_max_recordsize in dsl_dataset.c for details.
+ *
+ * Note that although the LSIZE field of the blkptr_t can store sizes up
+ * to 32MB, the dnode's dn_datablkszsec can only store sizes up to
+ * 32MB - 512 bytes. Therefore, we limit SPA_MAXBLOCKSIZE to 16MB.
+ */
+#define SPA_MINBLOCKSHIFT 9
+#define SPA_OLD_MAXBLOCKSHIFT 17
+#define SPA_MAXBLOCKSHIFT 24
+#define SPA_MINBLOCKSIZE (1ULL << SPA_MINBLOCKSHIFT)
+#define SPA_OLD_MAXBLOCKSIZE (1ULL << SPA_OLD_MAXBLOCKSHIFT)
+#define SPA_MAXBLOCKSIZE (1ULL << SPA_MAXBLOCKSHIFT)
+
+
+/* supported encryption algorithms */
+enum zio_encrypt {
+ ZIO_CRYPT_INHERIT = 0,
+ ZIO_CRYPT_ON,
+ ZIO_CRYPT_OFF,
+ ZIO_CRYPT_AES_128_CCM,
+ ZIO_CRYPT_AES_192_CCM,
+ ZIO_CRYPT_AES_256_CCM,
+ ZIO_CRYPT_AES_128_GCM,
+ ZIO_CRYPT_AES_192_GCM,
+ ZIO_CRYPT_AES_256_GCM,
+ ZIO_CRYPT_FUNCTIONS
+};
+
+#define ZIO_CRYPT_ON_VALUE ZIO_CRYPT_AES_256_GCM
+#define ZIO_CRYPT_DEFAULT ZIO_CRYPT_OFF
+
+
#ifdef __cplusplus
}
#endif
diff --git a/include/sys/spa.h b/include/sys/spa.h
index c960478ef..374d36e73 100644
--- a/include/sys/spa.h
+++ b/include/sys/spa.h
@@ -73,27 +73,6 @@ struct dsl_dataset;
struct dsl_crypto_params;
/*
- * We currently support block sizes from 512 bytes to 16MB.
- * The benefits of larger blocks, and thus larger IO, need to be weighed
- * against the cost of COWing a giant block to modify one byte, and the
- * large latency of reading or writing a large block.
- *
- * Note that although blocks up to 16MB are supported, the recordsize
- * property can not be set larger than zfs_max_recordsize (default 1MB).
- * See the comment near zfs_max_recordsize in dsl_dataset.c for details.
- *
- * Note that although the LSIZE field of the blkptr_t can store sizes up
- * to 32MB, the dnode's dn_datablkszsec can only store sizes up to
- * 32MB - 512 bytes. Therefore, we limit SPA_MAXBLOCKSIZE to 16MB.
- */
-#define SPA_MINBLOCKSHIFT 9
-#define SPA_OLD_MAXBLOCKSHIFT 17
-#define SPA_MAXBLOCKSHIFT 24
-#define SPA_MINBLOCKSIZE (1ULL << SPA_MINBLOCKSHIFT)
-#define SPA_OLD_MAXBLOCKSIZE (1ULL << SPA_OLD_MAXBLOCKSHIFT)
-#define SPA_MAXBLOCKSIZE (1ULL << SPA_MAXBLOCKSHIFT)
-
-/*
* Alignment Shift (ashift) is an immutable, internal top-level vdev property
* which can only be set at vdev creation time. Physical writes are always done
* according to it, which makes 2^ashift the smallest possible IO on a vdev.
diff --git a/include/sys/zio.h b/include/sys/zio.h
index 372855013..c792cb65b 100644
--- a/include/sys/zio.h
+++ b/include/sys/zio.h
@@ -108,23 +108,6 @@ enum zio_checksum {
#define ZIO_DEDUPCHECKSUM ZIO_CHECKSUM_SHA256
-/* supported encryption algorithms */
-enum zio_encrypt {
- ZIO_CRYPT_INHERIT = 0,
- ZIO_CRYPT_ON,
- ZIO_CRYPT_OFF,
- ZIO_CRYPT_AES_128_CCM,
- ZIO_CRYPT_AES_192_CCM,
- ZIO_CRYPT_AES_256_CCM,
- ZIO_CRYPT_AES_128_GCM,
- ZIO_CRYPT_AES_192_GCM,
- ZIO_CRYPT_AES_256_GCM,
- ZIO_CRYPT_FUNCTIONS
-};
-
-#define ZIO_CRYPT_ON_VALUE ZIO_CRYPT_AES_256_GCM
-#define ZIO_CRYPT_DEFAULT ZIO_CRYPT_OFF
-
/* macros defining encryption lengths */
#define ZIO_OBJSET_MAC_LEN 32
#define ZIO_DATA_IV_LEN 12