From 8ee96464d96155f73053d53edaa3a6c912501bea Mon Sep 17 00:00:00 2001 From: Steve Dickson Date: Oct 14 2008 18:41:50 +0000 Subject: sm-notify exists when there are no hosts to notify --- diff --git a/nfs-utils-1.1.3-smnotify-earlyexit.patch b/nfs-utils-1.1.3-smnotify-earlyexit.patch new file mode 100644 index 0000000..a1643ef --- /dev/null +++ b/nfs-utils-1.1.3-smnotify-earlyexit.patch @@ -0,0 +1,51 @@ +commit c8d18e26d2a53d9036a32c2dafebccaf4ce1634d +Author: Phil Endecott +Date: Tue Oct 14 14:36:58 2008 -0400 + + sm-notify should exit as soon as its determined + there are no hosts to notify. This also decreases + start up time by a few seconds. + + Signed-off-by: Steve Dickson + +diff --git a/utils/statd/sm-notify.c b/utils/statd/sm-notify.c +index 76a378c..7a7ae1a 100644 +--- a/utils/statd/sm-notify.c ++++ b/utils/statd/sm-notify.c +@@ -189,9 +189,13 @@ usage: fprintf(stderr, + exit(1); + } + ++ log_syslog = 1; ++ openlog("sm-notify", LOG_PID, LOG_DAEMON); ++ + if (strcmp(_SM_BASE_PATH, BASEDIR) == 0) { + if (record_pid() == 0 && force == 0 && opt_update_state == 1) + /* already run, don't try again */ ++ nsm_log(LOG_NOTICE, "Already notifying clients; Exiting!"); + exit(0); + } + +@@ -207,6 +211,12 @@ usage: fprintf(stderr, + backup_hosts(_SM_DIR_PATH, _SM_BAK_PATH); + get_hosts(_SM_BAK_PATH); + ++ /* If there are not hosts to notify, just exit */ ++ if (!hosts) { ++ nsm_log(LOG_DEBUG, "No hosts to notify; exiting"); ++ return 0; ++ } ++ + /* Get and update the NSM state. This will call sync() */ + nsm_state = nsm_get_state(opt_update_state); + set_kernel_nsm_state(nsm_state); +@@ -215,9 +225,6 @@ usage: fprintf(stderr, + if (!opt_quiet) + printf("Backgrounding to notify hosts...\n"); + +- openlog("sm-notify", LOG_PID, LOG_DAEMON); +- log_syslog = 1; +- + if (daemon(0, 0) < 0) { + nsm_log(LOG_ERR, "unable to background: %s", + strerror(errno)); diff --git a/nfs-utils.spec b/nfs-utils.spec index 2d3bd72..addd0bf 100644 --- a/nfs-utils.spec +++ b/nfs-utils.spec @@ -2,7 +2,7 @@ Summary: NFS utilities and supporting clients and daemons for the kernel NFS ser Name: nfs-utils URL: http://sourceforge.net/projects/nfs Version: 1.1.3 -Release: 5%{?dist} +Release: 6%{?dist} Epoch: 1 # group all 32bit related archs @@ -41,6 +41,7 @@ Patch107: nfs-utils-1.1.3-mountd-cleanup.patch Patch108: nfs-utils-1.1.3-mountd-pseudoflavor-support.patch Patch109: nfs-utils-1.1.3-idmapd-rm-idmapconf.patch Patch110: nfs-utils-1.1.3-network-conn-udp-ports.patch +Patch111: nfs-utils-1.1.3-smnotify-earlyexit.patch Group: System Environment/Daemons Provides: exportfs = %{epoch}:%{version}-%{release} @@ -106,6 +107,7 @@ This package also contains the mount.nfs and umount.nfs program. %patch108 -p1 %patch109 -p1 %patch110 -p1 +%patch111 -p1 # Remove .orig files find . -name "*.orig" | xargs rm -f @@ -265,6 +267,9 @@ fi %attr(4755,root,root) /sbin/umount.nfs4 %changelog +* Tue Oct 14 2008 Steve Dickson 1.1.3-6 +- sm-notify exists when there are no hosts to notify + * Thu Sep 18 2008 Steve Dickson 1.1.3-5 - Reworked init scripts so service will be able to stop when some of the checks fail. (bz 462508)