Use "mb" not the nonexistent "rmb" for pg_read_barrier() on Alpha.
authorTom Lane
Sat, 29 Aug 2015 20:34:30 +0000 (16:34 -0400)
committerTom Lane
Sat, 29 Aug 2015 20:34:30 +0000 (16:34 -0400)
It's only necessary to fix this in 9.4; later versions don't have this
code (because we ripped out Alpha support entirely), while earlier ones
aren't actually using pg_read_barrier() anywhere.

Per rather belated report from Christoph Berg.

src/include/storage/barrier.h

index 2bef2eb6ad977bdd182039e109c889f1e4e09bd6..94169bd7460d3ad17d970db024a84d7657bcdd04 100644 (file)
@@ -117,7 +117,7 @@ extern slock_t dummy_spinlock;
  * read barrier to cover that case.  We might need to add that later.
  */
 #define pg_memory_barrier()        __asm__ __volatile__ ("mb" : : : "memory")
-#define pg_read_barrier()      __asm__ __volatile__ ("rmb" : : : "memory")
+#define pg_read_barrier()      __asm__ __volatile__ ("mb" : : : "memory")
 #define pg_write_barrier()     __asm__ __volatile__ ("wmb" : : : "memory")
 #elif defined(__hppa) || defined(__hppa__)     /* HP PA-RISC */