Something went wrong. Try again.
What happens if I push all of nixpkgs
Something went wrong. Try again.
7.7 kB · 249 lines
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250diff --git a/src/dbinc/atomic.h b/src/dbinc/atomic.hindex 6a858f7..9f338dc 100644--- a/src/dbinc/atomic.h+++ b/src/dbinc/atomic.h@@ -70,7 +70,7 @@ typedef struct { * These have no memory barriers; the caller must include them when necessary. */ #define atomic_read(p) ((p)->value)-#define atomic_init(p, val) ((p)->value = (val))+#define atomic_init_db(p, val) ((p)->value = (val)) #ifdef HAVE_ATOMIC_SUPPORT @@ -144,7 +144,7 @@ typedef LONG volatile *interlocked_val; #define atomic_inc(env, p) __atomic_inc(p) #define atomic_dec(env, p) __atomic_dec(p) #define atomic_compare_exchange(env, p, o, n) \- __atomic_compare_exchange((p), (o), (n))+ __atomic_compare_exchange_int((p), (o), (n)) static inline int __atomic_inc(db_atomic_t *p) { int temp;@@ -176,7 +176,7 @@ static inline int __atomic_dec(db_atomic_t *p) * http://gcc.gnu.org/onlinedocs/gcc-4.1.0/gcc/Atomic-Builtins.html * which configure could be changed to use. */-static inline int __atomic_compare_exchange(+static inline int __atomic_compare_exchange_int( db_atomic_t *p, atomic_value_t oldval, atomic_value_t newval) { atomic_value_t was;@@ -206,7 +206,7 @@ static inline int __atomic_compare_exchange( #define atomic_dec(env, p) (--(p)->value) #define atomic_compare_exchange(env, p, oldval, newval) \ (DB_ASSERT(env, atomic_read(p) == (oldval)), \- atomic_init(p, (newval)), 1)+ atomic_init_db(p, (newval)), 1) #else #define atomic_inc(env, p) __atomic_inc(env, p) #define atomic_dec(env, p) __atomic_dec(env, p)diff --git a/src/mp/mp_fget.c b/src/mp/mp_fget.cindex 16de695..d0dcc29 100644--- a/src/mp/mp_fget.c+++ b/src/mp/mp_fget.c@@ -649,7 +649,7 @@ alloc: /* Allocate a new buffer header and data space. */ /* Initialize enough so we can call __memp_bhfree. */ alloc_bhp->flags = 0;- atomic_init(&alloc_bhp->ref, 1);+ atomic_init_db(&alloc_bhp->ref, 1); #ifdef DIAGNOSTIC if ((uintptr_t)alloc_bhp->buf & (sizeof(size_t) - 1)) { __db_errx(env, DB_STR("3025",@@ -955,7 +955,7 @@ alloc: /* Allocate a new buffer header and data space. */ MVCC_MPROTECT(bhp->buf, mfp->pagesize, PROT_READ); - atomic_init(&alloc_bhp->ref, 1);+ atomic_init_db(&alloc_bhp->ref, 1); MUTEX_LOCK(env, alloc_bhp->mtx_buf); alloc_bhp->priority = bhp->priority; alloc_bhp->pgno = bhp->pgno;diff --git a/src/mp/mp_mvcc.c b/src/mp/mp_mvcc.cindex 770bad8..e28cce0 100644--- a/src/mp/mp_mvcc.c+++ b/src/mp/mp_mvcc.c@@ -276,7 +276,7 @@ __memp_bh_freeze(dbmp, infop, hp, bhp, need_frozenp) #else memcpy(frozen_bhp, bhp, SSZA(BH, buf)); #endif- atomic_init(&frozen_bhp->ref, 0);+ atomic_init_db(&frozen_bhp->ref, 0); if (mutex != MUTEX_INVALID) frozen_bhp->mtx_buf = mutex; else if ((ret = __mutex_alloc(env, MTX_MPOOL_BH,@@ -428,7 +428,7 @@ __memp_bh_thaw(dbmp, infop, hp, frozen_bhp, alloc_bhp) #endif alloc_bhp->mtx_buf = mutex; MUTEX_LOCK(env, alloc_bhp->mtx_buf);- atomic_init(&alloc_bhp->ref, 1);+ atomic_init_db(&alloc_bhp->ref, 1); F_CLR(alloc_bhp, BH_FROZEN); } diff --git a/src/mp/mp_region.c b/src/mp/mp_region.cindex 4952030..47645f8 100644--- a/src/mp/mp_region.c+++ b/src/mp/mp_region.c@@ -245,7 +245,7 @@ __memp_init(env, dbmp, reginfo_off, htab_buckets, max_nreg) MTX_MPOOL_FILE_BUCKET, 0, &htab[i].mtx_hash)) != 0) return (ret); SH_TAILQ_INIT(&htab[i].hash_bucket);- atomic_init(&htab[i].hash_page_dirty, 0);+ atomic_init_db(&htab[i].hash_page_dirty, 0); } /*@@ -302,7 +302,7 @@ no_prealloc: } else hp->mtx_hash = mtx_base + (i % dbenv->mp_mtxcount); SH_TAILQ_INIT(&hp->hash_bucket);- atomic_init(&hp->hash_page_dirty, 0);+ atomic_init_db(&hp->hash_page_dirty, 0); #ifdef HAVE_STATISTICS hp->hash_io_wait = 0; hp->hash_frozen = hp->hash_thawed = hp->hash_frozen_freed = 0;diff --git a/src/mutex/mut_method.c b/src/mutex/mut_method.cindex 09353b0..177353c 100644--- a/src/mutex/mut_method.c+++ b/src/mutex/mut_method.c@@ -474,7 +474,7 @@ atomic_compare_exchange(env, v, oldval, newval) MUTEX_LOCK(env, mtx); ret = atomic_read(v) == oldval; if (ret)- atomic_init(v, newval);+ atomic_init_db(v, newval); MUTEX_UNLOCK(env, mtx); return (ret);diff --git a/src/mutex/mut_tas.c b/src/mutex/mut_tas.cindex 106b161..fc4de9d 100644--- a/src/mutex/mut_tas.c+++ b/src/mutex/mut_tas.c@@ -47,7 +47,7 @@ __db_tas_mutex_init(env, mutex, flags) #ifdef HAVE_SHARED_LATCHES if (F_ISSET(mutexp, DB_MUTEX_SHARED))- atomic_init(&mutexp->sharecount, 0);+ atomic_init_db(&mutexp->sharecount, 0); else #endif if (MUTEX_INIT(&mutexp->tas)) {@@ -536,7 +536,7 @@ __db_tas_mutex_unlock(env, mutex) F_CLR(mutexp, DB_MUTEX_LOCKED); /* Flush flag update before zeroing count */ MEMBAR_EXIT();- atomic_init(&mutexp->sharecount, 0);+ atomic_init_db(&mutexp->sharecount, 0); } else { DB_ASSERT(env, sharecount > 0); MEMBAR_EXIT();diff -ur a/dist/aclocal/clock.m4 b/dist/aclocal/clock.m4--- a/dist/aclocal/clock.m4 1969-12-31 19:00:01.000000000 -0500+++ b/dist/aclocal/clock.m4 2023-06-05 19:14:02.007080500 -0400@@ -21,6 +21,7 @@ AC_CACHE_CHECK([for clock_gettime monotonic clock], db_cv_clock_monotonic, [ AC_TRY_RUN([ #include <sys/time.h>+int main() { struct timespec t; return (clock_gettime(CLOCK_MONOTONIC, &t) != 0);diff -ur a/dist/aclocal/mmap.m4 b/dist/aclocal/mmap.m4--- a/dist/aclocal/mmap.m4 1969-12-31 19:00:01.000000000 -0500+++ b/dist/aclocal/mmap.m4 2023-06-05 19:14:02.007323624 -0400@@ -29,6 +29,8 @@ * system to system. */ #include <stdio.h>+ #include <stdlib.h>+ #include <unistd.h> #include <string.h> #include <sys/types.h> #include <sys/stat.h>@@ -42,12 +44,13 @@ #define MAP_FAILED (-1) #endif
- int catch_sig(sig)+ void catch_sig(sig) int sig; { exit(1); }
+ int main() { const char *underlying; unsigned gapsize;@@ -88,8 +91,8 @@ return (4); }
- (void) signal(SIGSEGV, catch_sig);- (void) signal(SIGBUS, catch_sig);+ (void) signal(SIGSEGV, &catch_sig);+ (void) signal(SIGBUS, &catch_sig);
for (i = sizeof(buf); i < total_size; i += gapsize) base[i] = 'A';diff -ur a/dist/aclocal/mutex.m4 b/dist/aclocal/mutex.m4--- a/dist/aclocal/mutex.m4 1969-12-31 19:00:01.000000000 -0500+++ b/dist/aclocal/mutex.m4 2023-06-05 19:14:47.214158196 -0400@@ -5,6 +5,7 @@ AC_TRY_RUN([ #include <stdlib.h> #include <pthread.h>+int main() { pthread_cond_t cond; pthread_mutex_t mutex;@@ -49,6 +50,7 @@ AC_TRY_RUN([ #include <stdlib.h> #include <pthread.h>+int main() { pthread_cond_t cond; pthread_mutex_t mutex;@@ -89,6 +91,7 @@ AC_TRY_RUN([ #include <stdlib.h> #include <pthread.h>+int main() { pthread_cond_t cond; pthread_condattr_t condattr;@@ -110,6 +113,7 @@ AC_TRY_RUN([ #include <stdlib.h> #include <pthread.h>+int main() { pthread_rwlock_t rwlock; pthread_rwlockattr_t rwlockattr;diff -ur a/dist/aclocal/sequence.m4 b/dist/aclocal/sequence.m4--- a/dist/aclocal/sequence.m4 1969-12-31 19:00:01.000000000 -0500+++ b/dist/aclocal/sequence.m4 2023-06-05 19:14:02.007869956 -0400@@ -43,6 +43,9 @@ # test, which won't test for the appropriate printf format strings. if test "$db_cv_build_sequence" = "yes"; then AC_TRY_RUN([+ #include <string.h>+ #include <stdio.h>+ int main() { $db_cv_seq_type l; unsigned $db_cv_seq_type u;@@ -59,7 +62,9 @@ return (1); return (0); }],, [db_cv_build_sequence="no"],- AC_TRY_LINK(,[+ AC_TRY_LINK([+ #include <string.h>+ #include <stdio.h>],[ $db_cv_seq_type l; unsigned $db_cv_seq_type u; char buf@<:@100@:>@;