diff options
| author | Linus Torvalds <torvalds@g5.osdl.org> | 2006-07-12 08:30:57 -0700 |
|---|---|---|
| committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-07-12 08:30:57 -0700 |
| commit | b2d6744849b5bf6b4593b81c136772df7a238ac9 (patch) | |
| tree | f27260a0b16412449c4205207af114646c29e2c4 /include/asm-s390/processor.h | |
| parent | c67646641cab01c93a56674bfcd963f55442dad5 (diff) | |
| parent | d2c993d845781d160a7ef759a3e65c6892c4a270 (diff) | |
Merge branch 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6
* 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6:
[S390] Fix sparse warnings.
[S390] path grouping and path verifications fixes.
[S390] xpram module parameter parsing.
[S390] cpu_relax() is supposed to have barrier() semantics.
[S390] fix futex_atomic_cmpxchg_inatomic
[S390] subchannel register/unregister mutex.
[S390] raw_local_save_flags/raw_local_irq_restore type check
[S390] __builtin_trap() and gcc version.
Diffstat (limited to 'include/asm-s390/processor.h')
| -rw-r--r-- | include/asm-s390/processor.h | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/include/asm-s390/processor.h b/include/asm-s390/processor.h index c5cbc4bd8414..5b71d3731723 100644 --- a/include/asm-s390/processor.h +++ b/include/asm-s390/processor.h @@ -199,15 +199,13 @@ unsigned long get_wchan(struct task_struct *p); /* * Give up the time slice of the virtual PU. */ -#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__ */ +static inline void cpu_relax(void) +{ + if (MACHINE_HAS_DIAG44) + asm volatile ("diag 0,0,68" : : : "memory"); + else + barrier(); +} /* * Set PSW to specified value. |
