libsdl2 currently does not handle the failures that
occur due to shared memory in case of remote hosts
where it should ideally switch to socket based writing
when a failure is seen with shared memory.
Consider a scenario where a qemu build is done with
graphics support on a build machine and then accessed
remotely using ssh. If the remote host's X presents
MIT-SHM as an extension, launching qemu fails with

runqemu - ERROR - Failed to run qemu: X Error: BadValue
Request Major code 130 (MIT-SHM)
Request Minor code 3 ()

This is most often seen when the remote machine doing
ssh is a Ubuntu 20.04. The libsdl2 native are mainly
used for qemu at this time so it is a major usecase.
A report of such a failure was also presented at
https://lists.yoctoproject.org/g/poky/topic/78854857

Signed-off-by: Awais Belal <awais_be...@mentor.com>
---
 meta/recipes-graphics/libsdl2/libsdl2_2.0.14.bb | 1 +
 1 file changed, 1 insertion(+)

diff --git a/meta/recipes-graphics/libsdl2/libsdl2_2.0.14.bb 
b/meta/recipes-graphics/libsdl2/libsdl2_2.0.14.bb
index 872592fdae..54556abb27 100644
--- a/meta/recipes-graphics/libsdl2/libsdl2_2.0.14.bb
+++ b/meta/recipes-graphics/libsdl2/libsdl2_2.0.14.bb
@@ -65,6 +65,7 @@ PACKAGECONFIG[wayland]    = 
"--enable-video-wayland,--disable-video-wayland,wayl
 PACKAGECONFIG[x11]        = 
"--enable-video-x11,--disable-video-x11,virtual/libx11 libxext libxrandr 
libxrender"
 
 EXTRA_AUTORECONF += "--include=acinclude --exclude=autoheader"
+CFLAGS_append_class-native = " -DNO_SHARED_MEMORY"
 
 do_configure_prepend() {
         # Remove old libtool macros.
-- 
2.17.1

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#149602): 
https://lists.openembedded.org/g/openembedded-core/message/149602
Mute This Topic: https://lists.openembedded.org/mt/81403642/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to