Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Make fallback implementation of pg_memory_barrier() work in 9.2 and 9.3.
authorTom Lane <tgl@sss.pgh.pa.us>
Sat, 16 Apr 2016 14:42:07 +0000 (10:42 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Sat, 16 Apr 2016 14:42:07 +0000 (10:42 -0400)
Back-patch 9.4-era commit 44cd47c1d49655c5 into 9.2 and 9.3.  As with
my back-patches of yesterday, this was not seen as necessary at the time
because we didn't expect barrier.h to need to work before 9.4, but
commit 37de8de9e33606a0 invalidated that theory.

Per an attempt to run gaur and pademelon over old branches they've
not been run on since ~2013.

src/backend/main/main.c

index 5a71e75b6a106d83dbe629c7de55f28fb5682a6d..bf823ec65d140ddb1c6dcbc3f315733bf2af7a1a 100644 (file)
@@ -42,6 +42,8 @@
 
 #include "bootstrap/bootstrap.h"
 #include "postmaster/postmaster.h"
+#include "storage/barrier.h"
+#include "storage/spin.h"
 #include "tcop/tcopprot.h"
 #include "utils/help_config.h"
 #include "utils/memutils.h"
@@ -311,6 +313,12 @@ startup_hacks(const char *progname)
 
    }
 #endif   /* WIN32 */
+
+   /*
+    * Initialize dummy_spinlock, in case we are on a platform where we have
+    * to use the fallback implementation of pg_memory_barrier().
+    */
+   SpinLockInit(&dummy_spinlock);
 }