diff mbox

[RFC,1/2] arm64: Defer dcache flush in __cpu_copy_user_page

Message ID 1450099664-38554-2-git-send-email-ashoks@broadcom.com (mailing list archive)
State New, archived
Headers show

Commit Message

Ashok Kumar Dec. 14, 2015, 1:27 p.m. UTC
Defer dcache flushing to __sync_icache_dcache by calling
flush_dcache_page which clears PG_dcache_clean flag.

Signed-off-by: Ashok Kumar <ashoks@broadcom.com>
---
 arch/arm64/mm/copypage.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Catalin Marinas Dec. 14, 2015, 3:18 p.m. UTC | #1
On Mon, Dec 14, 2015 at 05:27:43AM -0800, Ashok Kumar wrote:
> Defer dcache flushing to __sync_icache_dcache by calling
> flush_dcache_page which clears PG_dcache_clean flag.
> 
> Signed-off-by: Ashok Kumar <ashoks@broadcom.com>
> ---
>  arch/arm64/mm/copypage.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/arch/arm64/mm/copypage.c b/arch/arm64/mm/copypage.c
> index 13bbc3be..22e4cb4 100644
> --- a/arch/arm64/mm/copypage.c
> +++ b/arch/arm64/mm/copypage.c
> @@ -24,8 +24,9 @@
>  
>  void __cpu_copy_user_page(void *kto, const void *kfrom, unsigned long vaddr)
>  {
> +	struct page *page = virt_to_page(kto);
>  	copy_page(kto, kfrom);
> -	__flush_dcache_area(kto, PAGE_SIZE);
> +	flush_dcache_page(page);
>  }
>  EXPORT_SYMBOL_GPL(__cpu_copy_user_page);

Acked-by: Catalin Marinas <catalin.marinas@arm.com>
diff mbox

Patch

diff --git a/arch/arm64/mm/copypage.c b/arch/arm64/mm/copypage.c
index 13bbc3be..22e4cb4 100644
--- a/arch/arm64/mm/copypage.c
+++ b/arch/arm64/mm/copypage.c
@@ -24,8 +24,9 @@ 
 
 void __cpu_copy_user_page(void *kto, const void *kfrom, unsigned long vaddr)
 {
+	struct page *page = virt_to_page(kto);
 	copy_page(kto, kfrom);
-	__flush_dcache_area(kto, PAGE_SIZE);
+	flush_dcache_page(page);
 }
 EXPORT_SYMBOL_GPL(__cpu_copy_user_page);