]> code.ossystems Code Review - openembedded-core.git/commitdiff
Revert "weston: Use systemd notify,"
authorMarek Vasut <marex@denx.de>
Wed, 19 Jan 2022 23:17:55 +0000 (00:17 +0100)
committerSteve Sakoman <steve@sakoman.com>
Thu, 20 Jan 2022 00:25:16 +0000 (14:25 -1000)
Commit 4efdcc1090 ("weston: Use systemd notify,") has non-trivial to
backport dependencies without which it cannot work, revert backport.

In oe-core dunfell, weston is still started using /usr/bin/weston-start
script in meta/recipes-graphics/wayland/weston-init/weston@.service .
Since 76ed534267 ("weston-init: Use weston-launch when starting weston
as the first windowing system"), the weston-start script starts weston
using weston-launch executable in case $DISPLAY is not set, i.e. when
weston is started as the primary compositor.

When weston is started via weston-launch, the notification to systemd
is not delivered, and weston service fails to start with the following:
"
weston@root.service: start operation timed out. Terminating.
"

The weston systemd service has been reworked considerably since oe-core
dunfell in commit c21fa5a291 ("weston-init: Redefine weston service and
add socket activation option"), which replaced the use of weston-start
in weston@.service with plain weston, and has been further improved in
commit dd83fb40f7 ("weston-init: Stop running weston as root") . The
commit reverted here, oe-core/master commit c8aa0222ce ("weston: wrapper
for weston modules argument"), landed only with the two aforementioned
reworks already in place, therefore the commit could have never been
tested with weston started via weston-launch executable and the timeout
at delivering systemd notification could not have happened in master.

Both c21fa5a291 ("weston-init: Redefine weston service and add socket
activation option") and dd83fb40f7 ("weston-init: Stop running weston
as root") are large feature patches and thus unsuitable for stable
backports, hence this revert seems to be the least problematic way.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Alexandre Belloni <alexandre.belloni@bootlin.com>
Cc: Joshua Watt <JPEWhacker@gmail.com>
Cc: Pavel Zhukov <pavel.zhukov@huawei.com>
Cc: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
meta/recipes-graphics/wayland/weston-init/weston-start
meta/recipes-graphics/wayland/weston-init/weston@.service
meta/recipes-graphics/wayland/weston/systemd-notify.weston-start [deleted file]
meta/recipes-graphics/wayland/weston/xwayland.weston-start
meta/recipes-graphics/wayland/weston_8.0.0.bb

index 97471df80d2828ee48c6c42a2c11a7fbdedce45f..ccc70934259c1c6a83805f4fd2ce165c50e326c9 100755 (executable)
@@ -23,15 +23,6 @@ add_openvt_argument() {
        openvt_args="$openvt_args $1"
 }
 
-## Add module to --modules argument
-add_weston_module() {
-       if [ -z "${weston_modules}" ]; then
-               weston_modules="--modules "
-       fi;
-       weston_modules="${weston_modules}${1},"
-}
-
-
 if [ -n "$WAYLAND_DISPLAY" ]; then
        echo "ERROR: A Wayland compositor is already running, nested Weston instance is not supported yet."
        exit 1
@@ -74,9 +65,6 @@ if [ -d "$modules_dir" ]; then
                # process module
                . $m
        done
-       if [ -n "${weston_modules}" ]; then
-               add_weston_argument "${weston_modules} "
-       fi;
 fi
 
 if test -z "$XDG_RUNTIME_DIR"; then
index 70c706d75ceaaf6416e8715b091b6c41abd01cca..39e193014ab2e99d014bab20fd648de5fc7694f3 100644 (file)
@@ -1,7 +1,3 @@
-# SPDX-FileCopyrightText: Huawei Inc.
-#
-# SPDX-License-Identifier: Apache-2.0
-
 [Unit]
 Description=Weston Wayland Compositor
 RequiresMountsFor=/run
@@ -9,8 +5,6 @@ Conflicts=plymouth-quit.service
 After=systemd-user-sessions.service plymouth-quit-wait.service
 
 [Service]
-Type=notify
-NotifyAccess=all
 User=%i
 PAMName=login
 EnvironmentFile=-/etc/default/weston
diff --git a/meta/recipes-graphics/wayland/weston/systemd-notify.weston-start b/meta/recipes-graphics/wayland/weston/systemd-notify.weston-start
deleted file mode 100644 (file)
index fdb48cb..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/bin/sh
-
-# SPDX-FileCopyrightText: Huawei Inc.
-# SPDX-License-Identifier: Apache-2.0
-
-
-if [[ -x "/usr/lib/weston/systemd-notify.so" ]]; then
-       add_weston_module "systemd-notify.so"
-fi
index 22984f50a43db02c1a86f88a7b45351acbbc4f40..b483c97cf1ba871e88f063e2d66f7ccb930f2aee 100644 (file)
@@ -2,5 +2,6 @@
 
 if type Xwayland  >/dev/null 2>/dev/null; then
        mkdir -p /tmp/.X11-unix
-       add_weston_module "xwayland.so"
+
+       add_weston_argument "--modules=xwayland.so"
 fi
index e647fbc68698867d45a82eb0de46c676d59f5ae3..5e4e2032c95749cdc85efd940ad70ae992125d1f 100644 (file)
@@ -5,11 +5,9 @@ LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://COPYING;md5=d79ee9e66bb0f95d3386a7acae780b70 \
                     file://libweston/compositor.c;endline=27;md5=6c53bbbd99273f4f7c4affa855c33c0a"
 
-
 SRC_URI = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \
            file://weston.png \
            file://weston.desktop \
-           file://systemd-notify.weston-start \
            file://xwayland.weston-start \
            file://0001-weston-launch-Provide-a-default-version-that-doesn-t.patch \
            file://0002-desktop-shell-Remove-no-op-de-activation-of-the-xdg-.patch \
@@ -106,10 +104,6 @@ do_install_append() {
                install -Dm 644 ${WORKDIR}/xwayland.weston-start ${D}${datadir}/weston-start/xwayland
        fi
 
-       if [ "${@bb.utils.contains('PACKAGECONFIG', 'systemd', 'yes', 'no', d)}" = "yes" ]; then
-               install -Dm 644 ${WORKDIR}/systemd-notify.weston-start ${D}${datadir}/weston-start/systemd-notify
-       fi
-
        if [ "${@bb.utils.contains('PACKAGECONFIG', 'launch', 'yes', 'no', d)}" = "yes" ]; then
                chmod u+s ${D}${bindir}/weston-launch
        fi