@@ -900,41 +900,6 @@ config ARM64_SVE
To enable use of this extension on CPUs that implement it, say Y.
-if ARM64_SVE
-
-config ARM64_SVE_FULL_VECTOR_LENGTH
- bool "Enable full hardware vector length for userspace"
- default n
- help
- SVE vector lengths greater than 512 bits impact the size of signal
- frames and therefore the size requirements for any userspace stack
- onto which a signal may be delivered. Using larger vector lengths
- may therefore cause problems for some software. For this reason, the
- kernel currently limits the maximum vector length for userspace
- software to 512 bits by default.
-
- Enabling this option removes the limit, so that the full vector
- length implemented by the hardware is made available to userspace.
-
- Be aware: in general, software that (a) does not use SVE (including
- via libraries), or (b) does not handle signals, or (c) uses default
- process/thread stack sizes and does not use sigaltstack(2) should be
- unaffected by enabling larger vectors. Software that does not meet
- these criteria or that relies on certain legacy uses of the ucontext
- API may be affected however.
-
- This is a transitional compatibility option only and will be replaced
- by a userspace ABI extension in the future. Do not assume that this
- option will be available with compatible effect in future Linux
- releases.
-
- If you are developing software that uses SVE and understand the
- implications, you can consider saying Y here.
-
- If unsure, say N.
-
-endif
-
config ARM64_MODULE_CMODEL_LARGE
bool
@@ -200,11 +200,6 @@ ENTRY(__cpu_setup)
mrs_s x5, ZIDR_EL1 // SVE: Enable full vector len
and x5, x5, #ZCR_EL1_LEN_MASK // initially
-#ifndef CONFIG_ARM64_SVE_FULL_VECTOR_LENGTH
- mov x6, #(512 / 128 - 1) // Clamp VL to 512 bits
- cmp x5, x6
- csel x5, x5, x6, lo
-#endif
msr_s ZCR_EL1, x5
b 2f