diff options
author | Peter Oberparleiter <peter.oberparleiter@de.ibm.com> | 2006-02-01 06:06:40 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-02-01 11:53:24 -0500 |
commit | 46d0d2c811c8e9dd5cffdc3a5c03d988eb5a2996 (patch) | |
tree | 5926ec595630cd42b49eadc15cfb74c9c81811ae /drivers/s390 | |
parent | b1969fa46d95efcdb0b84c540eca10db99665148 (diff) |
[PATCH] s390: Add missing memory constraint to stcrw()
Add missing memory constraint to stcrw() inline assembly.
Signed-off-by: Peter Oberparleiter <peter.oberparleiter@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers/s390')
-rw-r--r-- | drivers/s390/s390mach.h | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/drivers/s390/s390mach.h b/drivers/s390/s390mach.h index d9ea7ed2e46e..7abb42a09ae2 100644 --- a/drivers/s390/s390mach.h +++ b/drivers/s390/s390mach.h | |||
@@ -90,15 +90,16 @@ struct crw { | |||
90 | 90 | ||
91 | static inline int stcrw(struct crw *pcrw ) | 91 | static inline int stcrw(struct crw *pcrw ) |
92 | { | 92 | { |
93 | int ccode; | 93 | int ccode; |
94 | 94 | ||
95 | __asm__ __volatile__( | 95 | __asm__ __volatile__( |
96 | "STCRW 0(%1)\n\t" | 96 | "stcrw 0(%2)\n\t" |
97 | "IPM %0\n\t" | 97 | "ipm %0\n\t" |
98 | "SRL %0,28\n\t" | 98 | "srl %0,28\n\t" |
99 | : "=d" (ccode) : "a" (pcrw) | 99 | : "=d" (ccode), "=m" (*pcrw) |
100 | : "cc", "1" ); | 100 | : "a" (pcrw) |
101 | return ccode; | 101 | : "cc" ); |
102 | return ccode; | ||
102 | } | 103 | } |
103 | 104 | ||
104 | #endif /* __s390mach */ | 105 | #endif /* __s390mach */ |