Changeset: d58bdcce8d85 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=d58bdcce8d85 Modified Files: clients/Tests/exports.stable.out gdk/ChangeLog gdk/gdk.h gdk/gdk_atoms.c gdk/gdk_bat.c gdk/gdk_bbp.c gdk/gdk_bbp.h gdk/gdk_heap.c gdk/gdk_search.c gdk/gdk_tm.c gdk/gdk_utils.c gdk/gdk_utils.h monetdb5/mal/mal.c monetdb5/mal/mal.h monetdb5/mal/mal_box.c monetdb5/mal/mal_client.c monetdb5/mal/mal_dataflow.c monetdb5/mal/mal_debugger.c monetdb5/mal/mal_interpreter.c monetdb5/mal/mal_linker.c monetdb5/mal/mal_namespace.c monetdb5/mal/mal_profiler.c monetdb5/mal/mal_properties.c monetdb5/mal/mal_recycle.c monetdb5/mal/mal_runtime.c monetdb5/mal/mal_scenario.c monetdb5/mal/mal_session.c monetdb5/modules/mal/mal_mapi.c monetdb5/modules/mal/remote.c monetdb5/modules/mal/tablet.c monetdb5/modules/mal/tokenizer.c monetdb5/optimizer/opt_dictionary.c monetdb5/optimizer/opt_mapreduce.c monetdb5/optimizer/opt_pipes.c monetdb5/optimizer/opt_statistics.c sql/backends/monet5/datacell/basket.c sql/backends/monet5/datacell/emitter.c sql/backends/monet5/datacell/petrinet.c sql/backends/monet5/sql_scenario.c sql/storage/store.c tools/mserver/mserver5.c Branch: default Log Message:
Removed GDKembedded, GDKprotected vars, GDKprotect() func. Also removed gdk_set_lock and mal_set_lock and similar (they used GDKprotected) and replaced the calls with the appropriate MT_lock_set etc. calls. diffs (truncated from 3193 to 300 lines): diff --git a/clients/Tests/exports.stable.out b/clients/Tests/exports.stable.out --- a/clients/Tests/exports.stable.out +++ b/clients/Tests/exports.stable.out @@ -227,9 +227,9 @@ int GDK_vm_trim; int GDKatomcnt; int GDKcreatedir(const char *nme); int GDKdebug; -int GDKembedded; int GDKerror(_In_z_ _Printf_format_string_ const char *format, ...) __attribute__((__format__(__printf__, 1, 2))); void GDKexit(int status); +int GDKexiting(void); int GDKfatal(_In_z_ _Printf_format_string_ const char *format, ...) __attribute__((__format__(__printf__, 1, 2))); void GDKfilepath(str path, const char *nme, const char *mode, const char *ext); void GDKfree(void *blk); @@ -244,8 +244,6 @@ size_t GDKmem_inuse(void); void *GDKmmap(const char *path, int mode, off_t off, size_t len); int GDKms(void); int GDKnr_threads; -void GDKprotect(void); -int GDKprotected; void GDKqsort(void *h, void *t, const void *base, size_t n, int hs, int ts, int tpe); void GDKqsort_rev(void *h, void *t, const void *base, size_t n, int hs, int ts, int tpe); void *GDKrealloc(void *pold, size_t size); diff --git a/gdk/ChangeLog b/gdk/ChangeLog --- a/gdk/ChangeLog +++ b/gdk/ChangeLog @@ -1,6 +1,10 @@ # ChangeLog file for MonetDB # This file is updated with Maddlog +* Wed Aug 8 2012 Sjoerd Mullender <[email protected]> +- Removed the gdk_embedded (and embedded) option. The code wasn't tested + and most likely non-functional. + * Tue Jul 17 2012 Sjoerd Mullender <[email protected]> - BAT-of-BATs is no longer allowed. It was already not allowed to make these types of BATs persistent, but now they can't be created at diff --git a/gdk/gdk.h b/gdk/gdk.h --- a/gdk/gdk.h +++ b/gdk/gdk.h @@ -2397,24 +2397,6 @@ VALptr(const ValRecord *v) ((((lng)normal_int_SWAP(l))<<32) |\ (0xffffffff&normal_int_SWAP(l>>32))) -gdk_export int GDKembedded; -gdk_export int GDKprotected; -gdk_export void GDKprotect(void); - -/* - * The GDKembedded variable is a property set in the configuration - * file to indicate that the kernel is only allowed to run as a single - * process. This can be used to remove all locking overhead. The - * actual state of affairs is maintained in GDKprotected, which is set - * when locking is required, e.g. when multiple threads become active. - */ -#define gdk_set_lock(X,Y) do if (GDKprotected) MT_lock_set(&X,Y); while (0) -#define gdk_unset_lock(X,Y) do if (GDKprotected) MT_lock_unset(&X,Y); while (0) -#define gdk_up_sema(X,Y) do if (GDKprotected) MT_sema_up(&X,Y); while (0) -#define gdk_down_sema(X,Y) do if (GDKprotected) MT_sema_down(&X,Y); while (0) -#define gdk_signal_cond(X,Y) do if (GDKprotected) MT_cond_signal(&X,Y); while (0) -#define gdk_wait_cond(X,Y,Z) do if (GDKprotected) MT_cond_wait(&X,&Y,Z); while (0) - /* * The kernel maintains a central table of all active threads. They * are indexed by their tid. The structure contains information on the diff --git a/gdk/gdk_atoms.c b/gdk/gdk_atoms.c --- a/gdk/gdk_atoms.c +++ b/gdk/gdk_atoms.c @@ -190,7 +190,7 @@ ATOMproperty(str id, str property, GDKfc { int t; - gdk_set_lock(GDKthreadLock, "ATOMproperty"); + MT_lock_set(&GDKthreadLock, "ATOMproperty"); t = ATOMindex(id); if (t < 0) { @@ -286,7 +286,7 @@ ATOMproperty(str id, str property, GDKfc BATatoms[t].storage = t; /* critical redefine: undo remapping */ } out: - gdk_unset_lock(GDKthreadLock, "ATOMproperty"); + MT_lock_unset(&GDKthreadLock, "ATOMproperty"); } int @@ -1620,9 +1620,9 @@ OIDrand(void) oid OIDbase(oid o) { - gdk_set_lock(MT_system_lock, "OIDbase"); + MT_lock_set(&MT_system_lock, "OIDbase"); GDKoid = o; - gdk_unset_lock(MT_system_lock, "OIDbase"); + MT_lock_unset(&MT_system_lock, "OIDbase"); return o; } @@ -1631,13 +1631,13 @@ OIDseed(oid o) { oid t, p = GDKoid; - gdk_set_lock(MT_system_lock, "OIDseed"); + MT_lock_set(&MT_system_lock, "OIDseed"); t = OIDrand(); if (o > t) t = o; if (p >= t) t = p; - gdk_unset_lock(MT_system_lock, "OIDseed"); + MT_lock_unset(&MT_system_lock, "OIDseed"); return t; } @@ -1670,7 +1670,7 @@ OIDwrite(stream *s) { int ret = 0; - gdk_set_lock(MT_system_lock, "OIDwrite"); + MT_lock_set(&MT_system_lock, "OIDwrite"); if (GDKoid) { GDKflushed = GDKoid; ATOMprint(TYPE_oid, &GDKflushed, s); @@ -1678,7 +1678,7 @@ OIDwrite(stream *s) mnstr_write(s, " ", 1, 1) <= 0) ret = -1; } - gdk_unset_lock(MT_system_lock, "OIDwrite"); + MT_lock_unset(&MT_system_lock, "OIDwrite"); return ret; } @@ -1699,12 +1699,12 @@ OIDnew(oid inc) { oid ret; - gdk_set_lock(MT_system_lock, "OIDnew"); + MT_lock_set(&MT_system_lock, "OIDnew"); if (!GDKoid) GDKoid = OIDrand(); ret = GDKoid; GDKoid += inc; - gdk_unset_lock(MT_system_lock, "OIDnew"); + MT_lock_unset(&MT_system_lock, "OIDnew"); return ret; } diff --git a/gdk/gdk_bat.c b/gdk/gdk_bat.c --- a/gdk/gdk_bat.c +++ b/gdk/gdk_bat.c @@ -1917,11 +1917,11 @@ BUNlocate(BAT *b, const void *x, const v v = BATmirror(v); } if (v->H->hash) { - gdk_set_lock(GDKhashLock(ABS(b->batCacheid) & BBP_BATMASK), "BUNlocate"); + MT_lock_set(&GDKhashLock(ABS(b->batCacheid) & BBP_BATMASK), "BUNlocate"); if (b->H->hash == NULL) { /* give it to the parent */ b->H->hash = v->H->hash; } - gdk_unset_lock(GDKhashLock(ABS(b->batCacheid) & BBP_BATMASK), "BUNlocate"); + MT_lock_unset(&GDKhashLock(ABS(b->batCacheid) & BBP_BATMASK), "BUNlocate"); } BBPreclaim(v); v = NULL; @@ -2498,7 +2498,7 @@ backup_new(Heap *hp, int lockbat) /* file actions here interact with the global commits */ for (xx = 0; xx <= lockbat; xx++) - gdk_set_lock(GDKtrimLock(xx), "TMsubcommit"); + MT_lock_set(&GDKtrimLock(xx), "TMsubcommit"); /* check for an existing X.new in BATDIR, BAKDIR and SUBDIR */ GDKfilepath(batpath, BATDIR, hp->filename, ".new"); @@ -2517,7 +2517,7 @@ backup_new(Heap *hp, int lockbat) IODEBUG THRprintf(GDKstdout, "#unlink(%s) = %d\n", batpath, ret); } for (xx = lockbat; xx >= 0; xx--) - gdk_unset_lock(GDKtrimLock(xx), "TMsubcommit"); + MT_lock_unset(&GDKtrimLock(xx), "TMsubcommit"); return ret; } @@ -2777,7 +2777,7 @@ BATmode(BAT *b, int mode) } else if (b->batPersistence == PERSISTENT) { BBPdecref(bid, TRUE); } - gdk_set_lock(GDKswapLock(bid & BBP_BATMASK), "BATmode"); + MT_lock_set(&GDKswapLock(bid & BBP_BATMASK), "BATmode"); if (mode == PERSISTENT) { if (!(BBP_status(bid) & BBPDELETED)) BBP_status_on(bid, BBPNEW, "BATmode"); @@ -2799,7 +2799,7 @@ BATmode(BAT *b, int mode) } } b->batPersistence = mode; - gdk_unset_lock(GDKswapLock(bid & BBP_BATMASK), "BATmode"); + MT_lock_unset(&GDKswapLock(bid & BBP_BATMASK), "BATmode"); } return b; } diff --git a/gdk/gdk_bbp.c b/gdk/gdk_bbp.c --- a/gdk/gdk_bbp.c +++ b/gdk/gdk_bbp.c @@ -242,20 +242,20 @@ BBPlock(const char *nme) int i; /* wait for all pending unloads to finish */ - gdk_set_lock(GDKunloadLock, nme); + MT_lock_set(&GDKunloadLock, nme); if (BBPunloadCnt > 0) - gdk_wait_cond(GDKunloadCond, GDKunloadLock, nme); + MT_cond_wait(&GDKunloadCond, &GDKunloadLock, nme); for (i = 0; i <= BBP_THREADMASK; i++) - gdk_set_lock(GDKtrimLock(i), nme); + MT_lock_set(&GDKtrimLock(i), nme); BBP_notrim = BBP_getpid(); for (i = 0; i <= BBP_THREADMASK; i++) - gdk_set_lock(GDKcacheLock(i), nme); + MT_lock_set(&GDKcacheLock(i), nme); for (i = 0; i <= BBP_BATMASK; i++) - gdk_set_lock(GDKswapLock(i), nme); + MT_lock_set(&GDKswapLock(i), nme); locked_by = BBP_notrim; - gdk_unset_lock(GDKunloadLock, nme); + MT_lock_unset(&GDKunloadLock, nme); } void @@ -264,13 +264,13 @@ BBPunlock(const char *nme) int i; for (i = BBP_BATMASK; i >= 0; i--) - gdk_unset_lock(GDKswapLock(i), nme); + MT_lock_unset(&GDKswapLock(i), nme); for (i = BBP_THREADMASK; i >= 0; i--) - gdk_unset_lock(GDKcacheLock(i), nme); + MT_lock_unset(&GDKcacheLock(i), nme); BBP_notrim = 0; locked_by = 0; for (i = BBP_THREADMASK; i >= 0; i--) - gdk_unset_lock(GDKtrimLock(i), nme); + MT_lock_unset(&GDKtrimLock(i), nme); } @@ -1717,13 +1717,13 @@ BBP_find(const char *nme, int lock) } else if (*nme != '.') { /* must lock since hash-lookup traverses other BATs */ if (lock) - gdk_set_lock(GDKnameLock, "BBPindex"); + MT_lock_set(&GDKnameLock, "BBPindex"); for (i = BBP_hash[strHash(nme) & BBP_mask]; i; i = BBP_next(i)) { if (strcmp(BBP_logical(i), nme) == 0) break; } if (lock) - gdk_unset_lock(GDKnameLock, "BBPindex"); + MT_lock_unset(&GDKnameLock, "BBPindex"); } return i; } @@ -1823,8 +1823,8 @@ BBPinsert(BATstore *bs) /* critical section: get a new BBP entry */ if (lock) { - gdk_set_lock(GDKtrimLock(idx), "BBPreplace"); - gdk_set_lock(GDKcacheLock(idx), "BBPinsert"); + MT_lock_set(&GDKtrimLock(idx), "BBPreplace"); + MT_lock_set(&GDKcacheLock(idx), "BBPinsert"); } /* find an empty slot */ @@ -1834,11 +1834,11 @@ BBPinsert(BATstore *bs) /* we must take all locks in a consistent * order so first unset the one we've already * got */ - gdk_unset_lock(GDKcacheLock(idx), "BBPinsert"); + MT_lock_unset(&GDKcacheLock(idx), "BBPinsert"); for (i = 0; i <= BBP_THREADMASK; i++) - gdk_set_lock(GDKcacheLock(i), "BBPinsert"); + MT_lock_set(&GDKcacheLock(i), "BBPinsert"); } - gdk_set_lock(GDKnameLock, "BBPinsert"); + MT_lock_set(&GDKnameLock, "BBPinsert"); /* check again in case some other thread extended * while we were waiting */ if (BBP_free(idx) <= 0) { @@ -1852,19 +1852,19 @@ BBPinsert(BATstore *bs) BBP_free(idx) = BBPsize - 1; } } - gdk_unset_lock(GDKnameLock, "BBPinsert"); + MT_lock_unset(&GDKnameLock, "BBPinsert"); if (lock) for (i = BBP_THREADMASK; i >= 0; i--) if (i != idx) - gdk_unset_lock(GDKcacheLock(i), "BBPinsert"); + MT_lock_unset(&GDKcacheLock(i), "BBPinsert"); _______________________________________________ Checkin-list mailing list [email protected] http://mail.monetdb.org/mailman/listinfo/checkin-list
