[SPARC64]: Fix hypervisor TLB operation error reporting.
[safe/jmp/linux-2.6] / include / asm-h8300 / processor.h
index c7e2f45..49fc886 100644 (file)
@@ -17,6 +17,7 @@
  */
 #define current_text_addr() ({ __label__ _l; _l: &&_l;})
 
+#include <linux/compiler.h>
 #include <asm/segment.h>
 #include <asm/fpu.h>
 #include <asm/ptrace.h>
@@ -77,7 +78,7 @@ struct thread_struct {
 do {                                                           \
        set_fs(USER_DS);           /* reads from user space */  \
        (_regs)->pc = (_pc);                                    \
-       (_regs)->ccr &= 0x00;      /* clear kernel flag */      \
+       (_regs)->ccr = 0x00;       /* clear all flags */        \
        (_regs)->er5 = current->mm->start_data; /* GOT base */  \
        wrusp((unsigned long)(_usp) - sizeof(unsigned long)*3); \
 } while(0)
@@ -129,6 +130,6 @@ unsigned long get_wchan(struct task_struct *p);
        eip; })
 #define        KSTK_ESP(tsk)   ((tsk) == current ? rdusp() : (tsk)->thread.usp)
 
-#define cpu_relax()    do { } while (0)
+#define cpu_relax()    barrier()
 
 #endif