1.0.36.16: allocation profiling for new threads
authorNikodemus Siivola <nikodemus@random-state.net>
Tue, 9 Mar 2010 09:57:29 +0000 (09:57 +0000)
committerNikodemus Siivola <nikodemus@random-state.net>
Tue, 9 Mar 2010 09:57:29 +0000 (09:57 +0000)
 Patch by: Leslie Polzer <polzer@gnu.org>

 Fixes Launchpad bug #472499.

NEWS
contrib/sb-sprof/sb-sprof.lisp
version.lisp-expr

diff --git a/NEWS b/NEWS
index af7f21c..ee003e1 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -16,15 +16,17 @@ changes relative to sbcl-1.0.36:
     functions. (lp#524707)
   * bug fix: bogus style warnings from certain (SETF SLOT-VALUE) and
     WITH-SLOTS usages during compilation.
-  * bug fix: SB-C::CLASS-INFO now prints correctly (lp#514762)
+  * bug fix: SB-C::CLASS-INFO now prints correctly. (lp#514762)
   * enhancement: Can now build with ud2 instead of int3 as trap instruction on
     all x86oid platforms with :UD2-BREAKPOINTS target feature.
   * bug fix: Breakpoints now work when using ud2 instead of int3 as trap
     instruction (tested on x86oid linux with ud2-breakpoints).
   * bug fix: slam.sh now works on win32.
-  * bug fix: better differences of numeric types (lp#309124)
+  * bug fix: better differences of numeric types. (lp#309124)
   * bug fix: arrays declared intersection and union types can have their
-    upgraded element type derived (lp#316078)
+    upgraded element type derived. (lp#316078)
+  * bug fix: SB-SPROF allocation profiling for all threads failed to profile
+    threads started during profiling. (lp#472499)
 
 changes in sbcl-1.0.36 relative to sbcl-1.0.35:
   * new feature: SB-EXT:TYPEXPAND-1, SB-EXT:TYPEXPAND, and
index 83a4f58..b7a9dcc 100644 (file)
@@ -483,7 +483,7 @@ profiling")
           'trace-start))
   (incf (samples-index samples) 2))
 
-;;; List of thread currently profiled, or T for all threads.
+;;; List of thread currently profiled, or :ALL for all threads.
 (defvar *profiled-threads* nil)
 (declaim (type (or list (member :all)) *profiled-threads*))
 
@@ -798,7 +798,7 @@ The following keyword args are recognized:
          (let ((alloc-signal (1- alloc-interval)))
            #+sb-thread
            (progn
-             (when (eq t threads)
+             (when (eq :all threads)
                ;; Set the value new threads inherit.
                (sb-thread::with-all-threads-lock
                  (setf sb-thread::*default-alloc-signal* alloc-signal)))
@@ -1259,7 +1259,9 @@ The following keyword args are recognized:
 
 Value of this function is a CALL-GRAPH object representing the
 resulting call-graph, or NIL if there are no samples (eg. right after
-calling RESET.)"
+calling RESET.)
+
+Profiling is stopped before the call graph is generated."
   (cond (*samples*
          (let ((graph (or call-graph (make-call-graph most-positive-fixnum))))
            (ecase type
index 6b2a19e..ab57175 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.36.15"
+"1.0.36.16"