tcf-agent: Use kill instead of killproc to stop agent

When shutting down a core-image-lsb-sdk image, there is a lot of time spend stopping tcf-agent,
which slows down the whole process. The reason for this slowdown is the fact that it tries in a
loop to kill tcf-agent service by using killproc with the path of the executable and killproc
does not seem to available in lsb images. This patch fixes the issue by using "kill" instead of
"killproc".

[Yocto #3928]

(From OE-Core rev: 251361eb78176a04e3da00e0f77b7f3ff459d571)

Signed-off-by: Ioana Grigoropol <ioanax.grigoropol@intel.com>
Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Ioana Grigoropol
2013-04-08 15:54:06 +03:00
committed by Richard Purdie
parent 02ae9b3576
commit 9dccc97bfc
2 changed files with 5 additions and 3 deletions

View File

@@ -13,7 +13,7 @@ Upstream-Status: Inappropriate [poky-specific script]
install -c -t $(INSTALLROOT)$(INCLUDE)/tcf/services -m 644 services/*.h
--- /dev/null
+++ b/tcf-agent.init
@@ -0,0 +1,78 @@
@@ -0,0 +1,80 @@
+#!/bin/sh
+### BEGIN INIT INFO
+# Provides: tcf-agent
@@ -50,14 +50,16 @@ Upstream-Status: Inappropriate [poky-specific script]
+ stop)
+ echo -n "Stopping $DAEMON_NAME: "
+ count=0
+ pid=$(/bin/pidof $DAEMON_PATH)
+ while [ -n "`/bin/pidof $DAEMON_PATH`" -a $count -lt 10 ] ; do
+ killproc $DAEMON_PATH >& /dev/null
+ kill $pid > /dev/null 2>&1
+ sleep 1
+ RETVAL=$?
+ if [ $RETVAL != 0 -o -n "`/bin/pidof $DAEMON_PATH`" ] ; then
+ sleep 3
+ fi
+ count=`expr $count + 1`
+ pid=$(/bin/pidof $DAEMON_PATH)
+ done
+ rm -f /var/lock/subsys/$DAEMON_NAME
+ if [ -n "`/bin/pidof $DAEMON_PATH`" ] ; then

View File

@@ -7,7 +7,7 @@ LIC_FILES_CHKSUM = "file://edl-v10.html;md5=522a390a83dc186513f0500543ad3679"
SRCREV = "4ef94ecb927a8912c3d79ce137182247786cff8f"
PV = "0.4.0+git${SRCPV}"
PR = "r0"
PR = "r1"
SRC_URI = "git://git.eclipse.org/gitroot/tcf/org.eclipse.tcf.agent.git;protocol=git \
file://fix_ranlib.patch \