Bug 733182 - sdt.exp: too few lines of output, got 10, expected 11
Summary: sdt.exp: too few lines of output, got 10, expected 11
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: systemtap
Version: 6.2
Hardware: Unspecified
OS: Unspecified
unspecified
medium
Target Milestone: rc
: ---
Assignee: Stan Cox
QA Contact: qe-baseos-tools
URL:
Whiteboard:
Depends On:
Blocks: 748554
TreeView+ depends on / blocked
 
Reported: 2011-08-25 03:29 UTC by Han Pingtian
Modified: 2011-12-06 15:18 UTC (History)
6 users (show)

Fixed In Version: systemtap-1.6-4.el6
Doc Type: Bug Fix
Doc Text:
Cause Some systemtap testsuite sdt.exp ran tests with STAP_SDT_V2, an older, obsolete mechanism. Applications should be built with the newer STAP_SDT_V3 interface; there is little reason in include these in the test results. Consequence On some architectures such as the ppc the tests using the STAP_SDT_V2 interface would fail because of ambiguities between numeric constants and register numbers. Fix The sdt.exp now mark the STAP_SDT_V2 that fail as XFAIL. Result The sdt.exp tests using STAP_SDT_V2 that fail are no longer included in the FAIL results.
Clone Of:
Environment:
Last Closed: 2011-12-06 15:18:36 UTC


Attachments (Terms of Use)


Links
System ID Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2011:1517 normal SHIPPED_LIVE systemtap bug fix and enhancement update 2011-12-06 00:50:46 UTC

Description Han Pingtian 2011-08-25 03:29:19 UTC
Description of problem:
The release is rhel6.2 0822.5 tree with kernel 2.6.32-192.el6. systemtap version 1.6-2.el6. sdt.exp fails at those points:

FAIL: sdt c89  V2_kprobe
FAIL: sdt c89 -pedantic V2_kprobe
FAIL: sdt c99  V2_kprobe
FAIL: sdt c99 -pedantic V2_kprobe
FAIL: sdt gnu99  V2_kprobe
FAIL: sdt gnu99 -pedantic V2_kprobe

From system.log, we can see those messages:
Executing on host: gcc /usr/share/systemtap/testsuite/systemtap.base/sdt.c  -g -isystem/usr/share/systemtap/testsuite -isystem/usr/include -Wall -Wextra -Werror -DEXPERIMENTAL_KPROBE_SDT -std=c89 -pedantic  -lm   -o sdt.c.exe.2    (timeout = 300)
spawn -ignore SIGHUP gcc /usr/share/systemtap/testsuite/systemtap.base/sdt.c -g -isystem/usr/share/systemtap/testsuite -isystem/usr/include -Wall -Wextra -Werror -DEXPERIMENTAL_KPROBE_SDT -std=c89 -pedantic -lm -o sdt.c.exe.2^M
PASS: compiling sdt.c c89 -pedantic V2_kprobe
executing: stap -w /usr/share/systemtap/testsuite/systemtap.base/sdt.stp sdt.c.exe.2 -c ./sdt.c.exe.2
FAIL: sdt c89 -pedantic V2_kprobe
too few lines of output, got 10, expected 11
Executing on host: gcc /usr/share/systemtap/testsuite/systemtap.base/sdt.c  -g -isystem/usr/share/systemtap/testsuite -isystem/usr/include -Wall -Wextra -Werror -DEXPERIMENTAL_KPROBE_SDT -std=c99  -lm   -o sdt.c.exe.3    (timeout = 300)
spawn -ignore SIGHUP gcc /usr/share/systemtap/testsuite/systemtap.base/sdt.c -g -isystem/usr/share/systemtap/testsuite -isystem/usr/include -Wall -Wextra -Werror -DEXPERIMENTAL_KPROBE_SDT -std=c99 -lm -o sdt.c.exe.3^M
PASS: compiling sdt.c c99  V2_kprobe
executing: stap -w /usr/share/systemtap/testsuite/systemtap.base/sdt.stp sdt.c.exe.3 -c ./sdt.c.exe.3
FAIL: sdt c99  V2_kprobe
too few lines of output, got 10, expected 11
Executing on host: gcc /usr/share/systemtap/testsuite/systemtap.base/sdt.c  -g -isystem/usr/share/systemtap/testsuite -isystem/usr/include -Wall -Wextra -Werror -DEXPERIMENTAL_KPROBE_SDT -std=c99 -pedantic  -lm   -o sdt.c.exe.3    (timeout = 300)
spawn -ignore SIGHUP gcc /usr/share/systemtap/testsuite/systemtap.base/sdt.c -g -isystem/usr/share/systemtap/testsuite -isystem/usr/include -Wall -Wextra -Werror -DEXPERIMENTAL_KPROBE_SDT -std=c99 -pedantic -lm -o sdt.c.exe.3^M
PASS: compiling sdt.c c99 -pedantic V2_kprobe
executing: stap -w /usr/share/systemtap/testsuite/systemtap.base/sdt.stp sdt.c.exe.3 -c ./sdt.c.exe.3
FAIL: sdt c99 -pedantic V2_kprobe
too few lines of output, got 10, expected 11
Executing on host: gcc /usr/share/systemtap/testsuite/systemtap.base/sdt.c  -g -isystem/usr/share/systemtap/testsuite -isystem/usr/include -Wall -Wextra -Werror -DEXPERIMENTAL_KPROBE_SDT -std=gnu99  -lm   -o sdt.c.exe.4    (timeout = 300)
spawn -ignore SIGHUP gcc /usr/share/systemtap/testsuite/systemtap.base/sdt.c -g -isystem/usr/share/systemtap/testsuite -isystem/usr/include -Wall -Wextra -Werror -DEXPERIMENTAL_KPROBE_SDT -std=gnu99 -lm -o sdt.c.exe.4^M
PASS: compiling sdt.c gnu99  V2_kprobe
executing: stap -w /usr/share/systemtap/testsuite/systemtap.base/sdt.stp sdt.c.exe.4 -c ./sdt.c.exe.4
FAIL: sdt gnu99  V2_kprobe
too few lines of output, got 10, expected 11
Executing on host: gcc /usr/share/systemtap/testsuite/systemtap.base/sdt.c  -g -isystem/usr/share/systemtap/testsuite -isystem/usr/include -Wall -Wextra -Werror -DEXPERIMENTAL_KPROBE_SDT -std=gnu99 -pedantic  -lm   -o sdt.c.exe.4    (timeout = 300)
spawn -ignore SIGHUP gcc /usr/share/systemtap/testsuite/systemtap.base/sdt.c -g -isystem/usr/share/systemtap/testsuite -isystem/usr/include -Wall -Wextra -Werror -DEXPERIMENTAL_KPROBE_SDT -std=gnu99 -pedantic -lm -o sdt.c.exe.4^M
...

All failed with 'too few lines of output, got 10, expected 11'.

The stap command without '-w' will show a warning message:

[root@ibm-z10-03 testsuite]# gcc /usr/share/systemtap/testsuite/systemtap.base/sdt.c -g -isystem/usr/share/systemtap/testsuite -isystem/usr/include -Wall -Wextra -Werror -DEXPERIMENTAL_KPROBE_SDT -std=gnu99 -pedantic -lm -o sdt.c.exe.4
[root@ibm-z10-03 testsuite]# stap /usr/share/systemtap/testsuite/systemtap.base/sdt.stp sdt.c.exe.4 -c ./sdt.c.exe.4
_
1
1 2
1 2 3
1 2 3 4
1 2 3 4 5
1 2 3 4 5 6
1 2 3 4 5 6 7
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8 9
WARNING: Number of errors: 0, skipped probes: 121

Version-Release number of selected component (if applicable):
systemtap 1.6-2.el6
kernel 2.6.32-192.el6

How reproducible:
always


Steps to Reproduce:
1. install rhel6.2 beta on s390x system
2. cd /usr/share/systemtap/testsuite;make installcheck RUNTESTFLAGS="--debug sdt.exp"
3.
  
Actual results:


Expected results:


Additional info:

Comment 2 Stan Cox 2011-08-25 19:42:35 UTC
These are all related to -DEXPERIMENTAL_KPROBE_SDT; which is not the documented way to use static user probes but was an alternative implementation strategy we experimented with.  This could be used on a system where uprobes isn't available; having said that, perhaps there is no longer a reason to keep this implementation around.

Comment 3 Stan Cox 2011-09-07 21:59:49 UTC
The upstream patch '1fbbc4d3b4' XFAILS these failures.

Comment 4 Frank Ch. Eigler 2011-09-27 14:34:40 UTC
Just as for bug #733181, we can backport the testsuite-xfail patch if desired.  The underlying problem with the obsolete sdt.h version is not practical to correct however, so CANTFIX that part.  Opinions about whether the xfail path is worth doing?

Comment 5 Han Pingtian 2011-09-28 03:01:49 UTC
(In reply to comment #4)
> Just as for bug #733181, we can backport the testsuite-xfail patch if desired. 
> The underlying problem with the obsolete sdt.h version is not practical to
> correct however, so CANTFIX that part.  Opinions about whether the xfail path
> is worth doing?

Yes, xfail will save us to check the error's reason. Thanks.

Comment 11 William Cohen 2011-11-14 17:37:26 UTC
    Technical note added. If any revisions are required, please edit the "Technical Notes" field
    accordingly. All revisions will be proofread by the Engineering Content Services team.
    
    New Contents:
Cause
    Some systemtap testsuite sdt.exp ran tests with -DEXPERIMENTAL_KPROBE_SDT,
    an older, obsolete mechanism. No existing applications should be built
    with this obsolete mechanism and there is little reason in include
    these in the test results.
Consequence
    On some architectures the tests using the
    -DEXPERIMENTAL_KPROBE_SDT would fail.
Fix
    The sdt.exp now mark the problematic -DEXPERIMENTAL_KPROBE_SDT
    that fail as XFAIL.
Result
    The sdt.exp tests using -DEXPERIMENTAL_KPROBE_SDT that fail are no
    longer included in the FAIL results.

Comment 12 William Cohen 2011-11-14 17:45:37 UTC
    Technical note updated. If any revisions are required, please edit the "Technical Notes" field
    accordingly. All revisions will be proofread by the Engineering Content Services team.
    
    Diffed Contents:
@@ -1,14 +1,14 @@
 Cause
-    Some systemtap testsuite sdt.exp ran tests with -DEXPERIMENTAL_KPROBE_SDT,
-    an older, obsolete mechanism. No existing applications should be built
-    with this obsolete mechanism and there is little reason in include
+    Some systemtap testsuite sdt.exp ran tests with STAP_SDT_V2,
+    an older, obsolete mechanism. Applications should be built
+    with the newer STAP_SDT_V3 interface; there is little reason in include
     these in the test results.
 Consequence
-    On some architectures the tests using the
-    -DEXPERIMENTAL_KPROBE_SDT would fail.
+    On some architectures such as the ppc the tests using the
+    STAP_SDT_V2 interface would fail because of ambiguities between
+    numeric constants and register numbers.
 Fix
-    The sdt.exp now mark the problematic -DEXPERIMENTAL_KPROBE_SDT
-    that fail as XFAIL.
+    The sdt.exp now mark the STAP_SDT_V2 that fail as XFAIL.
 Result
-    The sdt.exp tests using -DEXPERIMENTAL_KPROBE_SDT that fail are no
+    The sdt.exp tests using STAP_SDT_V2 that fail are no
     longer included in the FAIL results.

Comment 13 errata-xmlrpc 2011-12-06 15:18:36 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHBA-2011-1517.html


Note You need to log in before you can comment on or make changes to this bug.