Ashutosh Bapat <[email protected]> writes:
> On Wed, Feb 11, 2026 at 8:46 AM Chao Li <[email protected]> wrote:
>> But I don’t see a replacement like SpinLockInit(&ProcGlobal->freeProcsLock);
> Good catch.
Undoubtedly, this escaped Heikki's notice because on all supported
platforms SpinLockInit() initializes the spinlock value to zero,
but shared memory starts out zeroes anyway.
We used to have better odds of catching such mistakes. My old HPPA
dinosaur would have caught it by dint of needing a nonzero initial
value, but that hardware is long gone. The test infrastructure
we used to have for emulating spinlocks with SysV semaphores would
have caught it too, I think, but that's also gone.
This is not a great situation. I wonder if we can put back some
mode that could be used by a few BF members to catch such oversights.
regards, tom lane