diff --git a/src/backend/main/main.c b/src/backend/main/main.c
index 3f6860244ae485be6aa28244cd7f377d6097cec2..67707d43a2b1d5a1d55efa7b7cec9b5aa61e02c2 100644
--- a/src/backend/main/main.c
+++ b/src/backend/main/main.c
@@ -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"
@@ -313,6 +315,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);
 }