1.0.25.56: SUB-GC: don't observe deadlines
authorGabor Melis <mega@hotpop.com>
Tue, 24 Feb 2009 10:32:11 +0000 (10:32 +0000)
committerGabor Melis <mega@hotpop.com>
Tue, 24 Feb 2009 10:32:11 +0000 (10:32 +0000)
- because the condition that's signalled can cause arbitrary code to
  run catching us with pants down

- and we should not skip gc if it was triggerred

src/code/gc.lisp
version.lisp-expr

index 32aa109..8a8fe46 100644 (file)
@@ -215,7 +215,9 @@ run in any thread.")
            ;; Now, if GET-MUTEX did not cons, that would be enough.
            ;; Because it does, we need the :IN-PROGRESS bit above to
            ;; tell the runtime not to trigger gcs.
-           (let ((sb!impl::*in-without-gcing* t))
+           (let ((sb!impl::*in-without-gcing* t)
+                 (sb!impl::*deadline* nil)
+                 (sb!impl::*deadline-seconds* nil))
              (sb!thread:with-mutex (*already-in-gc*)
                (let ((*gc-inhibit* t))
                  (let ((old-usage (dynamic-usage))
index 7f1e7d1..bcfbb57 100644 (file)
@@ -17,4 +17,4 @@
 ;;; checkins which aren't released. (And occasionally for internal
 ;;; versions, especially for internal versions off the main CVS
 ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
-"1.0.25.55"
+"1.0.25.56"