1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-10 14:00:21 +02:00
guile/module
Ludovic Courtès 12f2bb5262 Serialize accesses to submodule hash tables.
Fixes <https://bugs.gnu.org/30602>.

Previously, when compiling files in parallel like Guix does, threads
would be concurrently inserting, rehashing, and reading the submodule
hash table of module ().  Thus, some threads would sometimes see an
inconsistent state, leading to errors such as:

  Module named (system repl debug) does not exist

* module/ice-9/boot-9.scm (call-with-module-autoload-lock): Move higher
in the file.
(module-name): Use it around call to 'nested-define-module!'.
(resolve-module): Wrap the whole thing in 'call-with-module-autoload-lock'.
2018-08-07 12:31:22 +02:00
..
ice-9 Serialize accesses to submodule hash tables. 2018-08-07 12:31:22 +02:00
language Add copyright header for (language elisp falias), and fix typo. 2018-08-07 12:07:27 +02:00
oop goops: Fix 'instance?' to work on objects that aren't structs. 2018-08-07 12:05:31 +02:00
rnrs Replace "pr" struct fields with "pw" fields 2017-09-23 15:33:02 +02:00
scripts compile: Load language modules upfront. 2018-08-07 11:35:34 +02:00
srfi Add SRFI 71: Extended LET-syntax for multiple values. 2018-08-07 12:08:56 +02:00
sxml Remove duplicate definitions of call/ec' and let/ec'. 2013-04-06 15:40:19 +02:00
system linker: Don't rely on out-of-range bv-ref exceptions. 2018-08-07 12:14:10 +02:00
texinfo Remove all deprecated code 2017-05-22 13:36:42 +02:00
web web: Export http-request. 2018-08-07 12:13:19 +02:00
Makefile.am Add (system base optimize) module 2018-01-05 10:19:54 +01:00
rnrs.scm Add R6RS bytevector->string, string->bytevector 2016-06-21 11:29:14 +02:00
statprof.scm Remove all deprecated code 2017-05-22 13:36:42 +02:00
texinfo.scm texinfo: fix @url{@@} parsing 2014-11-09 15:56:33 +00:00