diff options
Diffstat (limited to 'include/asm-mips')
-rw-r--r-- | include/asm-mips/processor.h | 6 | ||||
-rw-r--r-- | include/asm-mips/ptrace.h | 4 | ||||
-rw-r--r-- | include/asm-mips/system.h | 9 |
3 files changed, 14 insertions, 5 deletions
diff --git a/include/asm-mips/processor.h b/include/asm-mips/processor.h index 1df7cb200..ca561233e 100644 --- a/include/asm-mips/processor.h +++ b/include/asm-mips/processor.h @@ -1,4 +1,4 @@ -/* $Id: processor.h,v 1.19 1999/09/28 22:27:17 ralf Exp $ +/* $Id: processor.h,v 1.20 1999/10/09 00:01:43 ralf Exp $ * * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive @@ -12,6 +12,8 @@ #ifndef _ASM_PROCESSOR_H #define _ASM_PROCESSOR_H +#include <asm/isadep.h> + /* * Default implementation of macro that returns current * instruction pointer ("program counter"). @@ -208,7 +210,7 @@ extern inline unsigned long thread_saved_pc(struct thread_struct *t) */ #define start_thread(regs, new_pc, new_sp) do { \ /* New thread looses kernel privileges. */ \ - regs->cp0_status = (regs->cp0_status & ~(ST0_CU0|ST0_KSU)) | KSU_USER;\ + regs->cp0_status = (regs->cp0_status & ~(ST0_CU0|ST0_KSU)) | KU_USER;\ regs->cp0_epc = new_pc; \ regs->regs[29] = new_sp; \ current->thread.current_ds = USER_DS; \ diff --git a/include/asm-mips/ptrace.h b/include/asm-mips/ptrace.h index f1f9ce269..559edac6a 100644 --- a/include/asm-mips/ptrace.h +++ b/include/asm-mips/ptrace.h @@ -1,4 +1,4 @@ -/* $Id: ptrace.h,v 1.6 1999/08/09 19:43:17 harald Exp $ +/* $Id: ptrace.h,v 1.7 1999/09/28 22:27:17 ralf Exp $ * * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive @@ -60,7 +60,7 @@ struct pt_regs { /* * Does the process account for user or for system time? */ -#define user_mode(regs) ((regs)->cp0_status & 0x10) +#define user_mode(regs) (((regs)->cp0_status & KU_MASK) == KU_USER) #define instruction_pointer(regs) ((regs)->cp0_epc) diff --git a/include/asm-mips/system.h b/include/asm-mips/system.h index 80cbd08fc..50c7b0d36 100644 --- a/include/asm-mips/system.h +++ b/include/asm-mips/system.h @@ -1,4 +1,4 @@ -/* $Id: system.h,v 1.15 1999/08/13 17:07:28 harald Exp $ +/* $Id: system.h,v 1.16 1999/10/09 00:01:43 ralf Exp $ * * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive @@ -127,6 +127,12 @@ __restore_flags(int flags) /* * These are probably defined overly paranoid ... */ +#ifdef CONFIG_CPU_HAS_WB +#include <asm/wbflush.h> +#define rmb() +#define wmb() wbflush() +#define mb() wbflush() +#else #define mb() \ __asm__ __volatile__( \ "# prevent instructions being moved around\n\t" \ @@ -139,6 +145,7 @@ __asm__ __volatile__( \ : "memory") #define rmb() mb() #define wmb() mb() +#endif #define set_mb(var, value) \ do { var = value; mb(); } while (0) |