lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAK7LNATVAq_Wkv=K-ezwnG=o8a9OoKspZJYOyq+4OXX7EZHPnA@mail.gmail.com>
Date:   Tue, 24 Mar 2020 05:44:32 +0900
From:   Masahiro Yamada <masahiroy@...nel.org>
To:     "Jason A. Donenfeld" <Jason@...c4.com>
Cc:     X86 ML <x86@...nel.org>, Ingo Molnar <mingo@...nel.org>,
        Thomas Gleixner <tglx@...utronix.de>,
        Borislav Petkov <bp@...en8.de>,
        "H . Peter Anvin" <hpa@...or.com>,
        LKML <linux-kernel@...r.kernel.org>,
        Allison Randal <allison@...utok.net>,
        Armijn Hemel <armijn@...ldur.nl>,
        "David S. Miller" <davem@...emloft.net>,
        Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
        Herbert Xu <herbert@...dor.apana.org.au>,
        Ingo Molnar <mingo@...hat.com>,
        Kate Stewart <kstewart@...uxfoundation.org>,
        Song Liu <songliubraving@...com>,
        Zhengyuan Liu <liuzhengyuan@...inos.cn>,
        clang-built-linux <clang-built-linux@...glegroups.com>,
        Linux Crypto Mailing List <linux-crypto@...r.kernel.org>
Subject: Re: [PATCH 5/7] x86: remove always-defined CONFIG_AS_SSSE3

On Tue, Mar 24, 2020 at 3:06 AM Jason A. Donenfeld <Jason@...c4.com> wrote:
>
> On Sun, Mar 22, 2020 at 8:10 PM Masahiro Yamada <masahiroy@...nel.org> 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


Thanks for the pointer,
but I think guarding with CONFIG_X86 makes more sense.

raid6_recov_ssse3 is defined in lib/raid6/recov_ssse3.c,
which is guarded by like this:

raid6_pq-$(CONFIG_X86) += recov_ssse3.o recov_avx2.o mmx.o sse1.o
sse2.o avx2.o avx512.o recov_avx512.o


Indeed,

 #if defined(__x86_64__) && !defined(__arch_um__)

is ugly.


I wonder why the code was written like that.

I rather want to check a single CONFIG option.
Please see the attached patch.




> --
> You received this message because you are subscribed to the Google Groups "Clang Built Linux" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to clang-built-linux+unsubscribe@...glegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/clang-built-linux/CAHmME9p3LAnrUMmcGPEUFqY5vOASe8MVk4%3DpzqFRj3E9C-bM%2BQ%40mail.gmail.com.



-- 
Best Regards
Masahiro Yamada

View attachment "0001-x86-replace-arch-macros-from-compiler-with-CONFIG_X8.patch" of type "text/x-patch" (1586 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ