diff options
author | Rajan Arora <rarora@redhat.com> | 2008-10-27 15:15:53 -0400 |
---|---|---|
committer | Rajan Arora <rarora@redhat.com> | 2008-10-27 15:15:53 -0400 |
commit | 7584f16292bc4557b3f7e3f9dcbc5dbe07bab562 (patch) | |
tree | 9da212b5cee991e9b42e40aa1553578e6aa53ca2 | |
parent | 26343b47cdaff0420e6405295a0788b334be4eb6 (diff) | |
download | systemtap-steved-7584f16292bc4557b3f7e3f9dcbc5dbe07bab562.tar.gz systemtap-steved-7584f16292bc4557b3f7e3f9dcbc5dbe07bab562.tar.xz systemtap-steved-7584f16292bc4557b3f7e3f9dcbc5dbe07bab562.zip |
RHBZ 468139 avoid display of tapset globals
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | elaborate.cxx | 13 | ||||
-rw-r--r-- | testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | testsuite/systemtap.base/global_end.exp | 11 | ||||
-rw-r--r-- | testsuite/systemtap.base/global_end2.stp | 8 |
5 files changed, 34 insertions, 8 deletions
@@ -1,6 +1,7 @@ -2008-10-25 Rajan Arora <rarora@redhat.com> +2008-10-27 Rajan Arora <rarora@redhat.com> - * elaborate.cxx (add_global_var_display): Added check for guru mode. + * elaborate.cxx (add_global_var_display): Added check for globals + from tapsets. 2008-10-24 Josh Stone <joshua.i.stone@intel.com> diff --git a/elaborate.cxx b/elaborate.cxx index 6e01e813..7cbac31f 100644 --- a/elaborate.cxx +++ b/elaborate.cxx @@ -1171,8 +1171,17 @@ void add_global_var_display (systemtap_session& s) // declared only within tapsets. (RHBZ 468139), but rather // only within the end-user script. - // XXX: for example, search s.library_files[]->globals->name - // for a matching with l->name, then "continue;" to skip it. + bool tapset_global = false; + for (size_t m=0; m < s.library_files.size(); m++) + { + for (size_t n=0; n < s.library_files[m]->globals.size(); n++) + { + if (l->name == s.library_files[m]->globals[n]->name) + {tapset_global = true; break;} + } + } + if (tapset_global) + continue; print_format* pf = new print_format; probe* p = new probe; diff --git a/testsuite/ChangeLog b/testsuite/ChangeLog index 6ded1137..829d605c 100644 --- a/testsuite/ChangeLog +++ b/testsuite/ChangeLog @@ -1,7 +1,6 @@ -2008-10-25 Rajan Arora <rarora@redhat.com> +2008-10-27 Rajan Arora <rarora@redhat.com> - * systemtap.base/global_end.exp: Spawn test again - in guru mode. + * systemtap.base/global_end.exp: Spawn global_end2.stp 2008-10-20 Elliott Baron <ebaron@redhat.com> diff --git a/testsuite/systemtap.base/global_end.exp b/testsuite/systemtap.base/global_end.exp index b6b9fd30..9699b241 100644 --- a/testsuite/systemtap.base/global_end.exp +++ b/testsuite/systemtap.base/global_end.exp @@ -23,4 +23,13 @@ expect { eof { } } wait -if {$ok == 11} { pass "$test ($ok)" } { fail "$test ($ok)" } + +spawn stap $srcdir/$subdir/global_end2.stp +# above should not do any tapset global variable display so +# ok should only change by 1 +expect { + -timeout 180 + -re {Avg time = 6} { incr ok; exp_continue } +} + +if {$ok == 12} { pass "$test ($ok)" } { fail "$test ($ok)" } diff --git a/testsuite/systemtap.base/global_end2.stp b/testsuite/systemtap.base/global_end2.stp new file mode 100644 index 00000000..f170a8fe --- /dev/null +++ b/testsuite/systemtap.base/global_end2.stp @@ -0,0 +1,8 @@ +probe begin { + qsq_start("test") + qs_wait("test") + qs_run("test") + qs_done("test") + log(sprintf("Avg time = %d", qsq_service_time("test", 1))) + exit() +} |