[PATCH 2/5] arm64: vdso: Remove redundant calls to flush_dcache_page()

Vincenzo Frascino vincenzo.frascino at arm.com
Thu Mar 18 18:05:06 GMT 2021


On 3/18/21 5:07 PM, Will Deacon wrote:
> flush_dcache_page() ensures that the 'PG_dcache_clean' flag for its
> 'page' argument is clear so that cache maintenance will be performed
> if the page is mapped into userspace with execute permissions.
> 
> Newly allocated pages have this flag clear, so there is no need to call
> flush_dcache_page() for the compat vdso or signal pages. Remove the
> redundant calls.
> 
> Signed-off-by: Will Deacon <will at kernel.org>

Reviewed-by: Vincenzo Frascino <vincenzo.frascino at arm.com>

> ---
>  arch/arm64/kernel/vdso.c | 2 --
>  1 file changed, 2 deletions(-)
> 
> diff --git a/arch/arm64/kernel/vdso.c b/arch/arm64/kernel/vdso.c
> index 2d057a4dc787..421411981dc3 100644
> --- a/arch/arm64/kernel/vdso.c
> +++ b/arch/arm64/kernel/vdso.c
> @@ -306,7 +306,6 @@ static int aarch32_alloc_kuser_vdso_page(void)
>  	memcpy((void *)(vdso_page + 0x1000 - kuser_sz), __kuser_helper_start,
>  	       kuser_sz);
>  	aarch32_vectors_page = virt_to_page(vdso_page);
> -	flush_dcache_page(aarch32_vectors_page);
>  	return 0;
>  }
>  
> @@ -322,7 +321,6 @@ static int aarch32_alloc_sigpage(void)
>  
>  	memcpy((void *)sigpage, __aarch32_sigret_code_start, sigret_sz);
>  	aarch32_sig_page = virt_to_page(sigpage);
> -	flush_dcache_page(aarch32_sig_page);
>  	return 0;
>  }
>  
> 

-- 
Regards,
Vincenzo



More information about the linux-arm-kernel mailing list