From c2d92a156eab1f21217532ee4d66251f8ac25368 Mon Sep 17 00:00:00 2001 From: hunt Date: Wed, 12 Dec 2007 16:16:50 +0000 Subject: [PATCH] 2007-12-12 Martin Hunt Detect crashing stap and report as a test failure. * lib/systemtap.exp (stap_run_batch): Return -1 if stap crashed. * systemtap.pass1-4/buildko.exp: If stap_run_batch returned -1 then mark test as failed. * systemtap.pass1-4/parseko.exp: Ditto. * systemtap.pass1-4/semko.exp: Ditto. * systemtap.pass1-4/transko.exp: Ditto. --- testsuite/ChangeLog | 10 ++++++++++ testsuite/lib/systemtap.exp | 10 ++++++---- testsuite/systemtap.pass1-4/buildko.exp | 9 +++++++-- testsuite/systemtap.pass1-4/parseko.exp | 9 +++++++-- testsuite/systemtap.pass1-4/semko.exp | 9 +++++++-- testsuite/systemtap.pass1-4/transko.exp | 9 +++++++-- 6 files changed, 44 insertions(+), 12 deletions(-) diff --git a/testsuite/ChangeLog b/testsuite/ChangeLog index e8fa907fe..b60527ee2 100644 --- a/testsuite/ChangeLog +++ b/testsuite/ChangeLog @@ -1,3 +1,13 @@ +2007-12-12 Martin Hunt + Detect crashing stap and report as a test failure. + * lib/systemtap.exp (stap_run_batch): Return -1 if stap + crashed. + * systemtap.pass1-4/buildko.exp: If stap_run_batch returned + -1 then mark test as failed. + * systemtap.pass1-4/parseko.exp: Ditto. + * systemtap.pass1-4/semko.exp: Ditto. + * systemtap.pass1-4/transko.exp: Ditto. + 2007-12-05 Masami Hiramatsu PR 4935 diff --git a/testsuite/lib/systemtap.exp b/testsuite/lib/systemtap.exp index 5b08c2338..7fb1e3172 100644 --- a/testsuite/lib/systemtap.exp +++ b/testsuite/lib/systemtap.exp @@ -104,8 +104,10 @@ proc stap_run_batch {args} { } set results [wait] verbose -log "wait results: $results" - # Crashed? - if {[llength $results] >= 5} {return 1} - # Not? - return [lindex $results 3] + if {[llength $results] >= 5} { + # Unexpected output. stap must have crashed + return -1 + } else { + return [lindex $results 3] + } } diff --git a/testsuite/systemtap.pass1-4/buildko.exp b/testsuite/systemtap.pass1-4/buildko.exp index d82a18c34..a5560511d 100644 --- a/testsuite/systemtap.pass1-4/buildko.exp +++ b/testsuite/systemtap.pass1-4/buildko.exp @@ -3,6 +3,11 @@ foreach file [lsort [glob -nocomplain $srcdir/$self/*.stp]] { set test $self/[file tail $file] verbose -log "Running $file" set rc [stap_run_batch $file] - setup_xfail *-*-* - if {$rc == 0} { pass $test } else { fail $test } + if {$rc < 0} { + # crashed + fail $test + } else { + setup_xfail *-*-* + if {$rc == 0} { pass $test } else { fail $test } + } } diff --git a/testsuite/systemtap.pass1-4/parseko.exp b/testsuite/systemtap.pass1-4/parseko.exp index e383a12e0..658a29577 100644 --- a/testsuite/systemtap.pass1-4/parseko.exp +++ b/testsuite/systemtap.pass1-4/parseko.exp @@ -3,6 +3,11 @@ foreach file [lsort [glob -nocomplain $srcdir/$self/*.stp]] { set test $self/[file tail $file] verbose -log "Running $file" set rc [stap_run_batch $file] - setup_xfail *-*-* - if {$rc == 0} { pass $test } else { fail $test } + if {$rc < 0} { + # crashed + fail $test + } else { + setup_xfail *-*-* + if {$rc == 0} { pass $test } else { fail $test } + } } diff --git a/testsuite/systemtap.pass1-4/semko.exp b/testsuite/systemtap.pass1-4/semko.exp index aa53f3245..dc9e261da 100644 --- a/testsuite/systemtap.pass1-4/semko.exp +++ b/testsuite/systemtap.pass1-4/semko.exp @@ -3,6 +3,11 @@ foreach file [lsort [glob -nocomplain $srcdir/$self/*.stp]] { set test $self/[file tail $file] verbose -log "Running $file" set rc [stap_run_batch $file] - setup_xfail *-*-* - if {$rc == 0} { pass $test } else { fail $test } + if {$rc < 0} { + # crashed + fail $test + } else { + setup_xfail *-*-* + if {$rc == 0} { pass $test } else { fail $test } + } } diff --git a/testsuite/systemtap.pass1-4/transko.exp b/testsuite/systemtap.pass1-4/transko.exp index e4b9b1383..abda0286f 100644 --- a/testsuite/systemtap.pass1-4/transko.exp +++ b/testsuite/systemtap.pass1-4/transko.exp @@ -3,6 +3,11 @@ foreach file [lsort [glob -nocomplain $srcdir/$self/*.stp]] { set test $self/[file tail $file] verbose -log "Running $file" set rc [stap_run_batch $file] - setup_xfail *-*-* - if {$rc == 0} { pass $test } else { fail $test } + if {$rc < 0} { + # crashed + fail $test + } else { + setup_xfail *-*-* + if {$rc == 0} { pass $test } else { fail $test } + } } -- 2.43.5