meta-agl-profile-graphical: backport weston drm tear-down fix 11/25711/2
authorScott Murray <scott.murray@konsulko.com>
Tue, 1 Dec 2020 00:09:37 +0000 (19:09 -0500)
committerJan-Simon Moeller <jsmoeller@linuxfoundation.org>
Thu, 3 Dec 2020 05:18:53 +0000 (05:18 +0000)
As part of the fixes for compositor start up failures on UpSquared,
backport the fix for cleaning up the DRM backend when start up fails.
This does result in start up working on the UpSquared, but usually
after one or more failures, so a systemd dependency to avoid that will
also be added via another change.  However, this particular fix still
seems worth applying as it may be potentially useful for AGL members
that roll their own customized distributions.

Bug-AGL: SPEC-3518

Signed-off-by: Scott Murray <scott.murray@konsulko.com>
Change-Id: I825e9935706fa09c44cf4a57b33cb910dc0f3aaf
Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/25711
Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org>
ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org>
ci-image-boot-test: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org>
Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
meta-agl-profile-graphical/recipes-graphics/wayland/weston/0005-correctly-tear-down-drm-backend.patch [new file with mode: 0644]
meta-agl-profile-graphical/recipes-graphics/wayland/weston_8.0.%.bbappend

diff --git a/meta-agl-profile-graphical/recipes-graphics/wayland/weston/0005-correctly-tear-down-drm-backend.patch b/meta-agl-profile-graphical/recipes-graphics/wayland/weston/0005-correctly-tear-down-drm-backend.patch
new file mode 100644 (file)
index 0000000..cb12259
--- /dev/null
@@ -0,0 +1,37 @@
+commit 5130a8c21a9deea54e8f7c96a3a5049e2d60a210
+Author: Marius Vlad <marius.vlad@collabora.com>
+Date:   Thu Jul 30 14:47:32 2020 +0300
+
+backend-drm: Correctly tear down the DRM backend
+    
+It seem that we skipped to put back in TEXT mode the tty, in case a DRM
+device node wasn't present at that time, or it isn't present at all. This
+orders the destroy part correctly as to handle that case as well.
+    
+As a side effect, as the tty will still be set to GRAPHICS mode we will
+require a manual change of the tty number, which might be not possible
+on all systems. Properly putting back the tty to TEXT mode should avoid
+that, and allows to re-use the same tty no in case the DRM device has
+been created at a later point in time.
+
+Upstream-Status: Backport    
+Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
+Signed-off-by: Scott Murray <scott.murray@konsulko.com>
+
+diff --git a/libweston/backend-drm/drm.c b/libweston/backend-drm/drm.c
+index 980a12da..1cf61a33 100644
+--- a/libweston/backend-drm/drm.c
++++ b/libweston/backend-drm/drm.c
+@@ -3031,10 +3031,10 @@ err_sprite:
+       destroy_sprites(b);
+ err_udev_dev:
+       udev_device_unref(drm_device);
+-err_launcher:
+-      weston_launcher_destroy(compositor->launcher);
+ err_udev:
+       udev_unref(b->udev);
++err_launcher:
++      weston_launcher_destroy(compositor->launcher);
+ err_compositor:
+       weston_compositor_shutdown(compositor);
+       free(b);
index bada11c..b3504d8 100644 (file)
@@ -9,6 +9,7 @@ SRC_URI_append = "\
     file://0002-ivi-shell-Fix-crash-due-no-transmitter-screen.patch \
     file://0001-libweston-Expose-weston_output_damage-in-libweston.patch \
     file://0004-main-change-remoting-initialization-timing.patch \
+    file://0005-correctly-tear-down-drm-backend.patch \
     file://smack-weston \
     "