1#!/bin/bash
2#
3# Check the console output from an rcutorture run for oopses.
4# The "file" is a pathname on the local system, and "title" is
5# a text string for error-message purposes.
6#
7# Usage: parse-console.sh file title
8#
9# This program is free software; you can redistribute it and/or modify
10# it under the terms of the GNU General Public License as published by
11# the Free Software Foundation; either version 2 of the License, or
12# (at your option) any later version.
13#
14# This program is distributed in the hope that it will be useful,
15# but WITHOUT ANY WARRANTY; without even the implied warranty of
16# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17# GNU General Public License for more details.
18#
19# You should have received a copy of the GNU General Public License
20# along with this program; if not, you can access it online at
21# http://www.gnu.org/licenses/gpl-2.0.html.
22#
23# Copyright (C) IBM Corporation, 2011
24#
25# Authors: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
26
27T=/tmp/abat-chk-badness.sh.$$
28trap 'rm -f $T' 0
29
30file="$1"
31title="$2"
32
33. functions.sh
34
35if grep -Pq '\x00' < $file
36then
37	print_warning Console output contains nul bytes, old qemu still running?
38fi
39egrep 'Badness|WARNING:|Warn|BUG|===========|Call Trace:|Oops:|Stall ended before state dump start' < $file | grep -v 'ODEBUG: ' | grep -v 'Warning: unable to open an initial console' > $T
40if test -s $T
41then
42	print_warning Assertion failure in $file $title
43	cat $T
44fi
45