public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: josh@joshtriplett.org
To: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
Cc: linux-kernel@vger.kernel.org, mingo@kernel.org,
	laijs@cn.fujitsu.com, dipankar@in.ibm.com,
	akpm@linux-foundation.org, mathieu.desnoyers@efficios.com,
	niv@us.ibm.com, tglx@linutronix.de, peterz@infradead.org,
	rostedt@goodmis.org, dhowells@redhat.com, edumazet@google.com,
	darren@dvhart.com, fweisbec@gmail.com, oleg@redhat.com,
	sbw@mit.edu
Subject: Re: [PATCH tip/core/rcu 21/45] torture: Report diagnostics from qemu
Date: Wed, 7 May 2014 14:59:11 -0700	[thread overview]
Message-ID: <20140507215911.GM27924@cloud> (raw)
In-Reply-To: <1398731133-18925-21-git-send-email-paulmck@linux.vnet.ibm.com>

On Mon, Apr 28, 2014 at 05:25:09PM -0700, Paul E. McKenney wrote:
> From: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
> 
> The current script does record qemu diagnostics, but the user has to
> know where to look for them.  This commit therefore puts them into the
> Warnings file so that kvm-recheck.sh will display them.  This change is
> especially useful if you are in the habit of killing the qemu process
> when you realize that you messed something up, but then later on wonder
> why the process terminated early.
> 
> Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>

A couple of issues below.

> @@ -172,6 +172,14 @@ do
>  		if test $kruntime -lt $seconds
>  		then
>  			echo Completed in $kruntime vs. $seconds >> $resdir/Warnings 2>&1
> +			grep "^(qemu) qemu:" $resdir/kvm-test-1-run.sh.out >> $resdir/Warnings 2>&1
> +			killpid="`grep "^(qemu) qemu: terminating on signal [0-9]* from pid" $resdir/kvm-test-1-run.sh.out`"

You already searched for lines like this and put them in Warnings in the
previous line, so you don't need to search the entire output.  Also, you
use grep here and sed below; you could just use sed here to directly
obtain the PID:

killpid="$(sed -n "s/^(qemu) qemu: terminating on signal [0-9]* from pid \([0-9]*\).*$/\1/p" $resdir/Warnings)"

> +			if test -n "$killpid"
> +			then
> +				pscmd="`echo $killpid | sed -e 's/^.*from pid/ps -ef | grep/'`"
> +				echo $pscmd >> $resdir/Warnings
> +				echo $pscmd | sh >> $resdir/Warnings 2>&1
> +			fi

Grepping for a PID is a bad idea; it'll turn up anything that contains
that PID anywhere on the line, including as a substring.  Given the
above change to obtain a numeric $killpid, you can instead pass the PID
to ps directly:
			if test -n "$killpid"
			then
				ps -fp $killpid >> $resdir/Warnings 2>&1
			fi


  reply	other threads:[~2014-05-07 21:59 UTC|newest]

Thread overview: 106+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-04-29  0:24 [PATCH tip/core/rcu 0/44] Torture-test changes for 3.16 Paul E. McKenney
2014-04-29  0:24 ` [PATCH tip/core/rcu 01/45] rcutorture: Add forward-progress checking for writer Paul E. McKenney
2014-04-29  0:24   ` [PATCH tip/core/rcu 02/45] torture: Remove obsolete builddir options Paul E. McKenney
2014-04-29  0:24   ` [PATCH tip/core/rcu 03/45] torture: Add batch headers "--dryrun sched" Paul E. McKenney
2014-04-29  0:24   ` [PATCH tip/core/rcu 04/45] torture: Make parse-rcutorture.sh less RCU-specific Paul E. McKenney
2014-04-29  0:24   ` [PATCH tip/core/rcu 05/45] torture: Rename RCU_INITRD to TORTURE_INITRD Paul E. McKenney
2014-04-29  0:24   ` [PATCH tip/core/rcu 06/45] torture: Intensify locking test Paul E. McKenney
2014-05-07 21:20     ` josh
2014-05-07 23:56       ` Paul E. McKenney
2014-04-29  0:24   ` [PATCH tip/core/rcu 07/45] torture: Allow variations of "defconfig" to be specified Paul E. McKenney
2014-05-07 21:22     ` josh
2014-05-07 23:52       ` Paul E. McKenney
2014-05-08  1:54         ` Josh Triplett
2014-05-08  2:43           ` Paul E. McKenney
2014-05-08  7:47             ` Josh Triplett
2014-04-29  0:24   ` [PATCH tip/core/rcu 08/45] torture: Rename RCU_KMAKE_ARG to TORTURE_KMAKE_ARG Paul E. McKenney
2014-05-07 21:23     ` josh
2014-05-13 19:00       ` Paul E. McKenney
2014-04-29  0:24   ` [PATCH tip/core/rcu 09/45] torture: Rename RCU_BOOTARGS to TORTURE_BOOTARGS Paul E. McKenney
2014-04-29  0:24   ` [PATCH tip/core/rcu 10/45] torture: Rename RCU_BUILDONLY to TORTURE_BUILDONLY Paul E. McKenney
2014-05-07 21:24     ` josh
2014-05-13 19:01       ` Paul E. McKenney
2014-04-29  0:24   ` [PATCH tip/core/rcu 11/45] torture: Rename RCU_QEMU_INTERACTIVE to TORTURE_QEMU_INTERACTIVE Paul E. McKenney
2014-05-07 21:26     ` josh
2014-05-07 23:59       ` Paul E. McKenney
2014-05-07 21:27     ` josh
2014-05-07 23:57       ` Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 12/45] torture: Rename RCU_QEMU_MAC to TORTURE_QEMU_MAC Paul E. McKenney
2014-05-07 21:27     ` josh
2014-05-07 23:59       ` Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 13/45] torture: Rename RCU_QEMU_ARG to TORTURE_QEMU_ARG Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 14/45] torture: Rename RCU_QEMU_CMD to TORTURE_QEMU_CMD Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 15/45] torture: Make config-fragment filtering RCU-independent Paul E. McKenney
2014-05-07 21:29     ` josh
2014-05-08  0:01       ` Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 16/45] rcutorture: Mark function as static in kernel/rcu/torture.c Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 17/45] torture: Make "--dryrun script" output self-sufficient Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 18/45] torture: Make "--dryrun script" use same environment as normal run Paul E. McKenney
2014-05-07 21:33     ` josh
2014-05-08  0:07       ` Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 19/45] rcutorture: Print negatives for SRCU counter wraparound Paul E. McKenney
2014-05-07 21:34     ` josh
2014-05-08  0:08       ` Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 20/45] torture: Include "Stopping" string to torture_kthread_stopping() Paul E. McKenney
2014-05-07 21:37     ` josh
2014-05-10  0:13       ` Paul E. McKenney
2014-05-10  0:16         ` Josh Triplett
2014-05-10  0:42           ` Paul E. McKenney
2014-05-10  3:46             ` Josh Triplett
2014-05-13 19:05               ` Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 21/45] torture: Report diagnostics from qemu Paul E. McKenney
2014-05-07 21:59     ` josh [this message]
2014-05-13 23:03       ` Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 22/45] torture: Increase stutter-end intensity Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 23/45] torture: Permit multi-word qemu and boot arguments Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 24/45] torture: Choose bzImage location based on architecture Paul E. McKenney
2014-05-07 22:02     ` josh
2014-05-10  0:31       ` Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 25/45] torture: Add tracing-enabled variant of TREE02 Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 26/45] torture: Dump ftrace buffer when the RCU grace period stalls Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 27/45] rcutorture: Export RCU grace-period kthread wait state to rcutorture Paul E. McKenney
2014-05-07 22:05     ` josh
2014-05-10  0:37       ` Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 28/45] percpu: Fix raw_cpu_inc_return() Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 29/45] sched,rcu: Make cond_resched() report RCU quiescent states Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 30/45] rcutorture: Make rcu_torture_reader() use cond_resched() Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 31/45] torture: Notice if an all-zero cpumask is passed inside a critical section Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 32/45] torture: Better summary diagnostics for build failures Paul E. McKenney
2014-05-07 22:11     ` josh
2014-05-10  0:48       ` Paul E. McKenney
2014-05-10 19:34         ` Josh Triplett
2014-05-13 19:25           ` Paul E. McKenney
2014-05-13 20:21             ` josh
2014-05-13 20:33               ` Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 33/45] rcutorture: Check for rcu_torture_fqs creation errors Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 34/45] torture: Use elapsed time to detect hangs Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 35/45] rcutorture: Test RCU-sched primitives in TREE_PREEMPT_RCU kernels Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 36/45] rcutorture: Add tests for get_state_synchronize_rcu() Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 37/45] rcutorture: Explicitly test synchronous grace-period primitives Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 38/45] rcutorture: Add missing destroy_timer_on_stack() Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 39/45] rcutorture: Note diffs from git commits Paul E. McKenney
2014-05-07 22:17     ` josh
2014-05-10  0:51       ` Paul E. McKenney
2014-05-10  5:19         ` Josh Triplett
2014-05-13 23:17           ` Paul E. McKenney
2014-05-13 23:39             ` Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 40/45] rcutorture: Run rcu_torture_writer at normal priority Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 41/45] torture: Put qemu into the background Paul E. McKenney
2014-05-07 22:18     ` josh
2014-05-13 17:44       ` Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 42/45] locktorture: Remove reference to nonexistent Kconfig parameter Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 43/45] torture: Check for multiple concurrent torture tests Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 44/45] torture: Remove __init from torture_init_begin/end Paul E. McKenney
2014-04-29  0:25   ` [PATCH tip/core/rcu 45/45] torture: Remove unused definition Paul E. McKenney
2014-05-07 21:16   ` [PATCH tip/core/rcu 01/45] rcutorture: Add forward-progress checking for writer josh
2014-05-07 23:43     ` Paul E. McKenney
2014-05-09 15:52       ` Josh Triplett
2014-05-09 17:36         ` Paul E. McKenney
2014-05-09 19:32           ` Josh Triplett
2014-05-09 22:30             ` Paul E. McKenney
2014-05-09 22:40               ` Josh Triplett
2014-05-09 22:55                 ` Paul E. McKenney
2014-05-10  0:14                   ` Josh Triplett
2014-05-10  0:31                     ` Paul E. McKenney
2014-05-13 18:27                     ` Paul E. McKenney
2014-05-07 22:32 ` [PATCH tip/core/rcu 0/44] Torture-test changes for 3.16 Josh Triplett

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=20140507215911.GM27924@cloud \
    --to=josh@joshtriplett.org \
    --cc=akpm@linux-foundation.org \
    --cc=darren@dvhart.com \
    --cc=dhowells@redhat.com \
    --cc=dipankar@in.ibm.com \
    --cc=edumazet@google.com \
    --cc=fweisbec@gmail.com \
    --cc=laijs@cn.fujitsu.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mathieu.desnoyers@efficios.com \
    --cc=mingo@kernel.org \
    --cc=niv@us.ibm.com \
    --cc=oleg@redhat.com \
    --cc=paulmck@linux.vnet.ibm.com \
    --cc=peterz@infradead.org \
    --cc=rostedt@goodmis.org \
    --cc=sbw@mit.edu \
    --cc=tglx@linutronix.de \
    /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