pemensik / rpms / bind

Forked from rpms/bind 6 years ago
Clone
1e41691
diff --git a/configure.ac b/configure.ac
1e41691
index 26c509e..c1bfd62 100644
1e41691
--- a/configure.ac
1e41691
+++ b/configure.ac
1e41691
@@ -4152,6 +4152,10 @@ if test "yes" = "$use_atomic"; then
Adam Tkac 5e22ace
 	AC_MSG_RESULT($arch)
Adam Tkac 5e22ace
 fi
Adam Tkac 5e22ace
 
Adam Tkac 5e22ace
+if test ! "$arch" = "x86_64" -a "$have_xaddq" = "yes"; then
Adam Tkac 5e22ace
+	AC_MSG_ERROR([XADDQ present but disabled by Fedora patch!])
Adam Tkac 5e22ace
+fi
Adam Tkac 5e22ace
+
102df25
 if test "yes" = "$have_atomic"; then
Adam Tkac 5e22ace
 	AC_MSG_CHECKING([compiler support for inline assembly code])
Adam Tkac 5e22ace
 
3fed71e
diff --git a/lib/isc/include/isc/platform.h.in b/lib/isc/include/isc/platform.h.in
1e41691
index c902d46..9c7c342 100644
3fed71e
--- a/lib/isc/include/isc/platform.h.in
3fed71e
+++ b/lib/isc/include/isc/platform.h.in
1e41691
@@ -284,19 +284,25 @@
Adam Tkac 5e22ace
  * If the "xaddq" operation (64bit xadd) is available on this architecture,
Adam Tkac 5e22ace
  * ISC_PLATFORM_HAVEXADDQ will be defined.
Adam Tkac 5e22ace
  */
Adam Tkac 5e22ace
-@ISC_PLATFORM_HAVEXADDQ@
2ac37f7
 
2ac37f7
 /*
2ac37f7
- * If the 32-bit "atomic swap" operation is available on this
2ac37f7
- * architecture, ISC_PLATFORM_HAVEATOMICSTORE" will be defined.
2ac37f7
+ * If the 64-bit "atomic swap" operation is available on this
2ac37f7
+ * architecture, ISC_PLATFORM_HAVEATOMICSTOREQ" will be defined.
2ac37f7
  */
2ac37f7
-@ISC_PLATFORM_HAVEATOMICSTORE@
2ac37f7
+
Adam Tkac 5e22ace
+#ifdef __x86_64__
Adam Tkac 5e22ace
+#define ISC_PLATFORM_HAVEXADDQ 1
2ac37f7
+#define ISC_PLATFORM_HAVEATOMICSTOREQ 1
Adam Tkac 5e22ace
+#else
Adam Tkac 5e22ace
+#undef ISC_PLATFORM_HAVEXADDQ
2ac37f7
+#undef ISC_PLATFORM_HAVEATOMICSTOREQ
Adam Tkac 5e22ace
+#endif
Adam Tkac 5e22ace
 
Adam Tkac 5e22ace
 /*
2ac37f7
- * If the 64-bit "atomic swap" operation is available on this
2ac37f7
+ * If the 32-bit "atomic swap" operation is available on this
2ac37f7
  * architecture, ISC_PLATFORM_HAVEATOMICSTORE" will be defined.
2ac37f7
  */
2ac37f7
-@ISC_PLATFORM_HAVEATOMICSTOREQ@
2ac37f7
+@ISC_PLATFORM_HAVEATOMICSTORE@
2ac37f7
 
2ac37f7
 /*
2ac37f7
  * If the "compare-and-exchange" operation is available on this architecture,