From: Ronan Le Martret Date: Fri, 7 Jul 2017 16:32:53 +0000 (+0200) Subject: Fix weston failed X-Git-Tag: dab_3.99.3~17 X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=commitdiff_plain;h=refs%2Fchanges%2F09%2F10209%2F2;hp=dbaf564ef03621b4bbb641bb7b60d4f315c2e0e6;p=AGL%2Fmeta-agl.git Fix weston failed * We need to add systemd udev device unit dependency to weston, If the system is slow udev rules is up when weston want to start, if the system is fast, udev rules may be down when weston want to start. * TAG+="systemd" create a systemd device unit * ENV{SYSTEMD_WANTS}="weston.service" add dependency (Like BindsTo). Bug-AGL: SPEC-603 Change-Id: I45d6513ea64cd071a60b53afd98d782e9300cefa Signed-off-by: Ronan Le Martret Reviewed-on: https://gerrit.automotivelinux.org/gerrit/10209 Reviewed-by: Stéphane Desneux Tested-by: Jenkins Job builder account ci-image-build: Jenkins Job builder account Reviewed-by: Jan-Simon Moeller --- diff --git a/meta-agl/recipes-graphics/wayland/weston-init.bbappend b/meta-agl/recipes-graphics/wayland/weston-init.bbappend index 552cd8480..01984a13c 100644 --- a/meta-agl/recipes-graphics/wayland/weston-init.bbappend +++ b/meta-agl/recipes-graphics/wayland/weston-init.bbappend @@ -28,23 +28,23 @@ do_install_append() { install -d ${D}${sysconfdir}/init.d install -d ${D}${sysconfdir}/udev/rules.d cat >${D}${sysconfdir}/udev/rules.d/zz-dri.rules <<'EOF' -SUBSYSTEM=="drm", MODE="0660", GROUP="${WESTONGROUP}", SECLABEL{smack}="*" +SUBSYSTEM=="drm", MODE="0660", GROUP="${WESTONGROUP}", SECLABEL{smack}="*", TAG+="systemd", ENV{SYSTEMD_WANTS}="weston.service" EOF # user 'display' must own /dev/tty${WESTONTTY} for weston to start correctly cat >${D}${sysconfdir}/udev/rules.d/zz-tty.rules <<'EOF' -SUBSYSTEM=="tty", KERNEL=="tty${WESTONTTY}", OWNER="${WESTONUSER}", SECLABEL{smack}="^" +SUBSYSTEM=="tty", KERNEL=="tty${WESTONTTY}", OWNER="${WESTONUSER}", SECLABEL{smack}="^", TAG+="systemd", ENV{SYSTEMD_WANTS}="weston.service" EOF # user 'display' must also be able to access /dev/input/* cat >${D}${sysconfdir}/udev/rules.d/zz-input.rules <<'EOF' -SUBSYSTEM=="input", MODE="0660", GROUP="input", SECLABEL{smack}="^" +SUBSYSTEM=="input", MODE="0660", GROUP="input", SECLABEL{smack}="^", TAG+="systemd", ENV{SYSTEMD_WANTS}="weston.service" EOF # user 'display' must also be able to access /dev/media*, etc. cat >${D}${sysconfdir}/udev/rules.d/zz-remote-display.rules <<'EOF' -SUBSYSTEM=="media", MODE="0660", GROUP="display", SECLABEL{smack}="*" -SUBSYSTEM=="video4linux", MODE="0660", GROUP="display", SECLABEL{smack}="*" +SUBSYSTEM=="media", MODE="0660", GROUP="display", SECLABEL{smack}="*", TAG+="systemd", ENV{SYSTEMD_WANTS}="weston.service" +SUBSYSTEM=="video4linux", MODE="0660", GROUP="display", SECLABEL{smack}="*", TAG+="systemd", ENV{SYSTEMD_WANTS}="weston.service" KERNEL=="uvcs", SUBSYSTEM=="misc", MODE="0660", GROUP="display", SECLABEL{smack}="*" KERNEL=="rgnmm", SUBSYSTEM=="misc", MODE="0660", GROUP="display", SECLABEL{smack}="*" EOF