[MIPS] IP22: Fix warning.
authorRalf Baechle <ralf@linux-mips.org>
Sun, 14 Oct 2007 22:27:21 +0000 (23:27 +0100)
committerRalf Baechle <ralf@linux-mips.org>
Tue, 16 Oct 2007 17:23:47 +0000 (18:23 +0100)
  CC      arch/mips/sgi-ip22/ip22-berr.o
arch/mips/sgi-ip22/ip22-berr.c: In function 'ip22_be_interrupt':
arch/mips/sgi-ip22/ip22-berr.c:100: warning: passing argument 2 of 'die_if_kernel' discards qualifiers from pointer target type

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/kernel/traps.c
include/asm-mips/ptrace.h

index 632bce1bf420c51c2925fad5d44148b59145585e..9c0c478d71acf52431167a74b3ea3bc9a671a3be 100644 (file)
@@ -104,7 +104,7 @@ static int __init set_raw_show_trace(char *str)
 __setup("raw_show_trace", set_raw_show_trace);
 #endif
 
-static void show_backtrace(struct task_struct *task, struct pt_regs *regs)
+static void show_backtrace(struct task_struct *task, const struct pt_regs *regs)
 {
        unsigned long sp = regs->regs[29];
        unsigned long ra = regs->regs[31];
@@ -126,7 +126,8 @@ static void show_backtrace(struct task_struct *task, struct pt_regs *regs)
  * This routine abuses get_user()/put_user() to reference pointers
  * with at least a bit of error checking ...
  */
-static void show_stacktrace(struct task_struct *task, struct pt_regs *regs)
+static void show_stacktrace(struct task_struct *task,
+       const struct pt_regs *regs)
 {
        const int field = 2 * sizeof(unsigned long);
        long stackdata;
@@ -203,7 +204,7 @@ static void show_code(unsigned int __user *pc)
        }
 }
 
-void show_regs(struct pt_regs *regs)
+static void __show_regs(const struct pt_regs *regs)
 {
        const int field = 2 * sizeof(unsigned long);
        unsigned int cause = regs->cp0_cause;
@@ -299,9 +300,17 @@ void show_regs(struct pt_regs *regs)
               cpu_name_string());
 }
 
-void show_registers(struct pt_regs *regs)
+/*
+ * FIXME: really the generic show_regs should take a const pointer argument.
+ */
+void show_regs(struct pt_regs *regs)
+{
+       __show_regs((struct pt_regs *)regs);
+}
+
+void show_registers(const struct pt_regs *regs)
 {
-       show_regs(regs);
+       __show_regs(regs);
        print_modules();
        printk("Process %s (pid: %d, threadinfo=%p, task=%p)\n",
                current->comm, current->pid, current_thread_info(), current);
@@ -312,7 +321,7 @@ void show_registers(struct pt_regs *regs)
 
 static DEFINE_SPINLOCK(die_lock);
 
-void __noreturn die(const char * str, struct pt_regs * regs)
+void __noreturn die(const char * str, const struct pt_regs * regs)
 {
        static int die_counter;
 #ifdef CONFIG_MIPS_MT_SMTC
index 85b44366343acddece25827d4dcd5cb0d16beae5..786f7e3c99bcfe591422c4c2ceec98ab0f97c6ec 100644 (file)
@@ -86,9 +86,9 @@ struct pt_regs {
 
 extern asmlinkage void do_syscall_trace(struct pt_regs *regs, int entryexit);
 
-extern NORET_TYPE void die(const char *, struct pt_regs *) ATTRIB_NORET;
+extern NORET_TYPE void die(const char *, const struct pt_regs *) ATTRIB_NORET;
 
-static inline void die_if_kernel(const char *str, struct pt_regs *regs)
+static inline void die_if_kernel(const char *str, const struct pt_regs *regs)
 {
        if (unlikely(!user_mode(regs)))
                die(str, regs);