From e57ec83950a1c44eb4d8867f8beafd5cd3df1045 Mon Sep 17 00:00:00 2001 From: George Hazan Date: Thu, 12 Dec 2019 18:40:58 +0300 Subject: libmdbx: force 32-bit version to work identically to the 64-bit version --- libs/libmdbx/src/src/elements/core.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'libs/libmdbx/src') diff --git a/libs/libmdbx/src/src/elements/core.c b/libs/libmdbx/src/src/elements/core.c index 8cd92760ef..b45db5178b 100644 --- a/libs/libmdbx/src/src/elements/core.c +++ b/libs/libmdbx/src/src/elements/core.c @@ -824,7 +824,7 @@ static __inline void safe64_reset(mdbx_safe64_t *ptr, bool single_writer) { ptr->atomic = UINT64_MAX; #else /* atomically make value >= SAFE64_INVALID_THRESHOLD */ - ptr->high = UINT32_MAX; + ptr->high = ptr->low = UINT32_MAX; #endif /* MDBX_64BIT_ATOMIC */ assert(ptr->inconsistent >= SAFE64_INVALID_THRESHOLD); mdbx_flush_incoherent_cpu_writeback(); @@ -867,7 +867,7 @@ static __inline void safe64_write(mdbx_safe64_t *ptr, const uint64_t v) { #else /* MDBX_64BIT_ATOMIC */ /* update low-part but still value >= SAFE64_INVALID_THRESHOLD */ ptr->low = (uint32_t)v; - assert(ptr->inconsistent >= SAFE64_INVALID_THRESHOLD); + // assert(ptr->inconsistent >= SAFE64_INVALID_THRESHOLD); mdbx_flush_incoherent_cpu_writeback(); mdbx_jitter4testing(true); /* update high-part from SAFE64_INVALID_THRESHOLD to actual value */ -- cgit v1.2.3