summaryrefslogtreecommitdiff
path: root/lib/raid6/algos.c
diff options
context:
space:
mode:
authorGayatri Kammela <gayatri.kammela@intel.com>2016-08-12 18:03:20 -0700
committerShaohua Li <shli@fb.com>2016-09-21 09:09:44 -0700
commit13c520b2993c9faae6770264d33ff1e1ea4c2ceb (patch)
treea366455fe39c82e9c522151fbcd8c73c1636d65e /lib/raid6/algos.c
parente0a491c1296874a1aca51cc68452f12a4d950029 (diff)
lib/raid6: Add AVX512 optimized recovery functions
Optimize RAID6 recovery functions to take advantage of the 512-bit ZMM integer instructions introduced in AVX512. AVX512 optimized recovery functions, which is simply based on recov_avx2.c written by Jim Kukunas This patch was tested and benchmarked before submission on a hardware that has AVX512 flags to support such instructions Cc: Jim Kukunas <james.t.kukunas@linux.intel.com> Cc: H. Peter Anvin <hpa@zytor.com> Cc: Fenghua Yu <fenghua.yu@intel.com> Signed-off-by: Megha Dey <megha.dey@linux.intel.com> Signed-off-by: Gayatri Kammela <gayatri.kammela@intel.com> Reviewed-by: Fenghua Yu <fenghua.yu@intel.com> Signed-off-by: Shaohua Li <shli@fb.com>
Diffstat (limited to 'lib/raid6/algos.c')
-rw-r--r--lib/raid6/algos.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/raid6/algos.c b/lib/raid6/algos.c
index f5f090c52dd9..149d947a4fec 100644
--- a/lib/raid6/algos.c
+++ b/lib/raid6/algos.c
@@ -98,6 +98,9 @@ void (*raid6_datap_recov)(int, size_t, int, void **);
EXPORT_SYMBOL_GPL(raid6_datap_recov);
const struct raid6_recov_calls *const raid6_recov_algos[] = {
+#ifdef CONFIG_AS_AVX512
+ &raid6_recov_avx512,
+#endif
#ifdef CONFIG_AS_AVX2
&raid6_recov_avx2,
#endif