From 860c260412f57b99c9ad2229cf6f9a32d7dd7fc0 Mon Sep 17 00:00:00 2001 From: Matt Birkholz Date: Tue, 16 Jun 2015 19:20:31 -0700 Subject: [PATCH] Unalias with-absolutely-no-interrupts in runtime/prgcop.scm. It is not atomic in multiprocessing worlds. The alias "atomically" is no longer appropriate. --- src/runtime/prgcop.scm | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/src/runtime/prgcop.scm b/src/runtime/prgcop.scm index b065b7b92..42f129f32 100644 --- a/src/runtime/prgcop.scm +++ b/src/runtime/prgcop.scm @@ -135,7 +135,7 @@ USA. (define (%copy-compiled-code-address obj) (let ((new-block (copy-compiled-code-block (compiled-code-address->block obj)))) - (atomically + (with-absolutely-no-interrupts (lambda () (object-new-type (object-type obj) @@ -158,9 +158,6 @@ USA. ((not (fix:< i len))) (vector-set! new i (copy-object (vector-ref new i)))) typed)) - -(define-integrable (atomically thunk) - (with-absolutely-no-interrupts thunk)) (define ((%copy-pair type) obj) (%%copy-pair type obj)) -- 2.25.1