Re: Spinlock can be released twice in procsignal.c
Maxim Orlov <orlovmg@gmail.com>
From: Maxim Orlov <orlovmg@gmail.com>
To: Michael Paquier <michael@paquier.xyz>
Cc: Andrey Borodin <x4mmm@yandex-team.ru>,
"Maksim.Melnikov" <m.melnikov@postgrespro.ru>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>,
Heikki Linnakangas <hlinnaka@iki.fi>, Jelte Fennema-Nio <postgres@jeltef.nl>
Date: 2025-02-26T06:57:45Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Fix possible double-release of spinlock in procsignal.c
- 62ec3e1f6786 18.0 landed
Attachments
- v2-0001-Avoid-double-spinlock-release.patch (application/octet-stream) patch v2-0001
On Wed, 26 Feb 2025 at 07:56, Michael Paquier <michael@paquier.xyz> wrote: > > This fix is not correct. No system function calls (well basically > most of them) or even more no PostgreSQL-specific calls should happen > while holding a spinlock. elog() is a good example of what not to do. > One example: imagine a palloc failure while holding this spinlock in > this elog(). Indeed. PFA the correct one. -- Best regards, Maxim Orlov.