mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-20 04:26:45 +07:00
5dfeaac15f
struct sha256_ctx_mgr allocated in sha256_mb_mod_init() via kzalloc()
and later passed in sha256_mb_flusher_mgr_flush_avx2() function where
instructions vmovdqa used to access the struct. vmovdqa requires
16-bytes aligned argument, but nothing guarantees that struct
sha256_ctx_mgr will have that alignment. Unaligned vmovdqa will
generate GP fault.
Fix this by replacing vmovdqa with vmovdqu which doesn't have alignment
requirements.
Fixes:
|
||
---|---|---|
.. | ||
Makefile | ||
sha256_mb_ctx.h | ||
sha256_mb_mgr_datastruct.S | ||
sha256_mb_mgr_flush_avx2.S | ||
sha256_mb_mgr_init_avx2.c | ||
sha256_mb_mgr_submit_avx2.S | ||
sha256_mb_mgr.h | ||
sha256_mb.c | ||
sha256_x8_avx2.S |