<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/poky.git/meta/lib/oeqa, branch uninative-3.2</title>
<subtitle>Mirror of git.yoctoproject.org/poky</subtitle>
<id>https://git.enea.com/cgit/linux/poky.git/atom?h=uninative-3.2</id>
<link rel='self' href='https://git.enea.com/cgit/linux/poky.git/atom?h=uninative-3.2'/>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/'/>
<updated>2021-05-09T22:30:14+00:00</updated>
<entry>
<title>oeqa/qemurunner: Improve handling of run_serial for shutdown commands</title>
<updated>2021-05-09T22:30:14+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2021-05-09T09:59:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=b681827f5b1359bc9beb990b4586bdec62a7a46e'/>
<id>urn:sha1:b681827f5b1359bc9beb990b4586bdec62a7a46e</id>
<content type='text'>
When running a shutdown command, the serial port can close without the
command returning. This is seen as the socket being readable but having
no data. Change the way this case is handled in the code to avoid
tracebacks.

(From OE-Core rev: 396a3ba884820d040c91f7592daf20ac28c49b5d)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>oeqa/qemurunner: Fix binary vs str issue</title>
<updated>2021-05-09T22:30:14+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2021-05-07T17:12:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=4a3a0e7838f36fd1d5b8b54c69b92fc376938fcc'/>
<id>urn:sha1:4a3a0e7838f36fd1d5b8b54c69b92fc376938fcc</id>
<content type='text'>
The recent logging changes for qemurunner showed up as errors on the
autobuilder where decode couldn't be called on the returned string.
Since the code returns binary data, return b'' instead of '' to match
to avoid tracebacks.

One of these cases was newly added, copied from the other which has
been there for a long time, always broken.

(From OE-Core rev: b8995b27db265b0a0b2d2ca595915f70f9f96e07)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>qemurunner: change warning to info</title>
<updated>2021-05-06T15:55:35+00:00</updated>
<author>
<name>Saul Wold</name>
<email>Saul.Wold@windriver.com</email>
</author>
<published>2021-05-06T15:48:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=3d79025398d0e51e4b943ba1c814a74ad3a64c21'/>
<id>urn:sha1:3d79025398d0e51e4b943ba1c814a74ad3a64c21</id>
<content type='text'>
This information is useful, but should not be a warning level.

[YOCTO #14382]

(From OE-Core rev: cd17d8bb00be1ecb7c92ab13eb8b162807aefed9)

Signed-off-by: Saul Wold &lt;saul.wold@windriver.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>oeqa/qemurunner: Handle path length issues for qmp socket</title>
<updated>2021-05-06T10:16:24+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2021-05-05T18:15:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=1140cca023e58af5e20aed9432e4210afd67f0e1'/>
<id>urn:sha1:1140cca023e58af5e20aed9432e4210afd67f0e1</id>
<content type='text'>
After the addition of the qmp socket, runqemu started failing:

ERROR - Failed to run qemu: qemu-system-aarch64: -qmp unix:/home/yocto/actions-runner-meta-openembedded/_work/meta-openembedded/meta-openembedded/yoe/build/tmp/.3eg5fiid,server,wait:
UNIX socket path '/home/yocto/actions-runner-meta-openembedded/_work/meta-openembedded/meta-openembedded/yoe/build/tmp/.3eg5fiid' is too long
Path must be less than 108 bytes

To avoid this, run qemu within tmpdir and use a relative path to the socket.
This avoids having to patch the socket code within qemu.

Update the client code to chdir and only use a relative path to the socket
to match.

(From OE-Core rev: 5c56e72fca18dc942f5c1fd377e98d46ae0126f1)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>oeqa/qemurunner: Improve logging thread exit handling for qemu shutdown test</title>
<updated>2021-05-06T10:16:23+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2021-05-05T18:15:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=e293a3793573ad19f08663fbfcb8f7d9ee828ba4'/>
<id>urn:sha1:e293a3793573ad19f08663fbfcb8f7d9ee828ba4</id>
<content type='text'>
Rather than totally disabling the logging, inform it we're about to exit
so we can log messages over the exit cleanly too. This aids debugging. It
also avoids a race where the logging handler could still error whilst
shutting down.

Also remove a race window by notificing the handler of the shutdown
first, before triggering it. This removes a race window I watched in
local testing.

(From OE-Core rev: 0e19f31a1005f94105e1cef252abfffcef2aafad)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>classes/lib/scripts: Use bb.utils.rename() instead of os.rename()</title>
<updated>2021-05-06T10:16:23+00:00</updated>
<author>
<name>Devendra Tewari</name>
<email>devendra.tewari@gmail.com</email>
</author>
<published>2021-04-19T14:23:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=b71375304f393db62e0894af66e9a60bb9a5c8cc'/>
<id>urn:sha1:b71375304f393db62e0894af66e9a60bb9a5c8cc</id>
<content type='text'>
Incremental build in Docker fails with:

OSError: [Errno 18] Invalid cross-device link

when source and destination are on different overlay filesystems.

Rather than adding fallback code to every call site, use a new wrapper
in bitbake which detects this case and falls back to shutil.move
which is slower but will handtle the overlay docker filesystems correctly.

[YOCTO #14301]

(From OE-Core rev: 656a65b2b84e7d529b89cf5de7eb838f902d84a2)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>Revert "oeqa: Set LD_LIBRARY_PATH when executing native commands"</title>
<updated>2021-05-06T07:41:26+00:00</updated>
<author>
<name>Alexander Kanavin</name>
<email>alex.kanavin@gmail.com</email>
</author>
<published>2021-05-05T15:18:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=c8e1aeebd854c3517db4a483f729424f10235e40'/>
<id>urn:sha1:c8e1aeebd854c3517db4a483f729424f10235e40</id>
<content type='text'>
LD_LIBRARY_PATH leaks into host executables too, and breaks them
as they are not uninative-enabled. E.g. on ubuntu 18.04 trying
to run host bash with a sysroot that was built on Fedora 33:

akanavin@ubuntu1804-ty-3:/home/pokybuild/yocto-worker/oe-selftest-ubuntu/build/build-st-24341/tmp/work/x86_64-linux/gnupg-native/2.3.1-r0/recipe-sysroot-native$ LD_LIBRARY_PATH=./usr/lib /bin/bash
/bin/bash: ./usr/lib/libtinfo.so.5: no version information available (required by /bin/bash)
/bin/bash: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by ./usr/lib/libtinfo.so.5)

This was seen e.g. here:
https://autobuilder.yoctoproject.org/typhoon/#/builders/87/builds/2090/steps/14/logs/stdio

(From OE-Core rev: 0e9850486b74a3de934527ca1077df001d3a8d22)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>oeqa/selftest: transition to weston images</title>
<updated>2021-04-27T14:11:47+00:00</updated>
<author>
<name>Alexander Kanavin</name>
<email>alex.kanavin@gmail.com</email>
</author>
<published>2021-04-23T18:02:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=06413d33b30b7a058f20f065eb8c095070708fca'/>
<id>urn:sha1:06413d33b30b7a058f20f065eb8c095070708fca</id>
<content type='text'>
For readonly rootfs tests core-image-weston
is appended; everywhere else it replaces core-image-sato.

(From OE-Core rev: 75e042db853b9bf9a70ff8a5abe6d45ebb0b77a9)

Signed-off-by: Alexander Kanavin &lt;alex.kanavin@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>oeqa/core/tests/test_data.py: use weston image instead of sato</title>
<updated>2021-04-27T14:11:47+00:00</updated>
<author>
<name>Alexander Kanavin</name>
<email>alex.kanavin@gmail.com</email>
</author>
<published>2021-04-23T18:02:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=377a73d5b72b7c2c400519d9dc8e4b2fcd1348ac'/>
<id>urn:sha1:377a73d5b72b7c2c400519d9dc8e4b2fcd1348ac</id>
<content type='text'>
(From OE-Core rev: c2ccd8c8144cdda52b858589f7d5d3a15ab28b90)

Signed-off-by: Alexander Kanavin &lt;alex.kanavin@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>qemurunner: Add support for qmp commands</title>
<updated>2021-04-27T14:11:47+00:00</updated>
<author>
<name>Saul Wold</name>
<email>Saul.Wold@windriver.com</email>
</author>
<published>2021-04-26T14:45:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=3acbec85b00d693d2d731bc2b09cc40be1cc68e9'/>
<id>urn:sha1:3acbec85b00d693d2d731bc2b09cc40be1cc68e9</id>
<content type='text'>
This adds support for the Qemu Machine Protocol [0] extending
the current dump process for Host and Target. The commands are
added in the testimage.bbclass.

Currently, we setup qemu to stall until qmp gets connected and
sends the initialization and continue commands, this works
correctly. If the UNIX Socket does not exist, we wait an timeout
to ensure to socket file is created.

With this version, the monitor_dumper is created in OEQemuTarget
but then set in OESSHTarget as that's where we get the SSH failure
happens. Python's @property is used to create a setter/getter type
of setup in OESSHTarget to get overridden by OEQemuTarget.

By default the data is currently dumped to files for each command in
TMPDIR/log/runtime-hostdump/&lt;date&gt;_qmp/unknown_&lt;seq&gt;_qemu_monitor as
this is the naming convenstion in the dump.py code.

We use the qmp.py from qemu, which needs to get installed in the
recipe-sysroot-native of the target image.

[0] https://github.com/qemu/qemu/blob/master/docs/interop/qmp-spec.txt

(From OE-Core rev: 42af4cd2df72fc8ed9deb3fde4312909842fcf91)

Signed-off-by: Saul Wold &lt;saul.wold@windriver.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
</feed>
