Re: [PATCH 5/7] x86: remove always-defined CONFIG_AS_SSSE3

From: Jason A. Donenfeld
Date: Mon Mar 23 2020 - 14:06:39 EST


On Sun, Mar 22, 2020 at 8:10 PM Masahiro Yamada <masahiroy@xxxxxxxxxx> wrote:
> diff --git a/lib/raid6/algos.c b/lib/raid6/algos.c
> index bf1b4765c8f6..77457ea5a239 100644
> --- a/lib/raid6/algos.c
> +++ b/lib/raid6/algos.c
> @@ -103,9 +103,7 @@ const struct raid6_recov_calls *const raid6_recov_algos[] = {
> #ifdef CONFIG_AS_AVX2
> &raid6_recov_avx2,
> #endif
> -#ifdef CONFIG_AS_SSSE3
> &raid6_recov_ssse3,
> -#endif
> #ifdef CONFIG_S390
> &raid6_recov_s390xc,
> #endif

algos.c is compiled on all platforms, so you'll need to ifdef that x86
section where SSSE3 is no longer guarding it. The pattern in the rest
of the file, if you want to follow it, is "#if defined(__x86_64__) &&
!defined(__arch_um__)". That seems ugly and like there are better
ways, but in the interest of uniformity and a lack of desire to
rewrite all the raid6 code, I went with that in this cleanup:

https://git.zx2c4.com/linux-dev/commit/?h=jd/kconfig-assembler-support&id=512a00ddebbe5294a88487dcf1dc845cf56703d9