From daf3d99d2b8bebb3361163a11ef3d232002127c9 Mon Sep 17 00:00:00 2001 From: Heikki Linnakangas Date: Thu, 6 Nov 2025 12:50:10 +0200 Subject: Add comment to explain why PGReserveSemaphores() is called early Before commit e25626677f, PGReserveSemaphores() had to be called before SpinlockSemaInit() because spinlocks were implemented using semaphores on some platforms (--disable-spinlocks). Add a comment explaining that. Author: Ashutosh Bapat Discussion: https://www.postgresql.org/message-id/CAExHW5seSZpPx-znjidVZNzdagGHOk06F+Ds88MpPUbxd1kTaA@mail.gmail.com Backpatch-to: 18 --- src/backend/storage/ipc/ipci.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/backend/storage/ipc/ipci.c') diff --git a/src/backend/storage/ipc/ipci.c b/src/backend/storage/ipc/ipci.c index 10ffce8d174..19f9c774488 100644 --- a/src/backend/storage/ipc/ipci.c +++ b/src/backend/storage/ipc/ipci.c @@ -227,7 +227,9 @@ CreateSharedMemoryAndSemaphores(void) InitShmemAccess(seghdr); /* - * Create semaphores + * Create semaphores. (This is done here for historical reasons. We used + * to support emulating spinlocks with semaphores, which required + * initializing semaphores early.) */ PGReserveSemaphores(numSemas); -- cgit v1.2.3