public inbox for systemtap@sourceware.org
 help / color / mirror / Atom feed
From: Quentin Barnes <qbarnes@urbana.css.mot.com>
To: David Smith <dsmith@redhat.com>
Cc: systemtap@sources.redhat.com
Subject: Re: ARM port of testsuite and general testsuite fixes
Date: Wed, 06 Jun 2007 17:11:00 -0000	[thread overview]
Message-ID: <20070606171138.GC20115@urbana.css.mot.com> (raw)
In-Reply-To: <4666DA5D.3060403@redhat.com>

On Wed, Jun 06, 2007 at 11:01:33AM -0500, David Smith wrote:
>Quentin Barnes wrote:
>>The ARM version of the test suite of 20070602 just completed.  I'll
>>post the specifics later.  With the earlier patches plus the patch
>>below, here's the summary using a 2.6.21.1 kernel in case anyone's
>>curious:
>>
>>=======
>>                === systemtap Summary ===
>>
>># of expected passes            277
>># of unexpected failures        37
>># of unexpected successes       1
>># of expected failures          129
>># of known failures             7
>># of untested testcases         30
>># of unsupported tests          3
>>=======
>
>Of course it is amazing that you got this working at all, but 37 
>failures is still quite high.

Some of them are due to my kernel configuration.  I run a stripped
down kernel with many things configured off.  I've noticed some
failures were relying on features being enabled.  I've gone back and
turned on some of these, but not all.  Also, I don't know how many
of them are due the tests needing updating to later kernels.

These more detailed summaries I see posted listing specific
failures, are these processed by a script or are they just hand
massaged output from the log by people each time?

Here's the list of my tests failures:
=======
$ egrep '^(FAIL|XPASS)' systemtap.log
FAIL: BASIC2 wasn't cached
FAIL: OPTION2 wasn't cached
FAIL: BULK2 wasn't cached
FAIL: MERGE2 wasn't cached
FAIL: RUNTIME2 wasn't cached
FAIL: BASIC4 wasn't cached
FAIL: systemtap.base/deref.stp startup (eof)
FAIL: systemtap.base/optim.stp shutdown (eof)
FAIL: OVERLOAD2 didn't receive expected overload
FAIL: probefunc:kernel.statement(0xc0035c54).absolute shutdown (eof)
FAIL: prologues -P
FAIL: prologues no-P
FAIL: buildok/eighteen.stp
FAIL: buildok/four.stp
FAIL: buildok/memory.stp
FAIL: buildok/scsi.stp
FAIL: buildok/tcp_test.stp
FAIL: buildok/twenty.stp
FAIL: buildok/twentyfive.stp
FAIL: buildok/twentythree.stp
FAIL: buildok/udp_test.stp
XPASS: semko/thirtytwo.stp
FAIL: semok/twelve.stp
FAIL: semok/twenty.stp
FAIL: systemtap.samples/lket(semantic error)
FAIL: pfaults (0)
FAIL: profile
FAIL: systemtap.samples/tcptest.stp compilation
FAIL: transport fill staging buffer - relayfs (0)
FAIL: systemtap.stress/current.stp compilation
FAIL: 32-bit acct
FAIL: 32-bit forkwait
FAIL: 32-bit mmap
FAIL: 32-bit net1
FAIL: 32-bit openclose
FAIL: 32-bit stat
=======

If someone wants to make a quick pass over this list to flag which
failures definitely are unexpected for my kernel and architecture,
I'll give those priority in analyzing.

I just didn't want to waste a lot of time dealing with already known
problems.

>>Below is the patch necessary to fix all timeout problems when running
>>on an ARM processor and other porting issues related to ARM.
>>
>>I didn't go with a strategy that makes the hardcoded timeout values
>>variable.  Once I fixed various testsuite bugs, the timeout values
>>didn't increase all that much after all.  I felt the difference
>>wasn't enough warrant switching to a new scheme for.  If people feel
>>otherwise, we should discuss it further.
>
>Hmm.  Looking over the timeout value changes/additions, I see several 
>different values:
>
>20 (1 instance)
>60 (1 instance)
>120 (4 instances)
>150 (17 instances)
>180 (3 instances)
>240 (4 instances)
>360 (1 instance)
>400 (1 instance)
>1800 (1 instance)

There's also a couple of "-1"s in there.  I put these in when the
expect statement had no timeout clause, but they all have timeouts.
Someone might want to review and tweak these if there is ever a
chance that those could get stuck and need an explicit timeout.

>It seems like we ought to standardize a bit and have 4 (or some other 
>number) standard timeout values (that we could customize per platform if 
>needed).  I think you (or someone else) suggested this earlier.

I tried to make them on some rounded boundaries that I knew would
work based on the timing data from the run but not too large.  I
generally went for rounded up multiples of 30.

>(Note that I don't have a problem with you checking your patch in as is 
>and then we can go back later and improve things.)
>
>>There are various bug fixes scattered throughout the patch.  Please
>>review them carefully, but most should be self-explanatory.
>
>One question I have is that you changed several instances of "." to "\." 
>in regular expressions.  Out of curiosity did you actually see a problem 
>here or were you just cleaning up?

Nope, just cleanup.  If I was studying a line related to a failure I
was analyzing and I saw an unescaped meta character that should have
been escaped, I escaped it.  Then, I would grep for similar lines
in the rest of the scripts figuring on yank-and-put propagation of
the mistake and fix those too.  The change from if to switch that
I mentioned was just for robustness, but the other pattern changes
involving ".*" to "[^\r]*" and the rewrite in system_func.exp were
actual bug related.

>-- 
>David Smith
>dsmith@redhat.com
>Red Hat
>http://www.redhat.com
>256.217.0141 (direct)
>256.837.0057 (fax)

Quentin

  reply	other threads:[~2007-06-06 17:11 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-06-06  0:36 Quentin Barnes
2007-06-06 16:02 ` David Smith
2007-06-06 17:11   ` Quentin Barnes [this message]
2007-06-06 18:22     ` David Smith
2007-06-06 18:39       ` Martin Hunt
2007-06-06 19:25       ` Quentin Barnes
2007-06-06 19:51         ` David Smith
2007-06-06 20:00           ` Quentin Barnes
2007-06-06 20:07             ` David Smith
2007-06-06 20:39               ` Quentin Barnes
2007-06-06 21:01                 ` David Smith
2007-06-06 21:35                   ` Quentin Barnes
2007-06-06 21:51                     ` David Smith
2007-06-06 23:10                       ` Roland McGrath
2007-06-06 23:44                         ` Quentin Barnes
2007-06-07  1:05                           ` Roland McGrath
2007-06-08 16:27 ` Quentin Barnes

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20070606171138.GC20115@urbana.css.mot.com \
    --to=qbarnes@urbana.css.mot.com \
    --cc=dsmith@redhat.com \
    --cc=systemtap@sources.redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).