[meta-arago,dunfell] weston-init: fix killproc for thinlinux so that it doesn't kill itself

Message ID 20220502213524.23063-1-detheridge@ti.com
State Accepted
Delegated to: Ryan Eatmon
Headers show
Series [meta-arago,dunfell] weston-init: fix killproc for thinlinux so that it doesn't kill itself | expand

Commit Message

Etheridge, Darren May 2, 2022, 9:35 p.m. UTC
busybox pidof doesn't omit the current pid
as this script is called weston on the target
in thinlinux with a busybox based utility load
later killproc operations end up killing this
script, which leads to the script not actually
starting weston.

Signed-off-by: Darren Etheridge <detheridge@ti.com>
---
 .../recipes-graphics/wayland/weston-init/init   | 17 +++++++++++++++--
 1 file changed, 15 insertions(+), 2 deletions(-)

Patch

diff --git a/meta-arago-distro/recipes-graphics/wayland/weston-init/init b/meta-arago-distro/recipes-graphics/wayland/weston-init/init
index 461b0787..1f55ab76 100644
--- a/meta-arago-distro/recipes-graphics/wayland/weston-init/init
+++ b/meta-arago-distro/recipes-graphics/wayland/weston-init/init
@@ -9,8 +9,21 @@ 
 ### END INIT INFO
 
 killproc() {
-        pid=`/bin/pidof $1`
-        [ "$pid" != "" ] && kill $pid
+	all_pids=`/bin/pidof $1`
+
+	# busybox pidof doesn't ommit the current pid
+	# as this script is called weston on the target
+	# in thinlinux with a busybox based utility load
+	# later killproc operations end up killing this
+	# script.
+	for pid in $all_pids
+	do
+		if [ "$pid" != "$$" ]; then
+			kill_pids+=$pid
+		fi
+	done
+
+	[ "$kill_pids" != "" ] && kill $kill_pids
 }
 
 read CMDLINE < /proc/cmdline