[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