mirror of
https://git.yoctoproject.org/poky
synced 2026-02-12 11:43:04 +01:00
oeqa/utils/qemurunner: Set both the threadport&serverport with tcpserial parameter
After the commit ad522ea6a6 ("runqemu: Let qemuparams override default
settings"), the order of the two "-serial" parameters when running the
qemu have been switched. The effect of this is that the logging thread
will use ttyS1 (of course can't capture the kernel boot message anymore),
and the test command will run on the ttyS0. So the output of the test
command may be mangled by the kernel message (such as call trace), and
let the test command produce a fake timeout error message. We can't fix
it by just adjusting the order of the threadport and serverport, since
it will break some machines such as qemuarm64 which use the virtio
serial. So using the tcpserial to setup both the threadport and
serverport.
[YOCTO Bug 13309]
(From OE-Core rev: 1ffea0c0fb3688f3cee0a5fa741e969581d01bd3)
Signed-off-by: Kevin Hao <kexin.hao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
22b3ff061a
commit
cd00120aea
@@ -155,11 +155,11 @@ class QemuRunner:
|
||||
# and analyze descendents in order to determine it.
|
||||
if os.path.exists(self.qemu_pidfile):
|
||||
os.remove(self.qemu_pidfile)
|
||||
self.qemuparams = 'bootparams="{0}" qemuparams="-serial tcp:127.0.0.1:{1} -pidfile {2}"'.format(bootparams, threadport, self.qemu_pidfile)
|
||||
self.qemuparams = 'bootparams="{0}" qemuparams="-pidfile {1}"'.format(bootparams, self.qemu_pidfile)
|
||||
if qemuparams:
|
||||
self.qemuparams = self.qemuparams[:-1] + " " + qemuparams + " " + '\"'
|
||||
|
||||
launch_cmd += ' tcpserial=%s %s' % (self.serverport, self.qemuparams)
|
||||
launch_cmd += ' tcpserial=%s:%s %s' % (threadport, self.serverport, self.qemuparams)
|
||||
|
||||
self.origchldhandler = signal.getsignal(signal.SIGCHLD)
|
||||
signal.signal(signal.SIGCHLD, self.handleSIGCHLD)
|
||||
|
||||
Reference in New Issue
Block a user