summaryrefslogtreecommitdiff
path: root/net/rds/rds.h
diff options
context:
space:
mode:
authorAndy Grover <andy.grover@oracle.com>2009-04-01 08:20:20 +0000
committerDavid S. Miller <davem@davemloft.net>2009-04-02 00:52:22 -0700
commit8cbd9606a6367c221a7bbcc47f3ab1a8c31b6437 (patch)
tree9ff2adf88be32383fd59dc133f1cd6670b9ee815 /net/rds/rds.h
parent745cbccac3fe8cead529a1b3358e1e86a1505bfa (diff)
downloadlinux-3.10-8cbd9606a6367c221a7bbcc47f3ab1a8c31b6437.tar.gz
linux-3.10-8cbd9606a6367c221a7bbcc47f3ab1a8c31b6437.tar.bz2
linux-3.10-8cbd9606a6367c221a7bbcc47f3ab1a8c31b6437.zip
RDS: Use spinlock to protect 64b value update on 32b archs
We have a 64bit value that needs to be set atomically. This is easy and quick on all 64bit archs, and can also be done on x86/32 with set_64bit() (uses cmpxchg8b). However other 32b archs don't have this. I actually changed this to the current state in preparation for mainline because the old way (using a spinlock on 32b) resulted in unsightly #ifdefs in the code. But obviously, being correct takes precedence. Signed-off-by: Andy Grover <andy.grover@oracle.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/rds/rds.h')
-rw-r--r--net/rds/rds.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/net/rds/rds.h b/net/rds/rds.h
index 06040070497..619f0a30a4e 100644
--- a/net/rds/rds.h
+++ b/net/rds/rds.h
@@ -28,6 +28,10 @@
*/
#define RDS_PORT 18634
+#ifdef ATOMIC64_INIT
+#define KERNEL_HAS_ATOMIC64
+#endif
+
#ifdef DEBUG
#define rdsdebug(fmt, args...) pr_debug("%s(): " fmt, __func__ , ##args)
#else