qemuimagetest: collect and print runqemu output

If runqemu (or qemu itself) fails we need to know why, so tee out to a
log file and print it when we can't find the qemu process or determine
its IP address.

(From OE-Core rev: 827106a57ca88760a19f9309d859b500c5c4fe97)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Paul Eggleton 2013-03-26 12:43:05 +00:00 committed by Richard Purdie
parent b45d63e2ec
commit 720492dd14
2 changed files with 9 additions and 2 deletions

View File

@ -74,6 +74,7 @@ def qemuimagetest_main(d):
os.environ["TARGET_IPSAVE"] = d.getVar("TARGET_IPSAVE", True)
os.environ["TEST_SERIALIZE"] = d.getVar("TEST_SERIALIZE", True)
os.environ["SDK_NAME"] = d.getVar("SDK_NAME", True)
os.environ["RUNQEMU_LOGFILE"] = d.expand("${T}/log.runqemutest.%s" % os.getpid())
# Add in all variables from the user's original environment which
# haven't subsequntly been set/changed

View File

@ -408,8 +408,8 @@ Test_Create_Qemu()
export MACHINE=$QEMUARCH
# Create Qemu in localhost VNC Port 1
echo "Running xterm -display ${DISPLAY} -e 'OE_TMPDIR=${OE_TMPDIR} ${RUNQEMU} ${KERNEL} ${TEST_ROOTFS_IMAGE} || /bin/sleep 60' &"
xterm -display ${DISPLAY} -e "OE_TMPDIR=${OE_TMPDIR} ${RUNQEMU} ${KERNEL} ${TEST_ROOTFS_IMAGE} || /bin/sleep 60" &
echo "Running xterm -display ${DISPLAY} -e 'OE_TMPDIR=${OE_TMPDIR} ${RUNQEMU} ${KERNEL} ${TEST_ROOTFS_IMAGE} | tee ${RUNQEMU_LOGFILE} || /bin/sleep 60' &"
xterm -display ${DISPLAY} -e "OE_TMPDIR=${OE_TMPDIR} ${RUNQEMU} ${KERNEL} ${TEST_ROOTFS_IMAGE} | tee ${RUNQEMU_LOGFILE} || /bin/sleep 60" &
# Get the pid of the xterm processor, which will be used in Test_Kill_Qemu
XTERMPID=$!
@ -436,6 +436,9 @@ Test_Create_Qemu()
Test_Info "No qemu process appeared to start, exiting"
ps axww -O ppid
Test_Info "Process list dumped for debugging purposes"
Test_Info "runqemu output log:"
cat ${RUNQEMU_LOGFILE}
echo
return 1
fi
@ -446,6 +449,9 @@ Test_Create_Qemu()
Test_Info "There is no qemu process or qemu ip address found, return failed"
ps -wwf
ps axww -O ppid
Test_Info "runqemu output log:"
cat ${RUNQEMU_LOGFILE}
echo
return 1
fi