diff --git a/platform/broadcom/sonic-platform-modules-cel/services/fancontrol/fancontrol b/platform/broadcom/sonic-platform-modules-cel/services/fancontrol/fancontrol index da32acedd2f..e625ce9a921 100755 --- a/platform/broadcom/sonic-platform-modules-cel/services/fancontrol/fancontrol +++ b/platform/broadcom/sonic-platform-modules-cel/services/fancontrol/fancontrol @@ -348,8 +348,12 @@ CheckFiles || exit 1 if [ -f "$PIDFILE" ] then - echo "File $PIDFILE exists, is fancontrol already running?" >&2 - exit 1 + # Test if process is really running, if not, no need to exit + if ps -p $(echo $PIDFILE) > /dev/null + then + echo "File $PIDFILE exists, is fancontrol already running?" >&2 + exit 1 + fi fi echo $$ > "$PIDFILE"