From 5ad98ad0978d43b41180018536ce5efdaa4ea546 Mon Sep 17 00:00:00 2001 From: Tony Hutter Date: Tue, 14 Jun 2016 17:36:39 -0700 Subject: [PATCH] Add _ALIGNMENT_REQUIRED to isa_defs.h for checksums _ALIGNMENT_REQUIRED needs to be #defined in isa_defs.h in order to port the Illumos checksum code to ZoL: 4185 add new cryptographic checksums to ZFS: SHA-512, Skein, Edon-R OpenZFS-issue: https://www.illumos.org/issues/4185 OpenZFS-commit: https://github.com/openzfs/openzfs/commit/45818ee Signed-off-by: Tony Hutter Signed-off-by: Brian Behlendorf Closes #561 --- include/sys/isa_defs.h | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/include/sys/isa_defs.h b/include/sys/isa_defs.h index 53dead3..738795c 100644 --- a/include/sys/isa_defs.h +++ b/include/sys/isa_defs.h @@ -44,6 +44,9 @@ #define _LP64 #endif +#define _ALIGNMENT_REQUIRED 1 + + /* i386 arch specific defines */ #elif defined(__i386) || defined(__i386__) @@ -59,6 +62,8 @@ #define _ILP32 #endif +#define _ALIGNMENT_REQUIRED 0 + /* powerpc (ppc64) arch specific defines */ #elif defined(__powerpc) || defined(__powerpc__) || defined(__powerpc64__) @@ -80,6 +85,12 @@ #endif #endif +/* + * Illumos doesn't define _ALIGNMENT_REQUIRED for PPC, so default to 1 + * out of paranoia. + */ +#define _ALIGNMENT_REQUIRED 1 + /* arm arch specific defines */ #elif defined(__arm) || defined(__arm__) || defined(__aarch64__) @@ -107,6 +118,12 @@ #define _BIG_ENDIAN #endif +/* + * Illumos doesn't define _ALIGNMENT_REQUIRED for ARM, so default to 1 + * out of paranoia. + */ +#define _ALIGNMENT_REQUIRED 1 + /* sparc arch specific defines */ #elif defined(__sparc) || defined(__sparc__) @@ -130,6 +147,7 @@ #define _BIG_ENDIAN #define _SUNOS_VTOC_16 +#define _ALIGNMENT_REQUIRED 1 /* s390 arch specific defines */ #elif defined(__s390__) @@ -145,6 +163,12 @@ #define _BIG_ENDIAN +/* + * Illumos doesn't define _ALIGNMENT_REQUIRED for s390, so default to 1 + * out of paranoia. + */ +#define _ALIGNMENT_REQUIRED 1 + /* MIPS arch specific defines */ #elif defined(__mips__) @@ -162,6 +186,12 @@ #define _SUNOS_VTOC_16 +/* + * Illumos doesn't define _ALIGNMENT_REQUIRED for MIPS, so default to 1 + * out of paranoia. + */ +#define _ALIGNMENT_REQUIRED 1 + #else /* * Currently supported: -- 2.39.2