From: Tony Hutter Date: Wed, 15 Jun 2016 00:36:39 +0000 (-0700) Subject: Add _ALIGNMENT_REQUIRED to isa_defs.h for checksums X-Git-Tag: zfs-0.8.0-rc1~152^2~90 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=5ad98ad0978d43b41180018536ce5efdaa4ea546;p=zfs 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 --- diff --git a/include/sys/isa_defs.h b/include/sys/isa_defs.h index 53dead38c..738795c70 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: