From: Scott Murray Date: Tue, 1 Dec 2020 00:09:37 +0000 (-0500) Subject: meta-agl-profile-graphical: backport weston drm tear-down fix X-Git-Tag: 10.91.0~25 X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=commitdiff_plain;h=4dc1ce1252b8ef430777519b80221c144331e6e9;p=AGL%2Fmeta-agl.git meta-agl-profile-graphical: backport weston drm tear-down fix 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 Change-Id: I9a0bcea279c0da80ff3c25bd0e6ab3f137cb6ef1 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/25674 Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account Reviewed-by: Jan-Simon Moeller --- 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 index 000000000..cb122590b --- /dev/null +++ b/meta-agl-profile-graphical/recipes-graphics/wayland/weston/0005-correctly-tear-down-drm-backend.patch @@ -0,0 +1,37 @@ +commit 5130a8c21a9deea54e8f7c96a3a5049e2d60a210 +Author: Marius Vlad +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 +Signed-off-by: Scott Murray + +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); diff --git a/meta-agl-profile-graphical/recipes-graphics/wayland/weston_8.0.%.bbappend b/meta-agl-profile-graphical/recipes-graphics/wayland/weston_8.0.%.bbappend index 99fe64bd1..d681aa133 100644 --- a/meta-agl-profile-graphical/recipes-graphics/wayland/weston_8.0.%.bbappend +++ b/meta-agl-profile-graphical/recipes-graphics/wayland/weston_8.0.%.bbappend @@ -4,6 +4,7 @@ SRC_URI_append = "\ file://0001-Allow-regular-users-to-launch-Weston_7.0.0.patch \ file://0001-libweston-Expose-weston_output_damage-in-libweston.patch \ file://0001-libweston-Migrate-weston_seat_init-release-to-public.patch \ + file://0005-correctly-tear-down-drm-backend.patch \ file://smack-weston \ "