This is the mail archive of the systemtap@sourceware.org mailing list for the systemtap project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug runtime/17301] New: optim_arridx.exp affected by testsuite's timeout feature


https://sourceware.org/bugzilla/show_bug.cgi?id=17301

            Bug ID: 17301
           Summary: optim_arridx.exp affected by testsuite's timeout
                    feature
           Product: systemtap
           Version: unspecified
            Status: NEW
          Severity: minor
          Priority: P3
         Component: runtime
          Assignee: systemtap at sourceware dot org
          Reporter: mcermak at redhat dot com

It turns out that the timeout feature introduced to the testsuite by commit
d13c9b7 breaks optim_arridx.exp. This testcase relies on the elaboration phase
output being compared to given reference in stap_run_exact(). Following two
snippets got added to the module source:

=====
error:unknown (msg:string)
%{ /* unprivileged */
    /* This is an assignment of a local char[] to a global char*.
       It would normally be just as unsafe as returning a pointer to
       a local variable from a function.  However, the translated
       code ensures that upon an error (last_error != NULL), the
       context stack is only ever unwound, and not reused, before
       the probe-level stp-error call.  */
    CONTEXT->last_error = STAP_ARG_msg;
    CONTEXT->last_stmt = NULL;
%}
=====

and 

=====
timer.s(3100) /* <- timer.s(3100) */
error("probe timeout after 3100 s")
=====

In general, following testcases rely on stap_run_exact():
systemtap.base/foreach_value.exp
systemtap.base/overcatcher.exp
systemtap.base/tapset_includes.exp
systemtap.base/optim_arridx.exp
systemtap.base/foreach_aggrsort.exp
systemtap.maps/elision.exp
systemtap.printf/printd.exp
systemtap.printf/string2.exp
systemtap.server/client_args.exp

Out of these, only optim_arridx.exp seems to be affected.

So this can either be fixed by updating the module source reference kept in
testcase's result_string, or by forcing stap not to load testsuite's default rc
file. The former doesn't look like a clean/nice solution to me. The latter can
be done either in optim_arridx.exp or in stap_run_exact.exp: Since there is no
switch allowing one to define alternate rc file, an option is to tweak the
SYSTEMTAP_DIR env var. Since tweaking stap_run_exact.exp would only fix
optim_arridx.exp anyway, I'm going to tweak optim_arridx.exp.

-- 
You are receiving this mail because:
You are the assignee for the bug.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]