summaryrefslogtreecommitdiffstats
path: root/arch/microblaze
diff options
context:
space:
mode:
authorMichal Simek <monstr@monstr.eu>2011-02-07 12:24:39 +0100
committerMichal Simek <monstr@monstr.eu>2011-03-09 08:09:59 +0100
commit5213a9c3b663dd946d7c8bdfc9180983bd03a2a1 (patch)
tree5cf9c907d171600620c1a37765d427b4b6fc578d /arch/microblaze
parent4302e5254a8a9e726db444763be1e95e063406fb (diff)
downloadlinux-5213a9c3b663dd946d7c8bdfc9180983bd03a2a1.tar.gz
linux-5213a9c3b663dd946d7c8bdfc9180983bd03a2a1.tar.bz2
linux-5213a9c3b663dd946d7c8bdfc9180983bd03a2a1.zip
microblaze: Fix sparse warning - fault.c
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>
Diffstat (limited to 'arch/microblaze')
-rw-r--r--arch/microblaze/include/asm/exceptions.h1
-rw-r--r--arch/microblaze/mm/fault.c2
2 files changed, 2 insertions, 1 deletions
diff --git a/arch/microblaze/include/asm/exceptions.h b/arch/microblaze/include/asm/exceptions.h
index 23c0f71db8e3..e6a8ddea1dca 100644
--- a/arch/microblaze/include/asm/exceptions.h
+++ b/arch/microblaze/include/asm/exceptions.h
@@ -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);
diff --git a/arch/microblaze/mm/fault.c b/arch/microblaze/mm/fault.c
index 57bd2a09610c..ae97d2ccdc22 100644
--- a/arch/microblaze/mm/fault.c
+++ b/arch/microblaze/mm/fault.c
@@ -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)