summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorMathieu Desnoyers2007-02-21 10:55:59 +0100
committerMartin Schwidefsky2007-02-21 10:55:59 +0100
commit3a5f10e3708e00c406f154bae412652ec3eb2b48 (patch)
tree057bb6524bbd60b48c78de5770ae9855f60f1cab /include
parent[S390] local_t cleanup : use asm-generic/local.h. (diff)
downloadkernel-qcow2-linux-3a5f10e3708e00c406f154bae412652ec3eb2b48.tar.gz
kernel-qcow2-linux-3a5f10e3708e00c406f154bae412652ec3eb2b48.tar.xz
kernel-qcow2-linux-3a5f10e3708e00c406f154bae412652ec3eb2b48.zip
[S390] add atomic64_xchg to s390
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca> Cc: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'include')
-rw-r--r--include/asm-s390/atomic.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/asm-s390/atomic.h b/include/asm-s390/atomic.h
index af20c7462485..c17bdbf22067 100644
--- a/include/asm-s390/atomic.h
+++ b/include/asm-s390/atomic.h
@@ -215,6 +215,8 @@ static __inline__ void atomic64_set_mask(unsigned long mask, atomic64_t * v)
__CSG_LOOP(v, mask, "ogr");
}
+#define atomic64_xchg(v, new) (xchg(&((v)->counter), new))
+
static __inline__ long long atomic64_cmpxchg(atomic64_t *v,
long long old, long long new)
{