[oe-commits] [openembedded-core] 02/05: weston-init: Launch weston with WESTON_DISABLE_ATOMIC on musl/x86

git at git.openembedded.org git at git.openembedded.org
Thu Mar 12 23:11:27 UTC 2020


This is an automated email from the git hooks/post-receive script.

rpurdie pushed a commit to branch master-next
in repository openembedded-core.

commit e571ef707d76cf3aceb0d56fd588b37f9b5092ff
Author: Khem Raj <raj.khem at gmail.com>
AuthorDate: Thu Mar 12 16:02:38 2020 -0700

    weston-init: Launch weston with WESTON_DISABLE_ATOMIC on musl/x86
    
    Since we enabled drm/kms backend for qemux86, it does not work with musl
    fdbdev worked ok, we see this error
    
    [18:58:45.628] launching '/usr/libexec/weston-desktop-shell'
    [18:58:45.737] atomic: couldn't commit new state: Invalid argument
    [18:58:45.737] repaint-flush failed: Invalid argument
    
    There seems to be some problem with atomics in libdrm, until that gets
    diagnosed, simple solution is to not use it on musl when drm backend is used
    thats why WESTON_DISABLE_ATOMIC=Y is set in environment file for such
    cases
    
    Signed-off-by: Khem Raj <raj.khem at gmail.com>
    Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
 meta/recipes-graphics/wayland/weston-init.bb         | 14 ++++++++++++--
 meta/recipes-graphics/wayland/weston-init/weston.env |  0
 2 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/meta/recipes-graphics/wayland/weston-init.bb b/meta/recipes-graphics/wayland/weston-init.bb
index e3e739e..40aa762 100644
--- a/meta/recipes-graphics/wayland/weston-init.bb
+++ b/meta/recipes-graphics/wayland/weston-init.bb
@@ -5,6 +5,7 @@ LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384
 PACKAGE_ARCH = "${MACHINE_ARCH}"
 
 SRC_URI = "file://init \
+           file://weston.env \
            file://weston.ini \
            file://weston@.service \
            file://71-weston-drm.rules \
@@ -15,6 +16,7 @@ S = "${WORKDIR}"
 do_install() {
 	install -Dm755 ${WORKDIR}/init ${D}/${sysconfdir}/init.d/weston
 	install -D -p -m0644 ${WORKDIR}/weston.ini ${D}${sysconfdir}/xdg/weston/weston.ini
+	install -Dm644 ${WORKDIR}/weston.env ${D}${sysconfdir}/default/weston
 
 	# Install Weston systemd service and accompanying udev rule
 	install -D -p -m0644 ${WORKDIR}/weston at .service ${D}${systemd_system_unitdir}/weston at .service
@@ -30,6 +32,14 @@ do_install() {
 	sed -i 's, at LOCALSTATEDIR@,${localstatedir},g' ${D}${bindir}/weston-start
 }
 
+do_install_append_libc-musl_qemux86() {
+        echo "WESTON_DISABLE_ATOMIC=Y" >> ${D}${sysconfdir}/default/weston
+}
+
+do_install_append_libc-musl_qemux86-64() {
+        echo "WESTON_DISABLE_ATOMIC=Y" >> ${D}${sysconfdir}/default/weston
+}
+
 inherit update-rc.d features_check systemd
 
 # rdepends on weston which depends on virtual/egl
@@ -40,9 +50,9 @@ RDEPENDS_${PN} = "weston kbd"
 INITSCRIPT_NAME = "weston"
 INITSCRIPT_PARAMS = "start 9 5 2 . stop 20 0 1 6 ."
 
-FILES_${PN} += "${sysconfdir}/xdg/weston/weston.ini ${systemd_system_unitdir}/weston at .service"
+FILES_${PN} += "${sysconfdir}/xdg/weston/weston.ini ${systemd_system_unitdir}/weston at .service ${sysconfdir}/default/weston"
 
-CONFFILES_${PN} += "${sysconfdir}/xdg/weston/weston.ini"
+CONFFILES_${PN} += "${sysconfdir}/xdg/weston/weston.ini ${sysconfdir}/default/weston"
 
 SYSTEMD_SERVICE_${PN} = "weston@%i.service"
 SYSTEMD_AUTO_ENABLE = "disable"
diff --git a/meta/recipes-graphics/wayland/weston-init/weston.env b/meta/recipes-graphics/wayland/weston-init/weston.env
new file mode 100644
index 0000000..e69de29

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Openembedded-commits mailing list