From cd8d5403c2d3b270357660436ab84803addc0baf Mon Sep 17 00:00:00 2001 From: Paul Mundt Date: Tue, 12 Feb 2008 17:00:39 +0900 Subject: [PATCH] --- yaml --- r: 85547 b: refs/heads/master c: f1f8926a94132e6433b559a3eced65404226f5cd h: refs/heads/master i: 85545: fbe3ce7c697db0b1a43e13905d873fea302b3730 85543: 09f684b10db475b04d10d27b3d7d66e34ce06931 v: v3 --- [refs] | 2 +- trunk/arch/sh/mm/cache-sh5.c | 8 +++++--- trunk/include/asm-sh/cpu-sh5/cacheflush.h | 2 +- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/[refs] b/[refs] index 802af7383d75..79ce2154da0a 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 5e9c8ac5699f2a830fab2c224b6f57bd7da338b8 +refs/heads/master: f1f8926a94132e6433b559a3eced65404226f5cd diff --git a/trunk/arch/sh/mm/cache-sh5.c b/trunk/arch/sh/mm/cache-sh5.c index 4617e3aeee73..5d1f615fe525 100644 --- a/trunk/arch/sh/mm/cache-sh5.c +++ b/trunk/arch/sh/mm/cache-sh5.c @@ -1015,15 +1015,17 @@ void flush_icache_user_range(struct vm_area_struct *vma, ARCH/SH64 PRIVATE CALLABLE API. ##########################################################################*/ -void flush_cache_sigtramp(unsigned long start, unsigned long end) +void flush_cache_sigtramp(unsigned long vaddr) { + unsigned long end = vaddr + L1_CACHE_BYTES; + /* For the address range [start,end), write back the data from the D-cache and invalidate the corresponding region of the I-cache for the current process. Used to flush signal trampolines on the stack to make them executable. */ - sh64_dcache_wback_current_user_range(start, end); + sh64_dcache_wback_current_user_range(vaddr, end); wmb(); - sh64_icache_inv_current_user_range(start, end); + sh64_icache_inv_current_user_range(vaddr, end); } diff --git a/trunk/include/asm-sh/cpu-sh5/cacheflush.h b/trunk/include/asm-sh/cpu-sh5/cacheflush.h index 98edb5b1da32..f935acbacf38 100644 --- a/trunk/include/asm-sh/cpu-sh5/cacheflush.h +++ b/trunk/include/asm-sh/cpu-sh5/cacheflush.h @@ -11,7 +11,7 @@ struct mm_struct; extern void flush_cache_all(void); extern void flush_cache_mm(struct mm_struct *mm); -extern void flush_cache_sigtramp(unsigned long start, unsigned long end); +extern void flush_cache_sigtramp(unsigned long vaddr); extern void flush_cache_range(struct vm_area_struct *vma, unsigned long start, unsigned long end); extern void flush_cache_page(struct vm_area_struct *vma, unsigned long addr, unsigned long pfn);