mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2026-05-23 19:04:45 +03:00
zstd: disable intrinsics
Disable the aarch64 NEON SIMD intrinsics for kernel builds. Safely using them in the kernel context requires saving/restoring the FPU registers which is not currently done. Additionally, remove the aarch64 optimized PREFETCH_L1 and PREFETCH_L2 instruction. Rely on the more portable compiler built ins. This lets us remove the problematic workaround in the aarch64_compat.h header which undefines the __aarch64__ macro. Reviewed-by: Rob Norris <robn@despairlabs.com> Reviewed-by: Tino Reichardt <milky-zfs@mcmilk.de> Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov> Closes #17904 Closes #17852
This commit is contained in:
@@ -12,6 +12,15 @@
|
||||
#ifndef ZSTD_CCOMMON_H_MODULE
|
||||
#define ZSTD_CCOMMON_H_MODULE
|
||||
|
||||
/*
|
||||
* Disable the aarch64 NEON SIMD intrinsics for kernel builds. Safely
|
||||
* using them in the kernel context requires saving/restoring the FPU
|
||||
* registers which is not currently done.
|
||||
*/
|
||||
#ifdef _KERNEL
|
||||
#define ZSTD_NO_INTRINSICS
|
||||
#endif
|
||||
|
||||
/* this module contains definitions which must be identical
|
||||
* across compression, decompression and dictBuilder.
|
||||
* It also contains a few functions useful to at least 2 of them
|
||||
|
||||
Reference in New Issue
Block a user