]> sourceware.org Git - systemtap.git/commitdiff
revert commit f0e6dc6304; overload detection logic was fine already
authorFrank Ch. Eigler <fche@elastic.org>
Sat, 26 Apr 2008 18:48:51 +0000 (14:48 -0400)
committerFrank Ch. Eigler <fche@elastic.org>
Sat, 26 Apr 2008 18:48:51 +0000 (14:48 -0400)
btw, here's a test script to monitor the persistent context values:

function cycles(which:long) %{
        THIS->__retvalue = (THIS->which == 0) ? CONTEXT->cycles_base :
                                                CONTEXT->cycles_sum;
%}

probe timer.profile { /* just for */ backtrace() /* load generation */
                      printf("%d %d\n", cycles(0), cycles(1)) }
probe timer.s(1) { exit() }

ChangeLog
tapsets.cxx

index 033db1b5f59b2fb15a61d7c87306bb0be81330dc..4d8d89ae96e1411d20a93c98df6252fc21a18bfa 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2008-04-26  Frank Ch. Eigler  <fche@elastic.org>
+
+       * tapsets.cxx (common_probe_entryfn_prologue): Undo
+       clear of overload-related context vars; add explanation why.
+
 2008-04-25  Frank Ch. Eigler  <fche@elastic.org>
 
        * systemtap.spec.in: Simplify configuration defaults.
index 23e85a0e5b42bc237db0de5a3673b80ad1544a39..c10196e294797e0247bd335121e7e85587a8ebd7 100644 (file)
@@ -216,10 +216,16 @@ common_probe_entryfn_prologue (translator_output* o, string statestr,
   o->newline() << "#ifdef STP_TIMING";
   o->newline() << "c->statp = 0;";
   o->newline() << "#endif";
+  // NB: The following would actually be incorrect.
+  // That's because cycles_sum/cycles_base values are supposed to survive
+  // between consecutive probes.  Periodically (STP_OVERLOAD_INTERVAL
+  // cycles), the values will be reset.
+  /*
   o->newline() << "#ifdef STP_OVERLOAD";
   o->newline() << "c->cycles_sum = 0;";
   o->newline() << "c->cycles_base = 0;";
   o->newline() << "#endif";  
+  */
 }
 
 
This page took 0.037161 seconds and 5 git commands to generate.