diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2005-03-01 14:22:29 -0500 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2005-10-29 14:30:50 -0400 |
commit | fe00f943e0ef98b4057abcc2940d631a975b43cd (patch) | |
tree | c036ab8269ac86485130a083330229a01d319557 /arch/mips/mm | |
parent | 14f18b7f7e58de9a34c4b5fd38d5f73f22fba7ac (diff) |
Sparseify MIPS.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/mips/mm')
-rw-r--r-- | arch/mips/mm/c-r4k.c | 7 | ||||
-rw-r--r-- | arch/mips/mm/cache.c | 9 | ||||
-rw-r--r-- | arch/mips/mm/fault.c | 4 |
3 files changed, 11 insertions, 9 deletions
diff --git a/arch/mips/mm/c-r4k.c b/arch/mips/mm/c-r4k.c index e26dd829bf20..48d731c2f08a 100644 --- a/arch/mips/mm/c-r4k.c +++ b/arch/mips/mm/c-r4k.c | |||
@@ -456,8 +456,8 @@ static void r4k_flush_data_cache_page(unsigned long addr) | |||
456 | } | 456 | } |
457 | 457 | ||
458 | struct flush_icache_range_args { | 458 | struct flush_icache_range_args { |
459 | unsigned long start; | 459 | unsigned long __user start; |
460 | unsigned long end; | 460 | unsigned long __user end; |
461 | }; | 461 | }; |
462 | 462 | ||
463 | static inline void local_r4k_flush_icache_range(void *args) | 463 | static inline void local_r4k_flush_icache_range(void *args) |
@@ -519,7 +519,8 @@ static inline void local_r4k_flush_icache_range(void *args) | |||
519 | } | 519 | } |
520 | } | 520 | } |
521 | 521 | ||
522 | static void r4k_flush_icache_range(unsigned long start, unsigned long end) | 522 | static void r4k_flush_icache_range(unsigned long __user start, |
523 | unsigned long __user end) | ||
523 | { | 524 | { |
524 | struct flush_icache_range_args args; | 525 | struct flush_icache_range_args args; |
525 | 526 | ||
diff --git a/arch/mips/mm/cache.c b/arch/mips/mm/cache.c index 1d95cdb77bed..c0ac4f97e1ae 100644 --- a/arch/mips/mm/cache.c +++ b/arch/mips/mm/cache.c | |||
@@ -24,7 +24,8 @@ void (*flush_cache_mm)(struct mm_struct *mm); | |||
24 | void (*flush_cache_range)(struct vm_area_struct *vma, unsigned long start, | 24 | void (*flush_cache_range)(struct vm_area_struct *vma, unsigned long start, |
25 | unsigned long end); | 25 | unsigned long end); |
26 | void (*flush_cache_page)(struct vm_area_struct *vma, unsigned long page, unsigned long pfn); | 26 | void (*flush_cache_page)(struct vm_area_struct *vma, unsigned long page, unsigned long pfn); |
27 | void (*flush_icache_range)(unsigned long start, unsigned long end); | 27 | void (*flush_icache_range)(unsigned long __user start, |
28 | unsigned long __user end); | ||
28 | void (*flush_icache_page)(struct vm_area_struct *vma, struct page *page); | 29 | void (*flush_icache_page)(struct vm_area_struct *vma, struct page *page); |
29 | 30 | ||
30 | /* MIPS specific cache operations */ | 31 | /* MIPS specific cache operations */ |
@@ -49,10 +50,10 @@ EXPORT_SYMBOL(_dma_cache_inv); | |||
49 | * We could optimize the case where the cache argument is not BCACHE but | 50 | * We could optimize the case where the cache argument is not BCACHE but |
50 | * that seems very atypical use ... | 51 | * that seems very atypical use ... |
51 | */ | 52 | */ |
52 | asmlinkage int sys_cacheflush(unsigned long addr, unsigned long int bytes, | 53 | asmlinkage int sys_cacheflush(unsigned long __user addr, |
53 | unsigned int cache) | 54 | unsigned long bytes, unsigned int cache) |
54 | { | 55 | { |
55 | if (!access_ok(VERIFY_WRITE, (void *) addr, bytes)) | 56 | if (!access_ok(VERIFY_WRITE, (void __user *) addr, bytes)) |
56 | return -EFAULT; | 57 | return -EFAULT; |
57 | 58 | ||
58 | flush_icache_range(addr, addr + bytes); | 59 | flush_icache_range(addr, addr + bytes); |
diff --git a/arch/mips/mm/fault.c b/arch/mips/mm/fault.c index 0eb43151f10a..2d9624fd10ec 100644 --- a/arch/mips/mm/fault.c +++ b/arch/mips/mm/fault.c | |||
@@ -141,7 +141,7 @@ bad_area_nosemaphore: | |||
141 | info.si_signo = SIGSEGV; | 141 | info.si_signo = SIGSEGV; |
142 | info.si_errno = 0; | 142 | info.si_errno = 0; |
143 | /* info.si_code has been set above */ | 143 | /* info.si_code has been set above */ |
144 | info.si_addr = (void *) address; | 144 | info.si_addr = (void __user *) address; |
145 | force_sig_info(SIGSEGV, &info, tsk); | 145 | force_sig_info(SIGSEGV, &info, tsk); |
146 | return; | 146 | return; |
147 | } | 147 | } |
@@ -197,7 +197,7 @@ do_sigbus: | |||
197 | info.si_signo = SIGBUS; | 197 | info.si_signo = SIGBUS; |
198 | info.si_errno = 0; | 198 | info.si_errno = 0; |
199 | info.si_code = BUS_ADRERR; | 199 | info.si_code = BUS_ADRERR; |
200 | info.si_addr = (void *) address; | 200 | info.si_addr = (void __user *) address; |
201 | force_sig_info(SIGBUS, &info, tsk); | 201 | force_sig_info(SIGBUS, &info, tsk); |
202 | 202 | ||
203 | return; | 203 | return; |