crypto: arm64/crc32 - move literal data to .rodata section
Move CRC32 literal data 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>
This commit is contained in:
parent
62c2470876
commit
eec7d4593a
|
@ -50,7 +50,7 @@
|
||||||
#include <linux/linkage.h>
|
#include <linux/linkage.h>
|
||||||
#include <asm/assembler.h>
|
#include <asm/assembler.h>
|
||||||
|
|
||||||
.text
|
.section ".rodata", "a"
|
||||||
.align 6
|
.align 6
|
||||||
.cpu generic+crypto+crc
|
.cpu generic+crypto+crc
|
||||||
|
|
||||||
|
@ -115,12 +115,13 @@
|
||||||
* uint crc32_pmull_le(unsigned char const *buffer,
|
* uint crc32_pmull_le(unsigned char const *buffer,
|
||||||
* size_t len, uint crc32)
|
* size_t len, uint crc32)
|
||||||
*/
|
*/
|
||||||
|
.text
|
||||||
ENTRY(crc32_pmull_le)
|
ENTRY(crc32_pmull_le)
|
||||||
adr x3, .Lcrc32_constants
|
adr_l x3, .Lcrc32_constants
|
||||||
b 0f
|
b 0f
|
||||||
|
|
||||||
ENTRY(crc32c_pmull_le)
|
ENTRY(crc32c_pmull_le)
|
||||||
adr x3, .Lcrc32c_constants
|
adr_l x3, .Lcrc32c_constants
|
||||||
|
|
||||||
0: bic LEN, LEN, #15
|
0: bic LEN, LEN, #15
|
||||||
ld1 {v1.16b-v4.16b}, [BUF], #0x40
|
ld1 {v1.16b-v4.16b}, [BUF], #0x40
|
||||||
|
|
Loading…
Reference in New Issue