diff options
author | Heiko Carstens <heiko.carstens@de.ibm.com> | 2008-04-17 01:46:26 -0400 |
---|---|---|
committer | Heiko Carstens <heiko.carstens@de.ibm.com> | 2008-04-17 01:47:06 -0400 |
commit | a806170e29c5468b1d641a22518243bdf1b8d58b (patch) | |
tree | 0b1661f287d6e2b711bbd7600120a250a4f57549 /arch/s390/mm/fault.c | |
parent | 5a62b192196af9a798e2f2f4c6a1324e7edf2f4b (diff) |
[S390] Fix a lot of sparse warnings.
Most noteable part of this commit is the new local header file entry.h
which contains all the function declarations of functions that get only
called from asm code or are arch internal. That way we can avoid extern
declarations in C files.
This is more or less the same that was done for sparc64.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Diffstat (limited to 'arch/s390/mm/fault.c')
-rw-r--r-- | arch/s390/mm/fault.c | 13 |
1 files changed, 3 insertions, 10 deletions
diff --git a/arch/s390/mm/fault.c b/arch/s390/mm/fault.c index a9c635f01db8..2650f46001d0 100644 --- a/arch/s390/mm/fault.c +++ b/arch/s390/mm/fault.c | |||
@@ -28,11 +28,11 @@ | |||
28 | #include <linux/hardirq.h> | 28 | #include <linux/hardirq.h> |
29 | #include <linux/kprobes.h> | 29 | #include <linux/kprobes.h> |
30 | #include <linux/uaccess.h> | 30 | #include <linux/uaccess.h> |
31 | |||
32 | #include <asm/system.h> | 31 | #include <asm/system.h> |
33 | #include <asm/pgtable.h> | 32 | #include <asm/pgtable.h> |
34 | #include <asm/s390_ext.h> | 33 | #include <asm/s390_ext.h> |
35 | #include <asm/mmu_context.h> | 34 | #include <asm/mmu_context.h> |
35 | #include "../kernel/entry.h" | ||
36 | 36 | ||
37 | #ifndef CONFIG_64BIT | 37 | #ifndef CONFIG_64BIT |
38 | #define __FAIL_ADDR_MASK 0x7ffff000 | 38 | #define __FAIL_ADDR_MASK 0x7ffff000 |
@@ -50,8 +50,6 @@ | |||
50 | extern int sysctl_userprocess_debug; | 50 | extern int sysctl_userprocess_debug; |
51 | #endif | 51 | #endif |
52 | 52 | ||
53 | extern void die(const char *,struct pt_regs *,long); | ||
54 | |||
55 | #ifdef CONFIG_KPROBES | 53 | #ifdef CONFIG_KPROBES |
56 | static inline int notify_page_fault(struct pt_regs *regs, long err) | 54 | static inline int notify_page_fault(struct pt_regs *regs, long err) |
57 | { | 55 | { |
@@ -245,11 +243,6 @@ static void do_sigbus(struct pt_regs *regs, unsigned long error_code, | |||
245 | } | 243 | } |
246 | 244 | ||
247 | #ifdef CONFIG_S390_EXEC_PROTECT | 245 | #ifdef CONFIG_S390_EXEC_PROTECT |
248 | extern long sys_sigreturn(void); | ||
249 | extern long sys_rt_sigreturn(void); | ||
250 | extern long sys32_sigreturn(void); | ||
251 | extern long sys32_rt_sigreturn(void); | ||
252 | |||
253 | static int signal_return(struct mm_struct *mm, struct pt_regs *regs, | 246 | static int signal_return(struct mm_struct *mm, struct pt_regs *regs, |
254 | unsigned long address, unsigned long error_code) | 247 | unsigned long address, unsigned long error_code) |
255 | { | 248 | { |
@@ -424,7 +417,7 @@ no_context: | |||
424 | } | 417 | } |
425 | 418 | ||
426 | void __kprobes do_protection_exception(struct pt_regs *regs, | 419 | void __kprobes do_protection_exception(struct pt_regs *regs, |
427 | unsigned long error_code) | 420 | long error_code) |
428 | { | 421 | { |
429 | /* Protection exception is supressing, decrement psw address. */ | 422 | /* Protection exception is supressing, decrement psw address. */ |
430 | regs->psw.addr -= (error_code >> 16); | 423 | regs->psw.addr -= (error_code >> 16); |
@@ -440,7 +433,7 @@ void __kprobes do_protection_exception(struct pt_regs *regs, | |||
440 | do_exception(regs, 4, 1); | 433 | do_exception(regs, 4, 1); |
441 | } | 434 | } |
442 | 435 | ||
443 | void __kprobes do_dat_exception(struct pt_regs *regs, unsigned long error_code) | 436 | void __kprobes do_dat_exception(struct pt_regs *regs, long error_code) |
444 | { | 437 | { |
445 | do_exception(regs, error_code & 0xff, 0); | 438 | do_exception(regs, error_code & 0xff, 0); |
446 | } | 439 | } |