[PATCH 1/3] riscv: Drop CONFIG_RISCV_ISA_V_DEFAULT_ENABLE
Andy Chiu
tchiu at tenstorrent.com
Tue Oct 13 09:59:12 PDT 2026
On Wed, Oct 07, 2026 at 01:51:16AM -0700, Samuel Holland wrote:
> The ability to prevent userspace from executing vector instructions was
> provided as a escape hatch for software that was broken by adding vector
> state to the signal context. This appears to be unused in practice, and
> creates confusion in the extension support returned by hwprobe(), as in
> this one special case an extension reported as present by hwprobe() is
> unusable.
>
> Since we believe it is safe to always allow vector usage, start removing
> this functionality by dropping the Kconfig option. It is possible to get
> equivalent behavior by setting the sysctl at boot via the kernel command
> line, but that method will also soon be deprecated.
>
> Signed-off-by: Samuel Holland <samuel.holland at sifive.com>
Reviewed-by: Andy Chiu <tchiu at tenstorrent.com>
Thanks!
> ---
>
> arch/riscv/Kconfig | 11 -----------
> arch/riscv/kernel/vector.c | 2 +-
> 2 files changed, 1 insertion(+), 12 deletions(-)
>
> diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
> index d6c2dbf8455ce..e26450f0d38fb 100644
> --- a/arch/riscv/Kconfig
> +++ b/arch/riscv/Kconfig
> @@ -650,17 +650,6 @@ config RISCV_ISA_V
>
> If you don't know what to do here, say Y.
>
> -config RISCV_ISA_V_DEFAULT_ENABLE
> - bool "Enable userspace Vector by default"
> - depends on RISCV_ISA_V
> - default y
> - help
> - Say Y here if you want to enable Vector in userspace by default.
> - Otherwise, userspace has to make explicit prctl() call to enable
> - Vector, or enable it via the sysctl interface.
> -
> - If you don't know what to do here, say Y.
> -
> config RISCV_ISA_V_UCOPY_THRESHOLD
> int "Threshold size for vectorized user copies"
> depends on RISCV_ISA_V
> diff --git a/arch/riscv/kernel/vector.c b/arch/riscv/kernel/vector.c
> index b112166d51e9f..9641343732782 100644
> --- a/arch/riscv/kernel/vector.c
> +++ b/arch/riscv/kernel/vector.c
> @@ -20,7 +20,7 @@
> #include <asm/ptrace.h>
> #include <asm/bug.h>
>
> -static bool riscv_v_implicit_uacc = IS_ENABLED(CONFIG_RISCV_ISA_V_DEFAULT_ENABLE);
> +static bool riscv_v_implicit_uacc = true;
> static struct kmem_cache *riscv_v_user_cachep;
> #ifdef CONFIG_RISCV_ISA_V_PREEMPTIVE
> static struct kmem_cache *riscv_v_kernel_cachep;
> --
> 2.52.0
>
More information about the kvm-riscv
mailing list