On Fri, Jun 08, 2018 at 11:53:41AM +0200, Dmitry Vyukov wrote: > keccakf() is the only function in kernel that uses __optimize() macro. > __optimize() breaks frame pointer unwinder as optimized code uses RBP, > and amusingly this always lead to degraded performance as gcc does not > inline across different optimizations levels, so keccakf() wasn't inlined > into its callers and keccakf_round() wasn't inlined into keccakf(). > > Drop __optimize() to resolve both problems. > > Signed-off-by: Dmitry Vyukov <dvyu...@google.com> > Fixes: 83dee2ce1ae7 ("crypto: sha3-generic - rewrite KECCAK transform to help > the compiler optimize") > Reported-by: syzbot+37035ccfa9a0a017f...@syzkaller.appspotmail.com > Reported-by: syzbot+e073e4740cfbb3ae2...@syzkaller.appspotmail.com > Cc: linux-crypto@vger.kernel.org > Cc: "David S. Miller" <da...@davemloft.net> > Cc: Herbert Xu <herb...@gondor.apana.org.au> > Cc: Ard Biesheuvel <ard.biesheu...@linaro.org>
Patch applied. Thanks. -- Email: Herbert Xu <herb...@gondor.apana.org.au> Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt