folly: fix sysMembarrier() with newer kernel headers
[folly.git] / folly / portability / SysMembarrier.cpp
index 9a3d307..9b3735c 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright 2016 Facebook, Inc.
+ * Copyright 2017 Facebook, Inc.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
 #define FOLLY_USE_SYS_MEMBARRIER 1
 #if !defined(__NR_membarrier)
 #define __NR_membarrier 324
+#endif
+#if FOLLY_HAVE_LINUX_MEMBARRIER_H
+#include <linux/membarrier.h> // @manual
+#else
 #define MEMBARRIER_CMD_QUERY 0
 #define MEMBARRIER_CMD_SHARED 1
 #endif
@@ -58,5 +62,5 @@ int sysMembarrier() {
   return -1;
 #endif
 }
-}
-}
+} // namespace detail
+} // namespace folly