projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
325f562
)
crypto: arm64/sha2-ce - move the round constant table to .rodata section
author
Ard Biesheuvel
<ard.biesheuvel@linaro.org>
Wed, 10 Jan 2018 12:11:41 +0000
(12:11 +0000)
committer
Herbert Xu
<herbert@gondor.apana.org.au>
Thu, 18 Jan 2018 12:00:32 +0000
(23:00 +1100)
Move the SHA2 round constant table to the .rodata section where it is
safe from being exploited by speculative execution.
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
arch/arm64/crypto/sha2-ce-core.S
patch
|
blob
|
history
diff --git
a/arch/arm64/crypto/sha2-ce-core.S
b/arch/arm64/crypto/sha2-ce-core.S
index 679c6c002f4fbebffd7a0256602ce30e39ff86cb..4c3c89b812ce630d9e3c73b4bdd2e3e61dadc395 100644
(file)
--- a/
arch/arm64/crypto/sha2-ce-core.S
+++ b/
arch/arm64/crypto/sha2-ce-core.S
@@
-53,6
+53,7
@@
/*
* The SHA-256 round constants
*/
+ .section ".rodata", "a"
.align 4
.Lsha2_rcon:
.word 0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5
@@
-76,9
+77,10
@@
* void sha2_ce_transform(struct sha256_ce_state *sst, u8 const *src,
* int blocks)
*/
+ .text
ENTRY(sha2_ce_transform)
/* load round constants */
- adr
x8, .Lsha2_rcon
+ adr
_l
x8, .Lsha2_rcon
ld1 { v0.4s- v3.4s}, [x8], #64
ld1 { v4.4s- v7.4s}, [x8], #64
ld1 { v8.4s-v11.4s}, [x8], #64