[PATCH] RISC-V: Do not issue remote fences until smp is available

Conor Dooley conor at kernel.org
Mon Oct 31 12:11:56 PDT 2022


On Fri, Oct 28, 2022 at 04:19:29PM -0700, Atish Patra wrote:
> It is useless to issue remote fences if there is a single core
> available. It becomes a bottleneck for sbi based rfences where
> we will be making those ECALLs for no reason. Early code patching
> because of static calls end up in this path.
> 
> Signed-off-by: Atish Patra <atishp at rivosinc.com>

Hey Atish,
This doesn't apply for me to either fixes or for-next. What branch does
it apply to?
Thanks,
Conor.

> ---
>  arch/riscv/mm/cacheflush.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/arch/riscv/mm/cacheflush.c b/arch/riscv/mm/cacheflush.c
> index f10cb47eac3a..7fafc8c26505 100644
> --- a/arch/riscv/mm/cacheflush.c
> +++ b/arch/riscv/mm/cacheflush.c
> @@ -19,6 +19,10 @@ void flush_icache_all(void)
>  {
>  	local_flush_icache_all();
>  
> +	/* No need to issue remote fence if only 1 cpu is online */
> +	if (num_online_cpus() == 1)
> +		return;
> +
>  	if (IS_ENABLED(CONFIG_RISCV_SBI) && !riscv_use_ipi_for_rfence())
>  		sbi_remote_fence_i(NULL);
>  	else
> -- 
> 2.34.1
> 



More information about the linux-riscv mailing list