[enable_crc32_crypto="no"], [enable_crc32_crypto="yes"])
AS_IF([test "x$have_crc32" = xyes -a "x$enable_crc32_crypto" = xyes], [
AC_DEFINE(NEED_CRC32_ACCEL, 1, [need pclmulqdq based crc32])
- AC_MSG_WARN([
-
-No crc32 pclmulqdq crypto api found, enable internal pclmulqdq based crc32
-])])
+ AC_MSG_WARN([No crc32 pclmulqdq crypto api found, enable internal pclmulqdq based crc32])])
]) # LIBCFS_ENABLE_CRC32_ACCEL
#
[enable_crc32c_crypto="no"], [enable_crc32c_crypto="yes"])
AS_IF([test "x$enable_crc32c_crypto" = xyes], [
AC_DEFINE(NEED_CRC32C_ACCEL, 1, [need pclmulqdq based crc32c])
- AC_MSG_WARN([
-
-No crc32c pclmulqdq crypto api found, enable internal pclmulqdq based crc32c
-])])
+ AC_MSG_WARN([No crc32c pclmulqdq crypto api found, enable internal pclmulqdq based crc32c])])
]) # LIBCFS_ENABLE_CRC32C_ACCEL
#
]) # LIBCFS_HAVE_TOPOLOGY_SIBLING_CPUMASK
#
+# Kernel version 4.2 commit df6b35f409af0a8ff1ef62f552b8402f3fef8665
+# header file i387.h was renamed to fpu/api.h
+#
+AC_DEFUN([LIBCFS_FPU_API], [
+LB_CHECK_LINUX_HEADER([asm/fpu/api.h], [
+ AC_DEFINE(HAVE_FPU_API_HEADER, 1,
+ [fpu/api.h is present])])
+]) # LIBCFS_FPU_API
+
+#
+# Kernel version 4.5-rc1 commit d12481bc58fba89427565f8592e88446ec084a24
+# added crypto hash helpers
+#
+AC_DEFUN([LIBCFS_CRYPTO_HASH_HELPERS], [
+LB_CHECK_COMPILE([does crypto hash helper functions exist],
+crypto_hash_helpers, [
+ #include <crypto/hash.h>
+],[
+ crypto_ahash_alg_name(NULL);
+ crypto_ahash_driver_name(NULL);
+],[
+ AC_DEFINE(HAVE_CRYPTO_HASH_HELPERS, 1,
+ [crypto hash helper functions are available])
+])
+]) # LIBCFS_CRYPTO_HASH_HELPERS
+
+#
# LIBCFS_PROG_LINUX
#
# LibCFS linux kernel checks
LIBCFS_HLIST_ADD_AFTER
# 4.2
LIBCFS_HAVE_TOPOLOGY_SIBLING_CPUMASK
+LIBCFS_FPU_API
+# 4.5
+LIBCFS_CRYPTO_HASH_HELPERS
]) # LIBCFS_PROG_LINUX
#