postgres.git / summary / log / commit / refs
commit 18f47989ecb0d63db34f8140cc335fec2543fe4a
Author: Nathan Bossart <nathan@postgresql.org>
Date: Wed Nov 15 21:04:18 2023 +0000
First released in: 17.0, 12.18, 13.14, 14.11, 15.6, 16.2
Fix fallback implementation for pg_atomic_test_set_flag().
The fallback implementation of pg_atomic_test_set_flag() that uses
atomic-exchange gives pg_atomic_exchange_u32_impl() an extra
argument. This issue has been present since the introduction of
the atomics API in commit b64d92f1a5.
Reviewed-by: Andres Freund
Discussion: https://postgr.es/m/20231114035439.GA1809032%40nathanxps13
Backpatch-through: 12
src/include/port/atomics/generic.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/include/port/atomics/generic.h b/src/include/port/atomics/generic.h
index a1f245624aa..d62428acf2a 100644
--- a/src/include/port/atomics/generic.h
+++ b/src/include/port/atomics/generic.h
@@ -83,7 +83,7 @@ pg_atomic_init_flag_impl(volatile pg_atomic_flag *ptr)
static inline bool
pg_atomic_test_set_flag_impl(volatile pg_atomic_flag *ptr)
{
- return pg_atomic_exchange_u32_impl(ptr, &value, 1) == 0;
+ return pg_atomic_exchange_u32_impl(ptr, 1) == 0;
}
#define PG_HAVE_ATOMIC_UNLOCKED_TEST_FLAG
[parent: 63c1b4d88a6f]