X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=include%2Fasm-s390%2Fprocessor.h;h=c5cbc4bd8414e12c571982cb5c5d0f85bec31406;hb=9464c7cf61b9433057924c36e6e02f303a00e768;hp=5b71d37317239b94c38eef11eae89a34048b79d6;hpb=41689045f6a3cbe0550e1d34e9cc20d2e8c432ba;p=linux-2.6.git diff --git a/include/asm-s390/processor.h b/include/asm-s390/processor.h index 5b71d3731..c5cbc4bd8 100644 --- a/include/asm-s390/processor.h +++ b/include/asm-s390/processor.h @@ -199,13 +199,15 @@ unsigned long get_wchan(struct task_struct *p); /* * Give up the time slice of the virtual PU. */ -static inline void cpu_relax(void) -{ - if (MACHINE_HAS_DIAG44) - asm volatile ("diag 0,0,68" : : : "memory"); - else - barrier(); -} +#ifndef __s390x__ +# define cpu_relax() asm volatile ("diag 0,0,68" : : : "memory") +#else /* __s390x__ */ +# define cpu_relax() \ + do { \ + if (MACHINE_HAS_DIAG44) \ + asm volatile ("diag 0,0,68" : : : "memory"); \ + } while (0) +#endif /* __s390x__ */ /* * Set PSW to specified value.