From 17ffa84435038e3ace71cfa8a58e3f28895c8bde Mon Sep 17 00:00:00 2001 From: Al Viro Date: Fri, 23 Jun 2006 13:51:38 -0400 Subject: [PATCH] missing forward declaration of pt_regs (asm-m68k/signal.h) Signed-off-by: Al Viro --- include/asm-m68k/signal.h | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/include/asm-m68k/signal.h b/include/asm-m68k/signal.h index de1ba6e..3db8a81 100644 --- a/include/asm-m68k/signal.h +++ b/include/asm-m68k/signal.h @@ -198,6 +198,7 @@ static inline int sigfindinword(unsigned return word ^ 31; } +struct pt_regs; extern void ptrace_signal_deliver(struct pt_regs *regs, void *cookie); #endif /* __KERNEL__ */ -- 1.4.2.GIT From 3d9b7fe9cc5f77d9761bdb53a1cb8d90d393753d Mon Sep 17 00:00:00 2001 From: Al Viro Date: Tue, 4 Jul 2006 17:06:52 -0400 Subject: [PATCH] m68k uaccess __user annotations Signed-off-by: Al Viro --- include/asm-m68k/uaccess.h | 14 +++++++------- 1 files changed, 7 insertions(+), 7 deletions(-) diff --git a/include/asm-m68k/uaccess.h b/include/asm-m68k/uaccess.h index 88b1f47..c37fefe 100644 --- a/include/asm-m68k/uaccess.h +++ b/include/asm-m68k/uaccess.h @@ -76,7 +76,7 @@ ({ \ break; \ case 8: \ { \ - const void *__pu_ptr = (ptr); \ + const void __user *__pu_ptr = (ptr); \ asm volatile ("\n" \ "1: moves.l %2,(%1)+\n" \ "2: moves.l %R2,(%1)\n" \ @@ -221,16 +221,16 @@ __constant_copy_from_user(void *to, cons switch (n) { case 1: - __get_user_asm(res, *(u8 *)to, (u8 *)from, u8, b, d, 1); + __get_user_asm(res, *(u8 *)to, (u8 __user *)from, u8, b, d, 1); break; case 2: - __get_user_asm(res, *(u16 *)to, (u16 *)from, u16, w, d, 2); + __get_user_asm(res, *(u16 *)to, (u16 __user *)from, u16, w, d, 2); break; case 3: __constant_copy_from_user_asm(res, to, from, tmp, 3, w, b,); break; case 4: - __get_user_asm(res, *(u32 *)to, (u32 *)from, u32, l, r, 4); + __get_user_asm(res, *(u32 *)to, (u32 __user *)from, u32, l, r, 4); break; case 5: __constant_copy_from_user_asm(res, to, from, tmp, 5, l, b,); @@ -302,16 +302,16 @@ __constant_copy_to_user(void __user *to, switch (n) { case 1: - __put_user_asm(res, *(u8 *)from, (u8 *)to, b, d, 1); + __put_user_asm(res, *(u8 *)from, (u8 __user *)to, b, d, 1); break; case 2: - __put_user_asm(res, *(u16 *)from, (u16 *)to, w, d, 2); + __put_user_asm(res, *(u16 *)from, (u16 __user *)to, w, d, 2); break; case 3: __constant_copy_to_user_asm(res, to, from, tmp, 3, w, b,); break; case 4: - __put_user_asm(res, *(u32 *)from, (u32 *)to, l, r, 4); + __put_user_asm(res, *(u32 *)from, (u32 __user *)to, l, r, 4); break; case 5: __constant_copy_to_user_asm(res, to, from, tmp, 5, l, b,); -- 1.4.2.GIT From 75392068d75fa71fc51b6e0b1a74051e8be71d8c Mon Sep 17 00:00:00 2001 From: Al Viro Date: Wed, 1 Feb 2006 07:00:24 -0500 Subject: [PATCH] misc m68k __user annotations Signed-off-by: Al Viro --- arch/m68k/kernel/process.c | 8 ++++---- arch/m68k/kernel/traps.c | 6 +++--- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/arch/m68k/kernel/process.c b/arch/m68k/kernel/process.c index 45a4664..24e83d5 100644 --- a/arch/m68k/kernel/process.c +++ b/arch/m68k/kernel/process.c @@ -221,13 +221,13 @@ asmlinkage int m68k_clone(struct pt_regs { unsigned long clone_flags; unsigned long newsp; - int *parent_tidptr, *child_tidptr; + int __user *parent_tidptr, *child_tidptr; /* syscall2 puts clone_flags in d1 and usp in d2 */ clone_flags = regs->d1; newsp = regs->d2; - parent_tidptr = (int *)regs->d3; - child_tidptr = (int *)regs->d4; + parent_tidptr = (int __user *)regs->d3; + child_tidptr = (int __user *)regs->d4; if (!newsp) newsp = rdusp(); return do_fork(clone_flags, newsp, regs, 0, @@ -361,7 +361,7 @@ void dump_thread(struct pt_regs * regs, /* * sys_execve() executes a new program. */ -asmlinkage int sys_execve(char *name, char **argv, char **envp) +asmlinkage int sys_execve(char __user *name, char __user * __user *argv, char __user * __user *envp) { int error; char * filename; diff --git a/arch/m68k/kernel/traps.c b/arch/m68k/kernel/traps.c index 4569406..759fa24 100644 --- a/arch/m68k/kernel/traps.c +++ b/arch/m68k/kernel/traps.c @@ -326,13 +326,13 @@ static inline int do_040writeback1(unsig switch (wbs & WBSIZ_040) { case BA_SIZE_BYTE: - res = put_user(wbd & 0xff, (char *)wba); + res = put_user(wbd & 0xff, (char __user *)wba); break; case BA_SIZE_WORD: - res = put_user(wbd & 0xffff, (short *)wba); + res = put_user(wbd & 0xffff, (short __user *)wba); break; case BA_SIZE_LONG: - res = put_user(wbd, (int *)wba); + res = put_user(wbd, (int __user *)wba); break; } -- 1.4.2.GIT From fa211eb0e90b8eb3effeb28a489ebbbfbc0c64c8 Mon Sep 17 00:00:00 2001 From: Al Viro Date: Mon, 4 Sep 2006 20:58:04 -0400 Subject: [PATCH] m68k: more get_user() annotations Signed-off-by: Al Viro --- include/asm-m68k/uaccess.h | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/include/asm-m68k/uaccess.h b/include/asm-m68k/uaccess.h index c37fefe..e4c9f08 100644 --- a/include/asm-m68k/uaccess.h +++ b/include/asm-m68k/uaccess.h @@ -125,7 +125,7 @@ #define __get_user_asm(res, x, ptr, type " .previous" \ : "+d" (res), "=&" #reg (__gu_val) \ : "m" (*(ptr)), "i" (err)); \ - (x) = (typeof(*(ptr)))(long)__gu_val; \ + (x) = (typeof(*(ptr)))(unsigned long)__gu_val; \ }) #define __get_user(x, ptr) \ -- 1.4.2.GIT From 53171519c653c2347ed5be69595598f0b41c1ec7 Mon Sep 17 00:00:00 2001 From: Al Viro Date: Tue, 5 Sep 2006 05:14:02 -0400 Subject: [PATCH] m68k dma_alloc_coherent() has gfp_t as the last argument annotate, fix the bogus argument of vmap() in it. Signed-off-by: Al Viro --- arch/m68k/kernel/dma.c | 4 ++-- include/asm-m68k/dma-mapping.h | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/arch/m68k/kernel/dma.c b/arch/m68k/kernel/dma.c index fc449f8..9d4e4b5 100644 --- a/arch/m68k/kernel/dma.c +++ b/arch/m68k/kernel/dma.c @@ -15,7 +15,7 @@ #include #include void *dma_alloc_coherent(struct device *dev, size_t size, - dma_addr_t *handle, int flag) + dma_addr_t *handle, gfp_t flag) { struct page *page, **map; pgprot_t pgprot; @@ -51,7 +51,7 @@ void *dma_alloc_coherent(struct device * pgprot_val(pgprot) |= _PAGE_GLOBAL040 | _PAGE_NOCACHE_S; else pgprot_val(pgprot) |= _PAGE_NOCACHE030; - addr = vmap(map, size, flag, pgprot); + addr = vmap(map, size, VM_MAP, pgprot); kfree(map); return addr; diff --git a/include/asm-m68k/dma-mapping.h b/include/asm-m68k/dma-mapping.h index cebbb03..c1299c3 100644 --- a/include/asm-m68k/dma-mapping.h +++ b/include/asm-m68k/dma-mapping.h @@ -26,7 +26,7 @@ static inline int dma_is_consistent(dma_ } extern void *dma_alloc_coherent(struct device *, size_t, - dma_addr_t *, int); + dma_addr_t *, gfp_t); extern void dma_free_coherent(struct device *, size_t, void *, dma_addr_t); -- 1.4.2.GIT