Patchwork [16/16] scripts/qemu-testlib: Add more debugging information

login
register
mail settings
Submitter Richard Purdie
Date March 21, 2013, 3:55 p.m.
Message ID <1363881315-24352-16-git-send-email-richard.purdie@linuxfoundation.org>
Download mbox | patch
Permalink /patch/46643/
State Accepted
Commit 6211a2bdd32f7b2c8de7a5d75353c0522c8d4230
Headers show

Comments

Richard Purdie - March 21, 2013, 3:55 p.m.
This extra information should allow better forensics if the sanity tests
fail as they're currently doing occasionaly on the autobuilder for unknown
reasons.

The patch also tightens up certain checks to remove pointless noise and
error output from the logs.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
---
 scripts/qemuimage-testlib |   31 +++++++++++++++++++++----------
 1 file changed, 21 insertions(+), 10 deletions(-)

Patch

diff --git a/scripts/qemuimage-testlib b/scripts/qemuimage-testlib
index 11768d0..551011c 100755
--- a/scripts/qemuimage-testlib
+++ b/scripts/qemuimage-testlib
@@ -69,7 +69,7 @@  Test_Update_IPSAVE()
 	local pid=$1
 	local ip_addr=$2
 
-	if [ "$TEST_SERIALIZE" -eq 1 ]; then
+	if [ "$TEST_SERIALIZE" -eq 1 -a "$pid" != "0" -a "$pid" != "" -a "$ip_addr" != "" -a "$ip_addr" != "" ]; then
 		echo "Saving $pid $ip_addr to $TARGET_IPSAVE"
 		echo "$pid $ip_addr" > $TARGET_IPSAVE
 	fi
@@ -234,15 +234,19 @@  Test_Kill_Qemu()
 	fi
 
 	if [ $k -eq 1 ]; then
-		running=`ps -wwfp $QEMUPID`
-		if [ $? -eq 0 ]; then
-			echo "killing $QEMUPID"
-			kill $QEMUPID
+		if [ "$QEMUPID" != "0" -a "$QEMUPID" != "" ]; then
+			running=`ps -wwfp $QEMUPID`
+			if [ $? -eq 0 ]; then
+				echo "killing $QEMUPID"
+				kill $QEMUPID
+			fi
 		fi
-		running=`ps -wwfp $XTERMPID`
-		if [ $? -eq 0 ]; then
-			echo "killing $XTERMPID"
-			kill $XTERMPID
+		if [ "$XTERMPID" != "0" -a "$XTERMPID" != "" ]; then
+			running=`ps -wwfp $XTERMPID`
+			if [ $? -eq 0 ]; then
+				echo "killing $XTERMPID"
+				kill $XTERMPID
+			fi
 		fi
 	fi
 
@@ -336,6 +340,11 @@  Test_Fetch_Target_IP()
 	local opid=$1
 	local ip_addr=0
 
+	if [ "$opid" = "0" -o "$opid" = "" ]; then
+		echo ""
+		return
+	fi
+
 	# Check if $1 pid exists and contains ipaddr of target
 	ip_addr=`ps -wwfp $opid | grep -o "192\.168\.7\.[0-9]*::" | awk -F":" '{print $1}'`
 
@@ -433,8 +442,10 @@  Test_Create_Qemu()
 	# Parse IP address of target from the qemu command line
 	TARGET_IPADDR=`Test_Fetch_Target_IP $QEMUPID`
 	echo "Target IP is ${TARGET_IPADDR}"
-	if [ -z ${TARGET_IPADDR} -o "${TARGET_IPADDR}" = "0" ]; then
+	if [ ${TARGET_IPADDR} = "" -o "${TARGET_IPADDR}" = "0" ]; then
 		Test_Info "There is no qemu process or qemu ip address found, return failed"
+		ps -wwf
+		ps axww -O ppid
 		return 1
 	fi