Searched hist:ca04c823763e5b82c237cabe0c17f547ecdc6271 (Results 1 – 1 of 1) sorted by relevance
/openbmc/linux/arch/x86/crypto/ |
H A D | sha512-avx2-asm.S | diff ca04c823763e5b82c237cabe0c17f547ecdc6271 Mon Sep 18 14:42:10 CDT 2017 Josh Poimboeuf <jpoimboe@redhat.com> crypto: sha512-avx2 - Fix RBP usage
Using RBP as a temporary register breaks frame pointer convention and breaks stack traces when unwinding from an interrupt in the crypto code.
Mix things up a little bit to get rid of the RBP usage, without hurting performance too much. Use RDI instead of RBP for the TBL pointer. That will clobber CTX, so spill CTX onto the stack and use R12 to read it in the outer loop. R12 is used as a non-persistent temporary variable elsewhere, so it's safe to use.
Also remove the unused y4 variable.
Reported-by: Eric Biggers <ebiggers3@gmail.com> Reported-by: Peter Zijlstra <peterz@infradead.org> Tested-by: Eric Biggers <ebiggers@google.com> Acked-by: Eric Biggers <ebiggers@google.com> Signed-off-by: Josh Poimboeuf <jpoimboe@redhat.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
|