microblaze: Fix sparse warning - fault.c
authorMichal Simek <monstr@monstr.eu>
Mon, 7 Feb 2011 11:24:39 +0000 (12:24 +0100)
committerMichal Simek <monstr@monstr.eu>
Wed, 9 Mar 2011 07:09:59 +0000 (08:09 +0100)
Warning log:
CHECK   arch/microblaze/mm/fault.c
arch/microblaze/mm/fault.c:51:6: warning: incorrect type in initializer (different address spaces)
arch/microblaze/mm/fault.c:51:6:    expected unknown type 2const [noderef] *__gu_addr<asn:1>
arch/microblaze/mm/fault.c:51:6:    got unsigned int *<noident>
arch/microblaze/mm/fault.c:68:6: warning: symbol 'bad_page_fault' was not declared. Should it be static?

Signed-off-by: Michal Simek <monstr@monstr.eu>
arch/microblaze/include/asm/exceptions.h
arch/microblaze/mm/fault.c

index 23c0f71..e6a8dde 100644 (file)
@@ -67,6 +67,7 @@ asmlinkage void full_exception(struct pt_regs *regs, unsigned int type,
                                                        int fsr, int addr);
 
 asmlinkage void sw_exception(struct pt_regs *regs);
+void bad_page_fault(struct pt_regs *regs, unsigned long address, int sig);
 
 void die(const char *str, struct pt_regs *fp, long err);
 void _exception(int signr, struct pt_regs *regs, int code, unsigned long addr);
index 57bd2a0..ae97d2c 100644 (file)
@@ -48,7 +48,7 @@ static int store_updates_sp(struct pt_regs *regs)
 {
        unsigned int inst;
 
-       if (get_user(inst, (unsigned int *)regs->pc))
+       if (get_user(inst, (unsigned int __user *)regs->pc))
                return 0;
        /* check for 1 in the rD field */
        if (((inst >> 21) & 0x1f) != 1)