diff options
author | Frank Ch. Eigler <fche@elastic.org> | 2008-04-26 14:48:51 -0400 |
---|---|---|
committer | Frank Ch. Eigler <fche@elastic.org> | 2008-04-26 14:48:51 -0400 |
commit | 9915575b17cdf08dc523f927e424d3982d4ed787 (patch) | |
tree | 2e3ba2f0cb785deca5f6e4544e7e8ac7b75b4c60 | |
parent | 9f99b110fbee8a6935ca60c152cc3c7cd809461b (diff) | |
download | systemtap-steved-9915575b17cdf08dc523f927e424d3982d4ed787.tar.gz systemtap-steved-9915575b17cdf08dc523f927e424d3982d4ed787.tar.xz systemtap-steved-9915575b17cdf08dc523f927e424d3982d4ed787.zip |
revert commit f0e6dc6304; overload detection logic was fine already
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() }
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | tapsets.cxx | 6 |
2 files changed, 11 insertions, 0 deletions
@@ -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. diff --git a/tapsets.cxx b/tapsets.cxx index 23e85a0e..c10196e2 100644 --- a/tapsets.cxx +++ b/tapsets.cxx @@ -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"; + */ } |