Claudio Natoli <claudio.natoli@memetrics.com> writes:
> Are these comments still true? Specifically, is it necessary to call
> CreateLWLocks before InitShmemIndex? I think it used to be, but then the
> ShmemIndexLock got made into a separate spinlock in its own right.
I think the only dependency was that ShmemIndexLock was an LWLock.
> It doesn't appear to be true, and I'd like to rearrange this section of the
> code,
You have broken stuff before by rearranging the sequence of
operations... what exactly have you got in mind here?
> ... a possible solution to a Win32 shmem/semaphore bootstrap
> problem (postgres semaphores under Win32 uses ShmemIndex which uses
> spinlocks which use shared memory which use semaphores which ...).
The correct solution to that seems to lie elsewhere, ie, not use
semaphores for spinlocks.
regards, tom lane