]> TLD Linux GIT Repositories - packages/lvm2.git/blobdiff - lvm2-tld_init.patch
- updated to 2.02.181
[packages/lvm2.git] / lvm2-tld_init.patch
index 6c6c82d05fd3ddc8464c7cb1041d8a8d55c9981a..66326de7e71a892ab57bfe0aa6c75f0f7d8e5f2a 100644 (file)
-diff -dur LVM2.2.02.107.orig/scripts/blk_availability_init_red_hat.in LVM2.2.02.107/scripts/blk_availability_init_red_hat.in
---- LVM2.2.02.107.orig/scripts/blk_availability_init_red_hat.in        2014-06-23 14:07:38.000000000 +0000
-+++ LVM2.2.02.107/scripts/blk_availability_init_red_hat.in     2014-07-25 16:24:42.989000000 +0000
+diff -urp LVM2.2.02.177.orig/scripts/blk_availability_init_red_hat.in LVM2.2.02.177/scripts/blk_availability_init_red_hat.in
+--- LVM2.2.02.177.orig/scripts/blk_availability_init_red_hat.in        2017-12-18 20:44:35.000000000 +0000
++++ LVM2.2.02.177/scripts/blk_availability_init_red_hat.in     2018-01-29 11:24:46.012906501 +0000
 @@ -1,4 +1,4 @@
 -#!/bin/bash
 +#!/bin/sh
  #
- # Copyright (C) 2012 Red Hat, Inc. All rights reserved.
+ # Copyright (C) 2012-2017 Red Hat, Inc. All rights reserved.
  #
-@@ -43,16 +43,20 @@
+@@ -31,26 +31,29 @@
+ . /etc/init.d/functions
+-script=blkdeactivate
++DAEMON="blkdeactivate"
++OPTIONS="-u -l wholevg -m disablequeueing"
+-sbindir=@SBINDIR@
+-options="-u -l wholevg -m disablequeueing -r wait"
+-
+-LOCK_FILE="@DEFAULT_LOCK_DIR@/subsys/blk-availability"
++LOCK_FILE="/var/lock/subsys/blk-availability"
  case "$1" in
    start)
-       touch $LOCK_FILE
+       touch "$LOCK_FILE"
 +      exit 0
        ;;
  
    stop)
--      action "Stopping block device availability:" $sbindir/$script $options
-+      run_cmd "Stopping block device availability:" $sbindir/$script $options
-       rm -f $LOCK_FILE
+-      action "Stopping block device availability:" "$sbindir/$script" $options
++      run_cmd "Stopping block device availability:" "/sbin/$DAEMON" $OPTIONS
+       rm -f "$LOCK_FILE"
 +      exit 0
        ;;
  
    status)
 +      exit 0
        ;;
++
    *)
 -      echo $"Usage: $0 {start|stop|status}"
 +      msg_usage "$0 {start|stop|status}"
 +      exit 3
        ;;
  esac
-diff -dur LVM2.2.02.107.orig/scripts/blk_availability_systemd_red_hat.service.in LVM2.2.02.107/scripts/blk_availability_systemd_red_hat.service.in
---- LVM2.2.02.107.orig/scripts/blk_availability_systemd_red_hat.service.in     2014-06-23 14:07:38.000000000 +0000
-+++ LVM2.2.02.107/scripts/blk_availability_systemd_red_hat.service.in  2014-07-25 16:24:42.992000000 +0000
-@@ -6,7 +6,7 @@
- [Service]
- Type=oneshot
--ExecStart=/usr/bin/true
-+ExecStart=/bin/true
- ExecStop=@sbindir@/blkdeactivate -u -l wholevg
- RemainAfterExit=yes
-diff -dur LVM2.2.02.107.orig/scripts/clvmd_init_red_hat.in LVM2.2.02.107/scripts/clvmd_init_red_hat.in
---- LVM2.2.02.107.orig/scripts/clvmd_init_red_hat.in   2014-06-23 14:07:38.000000000 +0000
-+++ LVM2.2.02.107/scripts/clvmd_init_red_hat.in        2014-07-25 16:24:42.989000000 +0000
-@@ -66,9 +66,8 @@
+diff -urp LVM2.2.02.177.orig/scripts/clvmd_init_red_hat.in LVM2.2.02.177/scripts/clvmd_init_red_hat.in
+--- LVM2.2.02.177.orig/scripts/clvmd_init_red_hat.in   2017-12-18 20:44:35.000000000 +0000
++++ LVM2.2.02.177/scripts/clvmd_init_red_hat.in        2018-01-29 12:54:59.156583852 +0000
+@@ -4,7 +4,7 @@
+ #
+ # chkconfig: - 24 76
+ # description: Cluster daemon for userland logical volume management tools.
+-# pidfile: @CLVMD_PIDFILE@
++# pidfile: /var/run/clvmd.pid
+ #
+ # For Red-Hat-based distributions such as Fedora, RHEL, CentOS.
+ #
+@@ -18,15 +18,12 @@
+ . /etc/rc.d/init.d/functions
+-DAEMON=clvmd
++DAEMON="clvmd"
+-sbindir="@SBINDIR@"
+-usrsbindir="@USRSBINDIR@"
+-
+-lvm_vgchange="$sbindir/vgchange"
+-lvm_vgs="$sbindir/vgs"
+-lvm_vgscan="$sbindir/vgscan"
+-lvm_lvs="$sbindir/lvs"
++lvm_vgchange="/sbin/vgchange"
++lvm_vgs="/sbin/vgs"
++lvm_vgscan="/sbin/vgscan"
++lvm_lvs="/sbin/lvs"
+ CLVMDOPTS="-T30"
+@@ -50,20 +47,11 @@ clustered_active_lvs() {
+       "$lvm_lvs" --noheadings -o lv_name -S 'vg_clustered=1 && lv_active!=""' 2>/dev/null
+ }
+-rh_status() {
+-      status "$DAEMON"
+-}
+-
+-rh_status_q() {
+-      rh_status >/dev/null 2>&1
+-}
+-
  start()
  {
-       if ! rh_status_q; then
+-      if ! rh_status_q; then
 -              echo -n "Starting $DAEMON: "
-+              msg_starting "$DAEMON"
-               $DAEMON $CLVMDOPTS || return $?
+-              "$usrsbindir/$DAEMON" $CLVMDOPTS || return $?
 -              echo
++      if ! status $DAEMON 1>/dev/null 2>&1; then
++              msg_starting "$DAEMON"
++              "$DAEMON" $CLVMDOPTS || return $?
        fi
  
        # Refresh local cache.
-@@ -88,7 +87,7 @@
+@@ -82,74 +70,60 @@ start()
+       # unnecessary warnings.
  
-       ${lvm_vgscan} > /dev/null 2>&1
--      action "Activating VG(s):" ${lvm_vgchange} -aay $LVM_VGS || return $?
+       "$lvm_vgscan" > /dev/null 2>&1
+-
+-      action "Activating VG(s):" "$lvm_vgchange" -aay $LVM_VGS || return $?
+-
 +      run_cmd "Activating VG(s):" ${lvm_vgchange} -aay $LVM_VGS || return $?
+       touch "$LOCK_FILE"
+-
+       return 0
+ }
  
-       touch $LOCK_FILE
-@@ -113,27 +112,23 @@
+ wait_for_finish()
+ {
+       count=0
+-      while [ "$count" -le "$CLVMD_STOP_TIMEOUT" ] && \
+-               rh_status_q ]; do
++      while [ "$count" -le "$CLVMD_STOP_TIMEOUT" ] && status $DAEMON 1>/dev/null 2>&1 ; do
+               sleep 1
+               count=$((count+1))
+       done
+-
+-      ! rh_status_q
++      ! status $DAEMON 1>/dev/null 2>&1
+ }
  
+ stop()
+ {
+-      rh_status_q || return 0
+-
++      status $DAEMON 1>/dev/null 2>&1 || return 0
        [ -z "$LVM_VGS" ] && LVM_VGS="$(clustered_vgs)"
        if [ -n "$LVM_VGS" ]; then
--              action "Deactivating clustered VG(s):" ${lvm_vgchange} -anl $LVM_VGS || return $?
+-              action "Deactivating clustered VG(s):" "$lvm_vgchange" -anl $LVM_VGS || return $?
 +              run_cmd "Deactivating clustered VG(s):" ${lvm_vgchange} -anl $LVM_VGS || return $?
        fi
--      action "Signaling $DAEMON to exit" kill -TERM $(pidofproc $DAEMON) || return $?
-+      run_cmd "Signaling $DAEMON to exit" kill -TERM $(pidofproc $DAEMON) || return $?
+-
+-      action "Signaling $DAEMON to exit" kill -TERM "$(pidofproc "$DAEMON")" || return $?
++      run_cmd "Signaling $DAEMON to exit" kill -TERM $(pidofproc "$DAEMON") || return $?
  
        # wait half second before we start the waiting loop or we will show
        # the loop more time than really necessary
@@ -82,12 +148,13 @@ diff -dur LVM2.2.02.107.orig/scripts/clvmd_init_red_hat.in LVM2.2.02.107/scripts
  
        # clvmd could take some time to stop
 -      rh_status_q && action "Waiting for $DAEMON to exit:" wait_for_finish
-+      rh_status_q && run_cmd "Waiting for $DAEMON to exit:" wait_for_finish
-       if rh_status_q; then
+-
+-      if rh_status_q; then
 -              echo -n "$DAEMON failed to exit"
 -              failure
 -              echo
++      status $DAEMON 1>/dev/null 2>&1 && run_cmd "Waiting for $DAEMON to exit:" wait_for_finish
++      if status $DAEMON 1>/dev/null 2>&1; then
 +              fail
                return 1
        else
@@ -96,48 +163,564 @@ diff -dur LVM2.2.02.107.orig/scripts/clvmd_init_red_hat.in LVM2.2.02.107/scripts
 -              echo
 +              ok
        fi
-       rm -f $LOCK_FILE
-@@ -143,7 +138,7 @@
+-
+       rm -f "$LOCK_FILE"
+-
+       return 0
+ }
  
  reload() {
-       rh_status_q || exit 7
--      action "Reloading $DAEMON configuration: " $DAEMON -R || return $?
-+      run_cmd "Reloading $DAEMON configuration: " $DAEMON -R || return $?
+-      rh_status_q || exit 7
+-      action "Reloading $DAEMON configuration: " "$usrsbindir/$DAEMON" -R || return $?
++      status $DAEMON 1>/dev/null 2>&1 || exit 7
++      run_cmd "Reloading $DAEMON configuration: " "$DAEMON" -R || return $?
  }
  
  restart() {
-@@ -154,7 +149,7 @@
+       # if stop fails, restart will return the error and not attempt
+-      # another start. Even if start is protected by rh_status_q,
++      # another start. Even if start is protected by status call,
+       # that would avoid spawning another daemon, it would try to
+       # reactivate the VGs.
  
        # Try to get clvmd to restart itself. This will preserve 
        # exclusive LV locks
--      action "Restarting $DAEMON: " $DAEMON -S
-+      run_cmd "Restarting $DAEMON: " $DAEMON -S
+-      action "Restarting $DAEMON: " "$usrsbindir/$DAEMON" -S
++      run_cmd "Restarting $DAEMON: " "$DAEMON" -S
  
        # If that fails then do a normal stop & restart
        if  [ $? != 0 ]; then
-diff -dur LVM2.2.02.107.orig/scripts/lvm2_monitoring_init_red_hat.in LVM2.2.02.107/scripts/lvm2_monitoring_init_red_hat.in
---- LVM2.2.02.107.orig/scripts/lvm2_monitoring_init_red_hat.in 2014-06-23 14:07:38.000000000 +0000
-+++ LVM2.2.02.107/scripts/lvm2_monitoring_init_red_hat.in      2014-07-25 16:29:30.757000000 +0000
+@@ -166,38 +140,39 @@ restart() {
+       exit 4
+ }
++RETVAL=0
+ # See how we were called.
+ case "$1" in
+   start)
+       start
+-      rtrn=$?
++      RETVAL=$?
+       ;;
+   stop)
+       stop
+-      rtrn=$?
++      RETVAL=$?
+       ;;
+   restart|force-reload)
+       restart
+-      rtrn=$?
++      RETVAL=$?
+       ;;
+   condrestart|try-restart)
+-      rh_status_q || exit 0
++      status $DAEMON 1>/dev/null 2>&1 || exit 0
+       restart
+-      rtrn=$? 
++      RETVAL=$?
+       ;;
+   reload)
+       reload
+-      rtrn=$?
++      RETVAL=$?
+       ;;
+   status)
+-      rh_status
+-      rtrn=$?
+-      if [ "$rtrn" = 0 ]; then
++      status $DAEMON
++      RETVAL=$?
++      if [ $RETVAL = 0 ]; then
+               cvgs="$(clustered_vgs)"
+               echo Clustered Volume Groups: ${cvgs:-"(none)"}
+               clvs="$(clustered_active_lvs)"
+@@ -206,9 +181,9 @@ case "$1" in
+       ;;
+   *)
+-      echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}"
+-      rtrn=2
++      msg_usage "$0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}"
++      RETVAL=2
+       ;;
+ esac
+-exit $rtrn
++exit $RETVAL
+diff -urp LVM2.2.02.177.orig/scripts/cmirrord_init_red_hat.in LVM2.2.02.177/scripts/cmirrord_init_red_hat.in
+--- LVM2.2.02.177.orig/scripts/cmirrord_init_red_hat.in        2017-12-18 20:44:35.000000000 +0000
++++ LVM2.2.02.177/scripts/cmirrord_init_red_hat.in     2018-01-29 11:28:49.069892013 +0000
+@@ -2,7 +2,7 @@
+ #
+ # chkconfig: - 22 78
+ # description: Starts and stops cmirrord
+-# pidfile: @CMIRRORD_PIDFILE@
++# pidfile: /var/run/cmirrord.pid
+ #
+ # For Red-Hat-based distributions such as Fedora, RHEL, CentOS.
+ #
+@@ -16,95 +16,57 @@
+ . /etc/init.d/functions
+-DAEMON=cmirrord
++DAEMON="cmirrord"
+-usrsbindir="@USRSBINDIR@"
+-
+-LOCK_FILE="@DEFAULT_SYS_LOCK_DIR@/subsys/$DAEMON"
++LOCK_FILE="/var/lock/subsys/$DAEMON"
+ start()
+ {
+-      rtrn=0
+-      if ! pidof "$DAEMON" > /dev/null
+-      then
+-              echo -n "Starting $DAEMON: "
+-              daemon "$usrsbindir/$DAEMON"
+-              rtrn=$?
+-              echo
+-      fi
+-
+-      return $rtrn
++        if [ -f $LOCK_FILE ]; then
++                msg_already_running "$DAEMON"
++                return
++        fi
++        msg_starting "$DAEMON"
++        daemon /sbin/$DAEMON </dev/null
++        RETVAL=$?
++        [ $RETVAL -eq 0 ] && touch "$LOCK_FILE"
+ }
+ stop()
+ {
+-      echo -n "Stopping $DAEMON:"
+-      killproc "$DAEMON" -TERM
+-      rtrn=$?
+-      echo
+-
+-      return $rtrn
+-}
+-
+-wait_for_finish()
+-{
+-      count=0
+-
+-      while [ "$count" -le 10 -a -n "`pidof $DAEMON`" ]
+-      do
+-              sleep 1
+-              count=$((count + 1))
+-      done
+-
+-      if [ "$(pidof "$DAEMON")" ]
+-      then
+-              return 1
+-      else
+-              return 0
++      if [ ! -f $LOCK_FILE ]; then
++              msg_not_running "$DAEMON"
++              return
+       fi
++      msg_stopping "$DAEMON"
++      killproc --pidfile "$PID_FILE" "$DAEMON"
++      rm -f "$LOCK_FILE"
+ }
+-cmirror_status()
+-{
+-      status "$DAEMON"
+-}
+-
+-rtrn=1
+-
++RETVAL=0
+ # See how we were called.
+ case "$1" in
+       start)
+               start
+-              rtrn=$?
+-              [ "$rtrn" = 0 ] && touch "$LOCK_FILE"
+               ;;
+       stop)
+               stop
+-              rtrn=$?
+-              [ "$rtrn" = 0 ] && rm -f "$LOCK_FILE"
+               ;;
+       restart)
+-              if stop
+-              then
+-                      wait_for_finish
+-                      start
+-              fi
+-              rtrn=$?
++              stop
++              start
+               ;;
+       status)
+-              cmirror_status
+-              rtrn=$?
+-              if [ "$rtrn" -eq 0 ]; then
+-                      echo "cmirror is running."
+-              fi
++              status $DAEMON
++              exit $?
+               ;;
+       *)
+-              echo $"Usage: $0 {start|stop|restart|status}"
++              msg_usage "$0 {start|stop|restart|status}"
+               ;;
+ esac
+-exit $rtrn
++exit $RETVAL
+diff -urp LVM2.2.02.177.orig/scripts/lvm2_lvmetad_init_red_hat.in LVM2.2.02.177/scripts/lvm2_lvmetad_init_red_hat.in
+--- LVM2.2.02.177.orig/scripts/lvm2_lvmetad_init_red_hat.in    2017-12-18 20:44:35.000000000 +0000
++++ LVM2.2.02.177/scripts/lvm2_lvmetad_init_red_hat.in 2018-01-29 11:30:04.229887533 +0000
+@@ -1,4 +1,4 @@
+-#!/bin/bash
++#!/bin/sh
+ #
+ # Copyright (C) 2012-2017 Red Hat, Inc. All rights reserved.
+ #
+@@ -33,78 +33,84 @@
+ . /etc/init.d/functions
+-DAEMON=lvmetad
++DAEMON="lvmetad"
++NAME="LVM metadata daemon"
+-sbindir="@SBINDIR@"
+-
+-LOCK_FILE="@DEFAULT_SYS_LOCK_DIR@/subsys/$DAEMON"
+-PID_FILE="@LVMETAD_PIDFILE@"
+-
+-rh_status() {
+-      status -p "$PID_FILE" "$DAEMON"
+-}
+-
+-rh_status_q() {
+-      rh_status >/dev/null 2>&1
+-}
++LOCK_FILE="/var/lock/subsys/lvm2-lvmetad"
++PID_FILE="/var/run/lvmetad.pid"
+ start()
+ {
+-      ret=0
+-      action "Starting LVM metadata daemon:" "$sbindir/$DAEMON" || ret=$?
+-      return $ret
++      if [ -f "$LOCK_FILE" ]; then
++              msg_already_running "$NAME"
++              return
++      fi
++      msg_starting "$NAME"
++      daemon "/sbin/$DAEMON" </dev/null
++      RETVAL=$?
++      [ "$RETVAL" -eq 0 ] && touch "$LOCK_FILE"
+ }
+ stop()
+ {
+-      ret=0
+-      action "Signaling LVM metadata daemon to exit:" killproc -p "$PID_FILE" "$DAEMON" -TERM || ret=$?
+-      return $ret
++      if [ ! -f "$LOCK_FILE" ]; then
++              msg_not_running "$NAME"
++              return
++      fi
++      msg_stopping "$NAME"
++      killproc --pidfile "$PID_FILE" "$DAEMON"
++      rm -f "$LOCK_FILE"
++}
++
++condrestart() {
++      if [ ! -f "$LOCK_FILE" ]; then
++              msg_not_running "$NAME"
++              RETVAL=$1
++              return
++      fi
++      stop
++      start
+ }
+-rtrn=1
++reload() {
++      if [ ! -f "$LOCK_FILE" ]; then
++              msg_not_running "$NAME"
++              RETVAL=7
++              return
++      fi
++      msg_reloading "$NAME"
++      killproc "$DAEMON" -HUP
++      RETVAL=$?
++}
++RETVAL=0
+ # See how we were called.
+ case "$1" in
+   start)
+-      rh_status_q && exit 0
+       start
+-      rtrn=$?
+-      [ "$rtrn" = 0 ] && touch "$LOCK_FILE"
+       ;;
+-  stop|force-stop)
+-      rh_status_q || exit 0
++  stop)
+       stop
+-      rtrn=$?
+-      [ "$rtrn" = 0 ] && rm -f "$LOCK_FILE"
+       ;;
+   restart)
+-      if stop
+-      then
+-              start
+-      fi
+-      rtrn=$?
++      stop
++      start
+       ;;
+   condrestart|try-restart)
+-      rh_status_q || exit 0
+-      if stop
+-      then
+-              start
+-      fi
+-      rtrn=$?
++      condrestart 0
+       ;;
+   status)
+-      rh_status
+-      rtrn=$?
++      status $DAEMON
++      exit $?
+       ;;
+   *)
+-      echo $"Usage: $0 {start|stop|force-stop|restart|condrestart|try-restart|status}"
++      msg_usage "$0 {start|stop|force-stop|restart|condrestart|try-restart|status}"
+       ;;
+ esac
+-exit $rtrn
++exit $RETVAL
+diff -urp LVM2.2.02.177.orig/scripts/lvm2_lvmpolld_init_red_hat.in LVM2.2.02.177/scripts/lvm2_lvmpolld_init_red_hat.in
+--- LVM2.2.02.177.orig/scripts/lvm2_lvmpolld_init_red_hat.in   2017-12-18 20:44:35.000000000 +0000
++++ LVM2.2.02.177/scripts/lvm2_lvmpolld_init_red_hat.in        2018-01-29 11:31:12.405883470 +0000
+@@ -1,6 +1,6 @@
+-#!/bin/bash
++#!/bin/sh
+ #
+-# Copyright (C) 2015 Red Hat, Inc. All rights reserved.
++# Copyright (C) 2012 Red Hat, Inc. All rights reserved.
+ #
+ # This copyrighted material is made available to anyone wishing to use,
+ # modify, copy, or redistribute it subject to the terms and conditions
+@@ -27,86 +27,92 @@
+ # Default-Start: 1 2 3 4 5
+ # Default-Stop: 0 6
+ # Short-Description: A daemon that is responsible for monitoring in-progress
+-#                  and possibly longer term operations on logical volumes. 
+-#                  It helps to reduce the number of spawned processes if same
++#                    and possibly longer term operations on logical volumes. 
++#                    It helps to reduce the number of spawned processes if same
+ #                    logical volume is requested to get monitored multiple times.
+ #                    Also avoids unsolicited termination due to external factors.
+ ### END INIT INFO
+ . /etc/init.d/functions
+-DAEMON=lvmpolld
++DAEMON="lvmpolld"
++NAME="LVM poll daemon"
+-sbindir="@SBINDIR@"
+-
+-LOCK_FILE="@DEFAULT_LOCK_DIR@/subsys/$DAEMON"
+-PID_FILE="@LVMPOLLD_PIDFILE@"
+-
+-rh_status() {
+-      status -p "$PID_FILE" "$DAEMON"
+-}
+-
+-rh_status_q() {
+-      rh_status >/dev/null 2>&1
+-}
++LOCK_FILE="/var/lock/subsys/lvm2-lvmpolld"
++PID_FILE="/var/run/lvmpolld.pid"
+ start()
+ {
+-      ret=0
+-      action "Starting LVM poll daemon:" "$sbindir/$DAEMON" || ret=$?
+-      return $ret
++      if [ -f $LOCK_FILE ]; then
++              msg_already_running "$NAME"
++              return
++      fi
++      msg_starting "$NAME"
++      daemon "/sbin/$DAEMON" </dev/null
++      RETVAL=$?
++      [ "$RETVAL" -eq 0 ] && touch "$LOCK_FILE"
+ }
+ stop()
+ {
+-      ret=0
+-      action "Signaling LVM poll daemon to exit:" killproc -p "$PID_FILE" "$DAEMON" -TERM || ret=$?
+-      return "$ret"
++      if [ ! -f "$LOCK_FILE" ]; then
++              msg_not_running "$NAME"
++              return
++      fi
++      msg_stopping "$NAME"
++      killproc --pidfile "$PID_FILE" "$DAEMON"
++      rm -f "$LOCK_FILE"
++}
++
++condrestart() {
++      if [ ! -f "$LOCK_FILE" ]; then
++              msg_not_running "$NAME"
++              RETVAL=$1
++              return
++      fi
++      stop
++      start
+ }
+-rtrn=1
++reload() {
++      if [ ! -f "$LOCK_FILE" ]; then
++              msg_not_running "$NAME"
++              RETVAL=7
++              return
++      fi
++      msg_reloading "$NAME"
++      killproc "$DAEMON" -HUP
++      RETVAL=$?
++}
++RETVAL=0
+ # See how we were called.
+ case "$1" in
+   start)
+-      rh_status_q && exit 0
+       start
+-      rtrn=$?
+-      [ $rtrn = 0 ] && touch "$LOCK_FILE"
+       ;;
+-  stop|force-stop)
+-      rh_status_q || exit 0
++  stop)
+       stop
+-      rtrn=$?
+-      [ $rtrn = 0 ] && rm -f "$LOCK_FILE"
+       ;;
+   restart)
+-      if stop
+-      then
+-              start
+-      fi
+-      rtrn=$?
++      stop
++      start
+       ;;
+   condrestart|try-restart)
+-      rh_status_q || exit 0
+-      if stop
+-      then
+-              start
+-      fi
+-      rtrn=$?
++      condrestart 0
+       ;;
+   status)
+-      rh_status
+-      rtrn=$?
++      status $DAEMON
++      exit $?
+       ;;
+   *)
+-      echo $"Usage: $0 {start|stop|force-stop|restart|condrestart|try-restart|status}"
++      msg_usage "$0 {start|stop|force-stop|restart|condrestart|try-restart|status}"
+       ;;
+ esac
+-exit $rtrn
++exit $RETVAL
+diff -urp LVM2.2.02.177.orig/scripts/lvm2_monitoring_init_red_hat.in LVM2.2.02.177/scripts/lvm2_monitoring_init_red_hat.in
+--- LVM2.2.02.177.orig/scripts/lvm2_monitoring_init_red_hat.in 2017-12-18 20:44:35.000000000 +0000
++++ LVM2.2.02.177/scripts/lvm2_monitoring_init_red_hat.in      2018-01-29 11:33:20.925875809 +0000
 @@ -1,4 +1,4 @@
 -#!/bin/bash
 +#!/bin/sh
  #
  # Copyright (C) 2007-2009 Red Hat, Inc. All rights reserved.
  #
-@@ -46,32 +46,29 @@
+@@ -31,104 +31,92 @@
+ . /etc/init.d/functions
  
+-DAEMON=lvm2-monitor
+-DMEVENTD_DAEMON=dmeventd
++DAEMON="lvm2-monitor"
++DMEVENTD_DAEMON="dmeventd"
+-sbindir=@SBINDIR@
++VGCHANGE="/sbin/vgchange"
++VGS="/sbin/vgs"
++LVS="/sbin/lvs"
+-VGCHANGE="$sbindir/vgchange"
+-VGS="$sbindir/vgs"
+-LVS="$sbindir/lvs"
+-
+-LOCK_FILE="@DEFAULT_SYS_LOCK_DIR@/subsys/$DAEMON"
+-PID_FILE="@DMEVENTD_PIDFILE@"
++LOCK_FILE="/var/lock/subsys/$DAEMON"
++PID_FILE="/var/run/dmeventd.pid"
+ WARN=1
+ export LVM_SUPPRESS_LOCKING_FAILURE_MESSAGES=1
+-rh_status() {
+-      status -p "$PID_FILE" "$DMEVENTD_DAEMON"
+-}
+-
+-rh_status_q() {
+-      rh_status >/dev/null 2>&1
+-}
  start()
  {
 -      ret=0
 +      local config="'log{command_names=0 prefix=\"  \"}'"
        # TODO do we want to separate out already active groups only?
 -      VGSLIST=`$VGS --noheadings -o name --ignoreskippedcluster --config 'log{command_names=0 prefix="  "}' 2> /dev/null`
-+      VGSLIST=`$VGS --noheadings -o name --ignoreskippedcluster --config $config 2> /dev/null`
++      VGSLIST=`eval $VGS --noheadings -o name --ignoreskippedcluster --config $config 2> /dev/null`
        for vg in $VGSLIST
        do
--          action "Starting monitoring for VG $vg:" $VGCHANGE --monitor y --poll y --ignoreskippedcluster --config 'log{command_names=0 prefix="  "}' $vg || ret=$?
-+          run_cmd "Starting monitoring for VG $vg" $VGCHANGE --monitor y --poll y --ignoreskippedcluster --config $config $vg
+-          action "Starting monitoring for VG $vg:" "$VGCHANGE" --monitor y --poll y --ignoreskippedcluster --config 'log{command_names=0 prefix="  "}' $vg || ret=$?
++              run_cmd "Starting monitoring for LVM VG $vg" $VGCHANGE --monitor y --poll y --ignoreskippedcluster --config $config $vg
        done
 -
 -      return $ret
@@ -154,13 +737,82 @@ diff -dur LVM2.2.02.107.orig/scripts/lvm2_monitoring_init_red_hat.in LVM2.2.02.1
           return 1
        fi
 -      VGSLIST=`$VGS --noheadings -o name --ignoreskippedcluster --config 'log{command_names=0 prefix="  "}' 2> /dev/null`
-+      VGSLIST=`$VGS --noheadings -o name --ignoreskippedcluster --config ${config} 2> /dev/null`
++      VGSLIST=`eval $VGS --noheadings -o name --ignoreskippedcluster --config ${config} 2> /dev/null`
        for vg in $VGSLIST
        do
--          action "Stopping monitoring for VG $vg:" $VGCHANGE --monitor n --ignoreskippedcluster --config 'log{command_names=0 prefix="  "}' $vg || ret=$?
-+          run_cmd "Stopping monitoring for VG $vg" $VGCHANGE --monitor n --ignoreskippedcluster --config $config $vg
+-          action "Stopping monitoring for VG $vg:" "$VGCHANGE" --monitor n --ignoreskippedcluster --config 'log{command_names=0 prefix="  "}' $vg || ret=$?
++              run_cmd "Stopping monitoring for LVM VG $vg" $VGCHANGE --monitor n --ignoreskippedcluster --config $config $vg
        done
 -      return $ret
  }
  
- rtrn=1
+-rtrn=1
+-
++RETVAL=0
+ # See how we were called.
+ case "$1" in
+   start)
+-      rh_status_q && exit 0
++      status "$DMEVENTD_DAEMON" 1>/dev/null 2>&1 && exit 0
+       start
+-      rtrn=$?
+-      [ "$rtrn" = 0 ] && touch "$LOCK_FILE"
++      RETVAL=$?
++      [ "$RETVAL" = 0 ] && touch "$LOCK_FILE"
+       ;;
+   force-stop)
+-      rh_status_q || exit 0
++      status "$DMEVENTD_DAEMON" 1>/dev/null 2>&1 || exit 0
+       WARN=0
+       stop
+-      rtrn=$?
+-      [ "$rtrn" = 0 ] && rm -f "$LOCK_FILE"
++      RETVAL=$?
++      [ "$RETVAL" = 0 ] && rm -f "$LOCK_FILE"
+       ;;
+   stop)
+-      rh_status_q || exit 0
++      status "$DMEVENTD_DAEMON" 1>/dev/null 2>&1 || exit 0
+       test "$runlevel" = "0" && WARN=0
+       test "$runlevel" = "6" && WARN=0
+       stop
+-      rtrn=$?
+-      [ "$rtrn" = 0 ] && rm -f "$LOCK_FILE"
++      RETVAL=$?
++      [ "$RETVAL" = 0 ] && rm -f "$LOCK_FILE"
+       ;;
+   restart)
+       WARN=0
+-      if stop
+-      then
+-              start
+-      fi 
+-      rtrn=$?
++      stop
++      RETVAL=$?
++      [ "$RETVAL" = 0 ] && rm -f "$LOCK_FILE"
++      start
++      RETVAL=$?
++      [ "$RETVAL" = 0 ] && touch "$LOCK_FILE"
+       ;;
+   status)
+-      rh_status
+-      rtrn=$?
+-      [ "$rtrn" = 0 ] && "$LVS" -S 'seg_monitor=monitored' -o lv_full_name,seg_monitor
++      status "$DMEVENTD_DAEMON"
++      RETVAL=$?
++      [ "$RETVAL" = 0 ] && $LVS -S 'seg_monitor=monitored' -o lv_full_name,seg_monitor
+       ;;
+   *)
+-      echo $"Usage: $0 {start|stop|restart|status|force-stop}"
++      msg_usage "$0 {start|stop|restart|status|force-stop}"
+       ;;
+ esac
+-exit $rtrn
++exit $RETVAL