Re: [PATCH] Make ENOSPC not fatal in semaphore creation

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Thomas Munro <thomas(dot)munro(at)gmail(dot)com>
Cc: Mikhail <mp39590(at)gmail(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: [PATCH] Make ENOSPC not fatal in semaphore creation
Date: 2021-11-19 20:34:51
Message-ID: 3098705.1637354091@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Thomas Munro <thomas(dot)munro(at)gmail(dot)com> writes:
> This has been fixed. So now there are working basic futexes on Linux,
> macOS, {Free,Open,Net,Dragonfly}BSD (though capabilities beyond basic
> wait/wake vary, as do APIs). So the question is whether it would be
> worth trying to do our own futex-based semaphores, as sketched above,
> just for the benefit of the OSes where the available built-in
> semaphores are of the awkward SysV kind, namely macOS, NetBSD and
> OpenBSD. Perhaps we shouldn't waste our time with that, and should
> instead plan to use futexes for a more ambitious lwlock rewrite.

I kind of like the latter idea, but I wonder how we make it coexist
with (admittedly legacy) code for OSes that don't have usable futexes.

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Thomas Munro 2021-11-19 21:21:31 Re: [PATCH] Make ENOSPC not fatal in semaphore creation
Previous Message Tom Lane 2021-11-19 20:31:00 Re: TOAST - why separate visibility map