summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMathieu Desnoyers <mathieu.desnoyers@polymtl.ca>2007-02-21 10:55:59 +0100
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2007-02-21 10:55:59 +0100
commit3a5f10e3708e00c406f154bae412652ec3eb2b48 (patch)
tree057bb6524bbd60b48c78de5770ae9855f60f1cab
parentde61c9341ba144f6f21fdaae48ffbd811fc6637f (diff)
downloadlinux-3a5f10e3708e00c406f154bae412652ec3eb2b48.tar.gz
linux-3a5f10e3708e00c406f154bae412652ec3eb2b48.tar.bz2
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>
-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)
{