aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@g5.osdl.org>2006-07-21 12:03:57 -0700
committerLinus Torvalds <torvalds@g5.osdl.org>2006-07-21 12:03:57 -0700
commit53a4998229efbf5cb79ec7ca7c18f4c86f66755d (patch)
treee6c9be05fe944b70fa4ede3849a55b273ec068bd /include
parent3bda2418b94243d5e43fcfe48d9de70cb0d2423e (diff)
parentd7cf0d57ef9e07cf0f65c58c19a8e7c4a9db72b5 (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] sysfs_create_xxx return values. [S390] .align 4096 statements in head.S [S390] get_clock inline assembly. [S390] channel measurement interval display. [S390] xpram module parameter parsing - take 2. [S390] Fix gcc warning about unused return values.
Diffstat (limited to 'include')
-rw-r--r--include/asm-s390/system.h9
-rw-r--r--include/asm-s390/timex.h4
2 files changed, 9 insertions, 4 deletions
diff --git a/include/asm-s390/system.h b/include/asm-s390/system.h
index 36a3a85d611..16040048cd1 100644
--- a/include/asm-s390/system.h
+++ b/include/asm-s390/system.h
@@ -128,8 +128,13 @@ extern void account_system_vtime(struct task_struct *);
#define nop() __asm__ __volatile__ ("nop")
-#define xchg(ptr,x) \
- ((__typeof__(*(ptr)))__xchg((unsigned long)(x),(void *)(ptr),sizeof(*(ptr))))
+#define xchg(ptr,x) \
+({ \
+ __typeof__(*(ptr)) __ret; \
+ __ret = (__typeof__(*(ptr))) \
+ __xchg((unsigned long)(x), (void *)(ptr),sizeof(*(ptr))); \
+ __ret; \
+})
static inline unsigned long __xchg(unsigned long x, void * ptr, int size)
{
diff --git a/include/asm-s390/timex.h b/include/asm-s390/timex.h
index 4848057dafe..5d0332a4c2b 100644
--- a/include/asm-s390/timex.h
+++ b/include/asm-s390/timex.h
@@ -19,7 +19,7 @@ static inline cycles_t get_cycles(void)
{
cycles_t cycles;
- __asm__("stck 0(%1)" : "=m" (cycles) : "a" (&cycles) : "cc");
+ __asm__ __volatile__ ("stck 0(%1)" : "=m" (cycles) : "a" (&cycles) : "cc");
return cycles >> 2;
}
@@ -27,7 +27,7 @@ static inline unsigned long long get_clock (void)
{
unsigned long long clk;
- __asm__("stck 0(%1)" : "=m" (clk) : "a" (&clk) : "cc");
+ __asm__ __volatile__ ("stck 0(%1)" : "=m" (clk) : "a" (&clk) : "cc");
return clk;
}