This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Cluster Project".
The branch, STABLE2 has been updated
via f3b6ea990e81e9234903a7fb65565f7dd3d3d43f (commit)
via 0fdda26db52d31e20d0524168859dfbffce4ffa0 (commit)
via 89c885f73b4d90c2be407125d62379fb32a11e3e (commit)
via a286ab41b67c9b6cd22fb88d862375e09259639e (commit)
from e80c1ff7cfb63e247a4479c4a20f65d373d99b62 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
[fence] Close file descriptors that are in invalid/error states
If poll was returning with a file descriptor noted as active,
but with the POLLERR/POLLNVAL flags set (but not POLLIN or
POLLHUP), fenced and groupd would enter a tight spin loop.
The gnbd kernel module on 64 bit architectures didn't handle ioctls from 32 bit
userspace processes. Now it does.
Resolves: bz #440454
Also, I was getting an error because on ppc64, the manual definition of O_DIRECT
in gnbd/server/device.c was incorrect. I switched to defining _GNU_SOURCE, which
should mean that O_DIRECT will be automatically defined.
-#ifndef O_DIRECT
-#define O_DIRECT 040000
-#endif
-
#include "list.h"
#include "gnbd_utils.h"
#include "local_req.h"
@@ -106,7 +103,7 @@ int open_file(char *path, unsigned int flags, int *devfd)
if (fd < 0){
err = -errno;
log_err("cannot open %s in %s%s mode : %s
", path,
- (flags & GNBD_FLAGS_READONLY)? "O_RDONLY" : "O_RDWR | OSYNC",
+ (flags & GNBD_FLAGS_READONLY)? "O_RDONLY" : "O_RDWR | O_SYNC",
(flags & GNBD_FLAGS_UNCACHED)? " | O_DIRECT" : "",
strerror(errno));
return err;
diff --git a/group/daemon/main.c b/group/daemon/main.c
index 3274b79..af7d5bd 100644
--- a/group/daemon/main.c
+++ b/group/daemon/main.c
@@ -764,7 +764,7 @@ static int loop(void)
for (i = 0; i <= client_maxi; i++) {
if (client[i].fd < 0)
continue;
- if (pollfd[i].revents & POLLHUP) {
+ if (pollfd[i].revents & (POLLERR | POLLHUP | POLLNVAL)) {
deadfn = client[i].deadfn;
deadfn(i);
} else if (pollfd[i].revents & POLLIN) {
diff --git a/rgmanager/man/clushutdown.8 b/rgmanager/man/clushutdown.8
deleted file mode 100644
index c63159f..0000000
--- a/rgmanager/man/clushutdown.8
+++ /dev/null
@@ -1,13 +0,0 @@
-.TH "clushutdown" "27" "Jan 2005" "" "Red Hat Cluster Suite"
-.SH "NAME"
-clushutdown - Cluster Mass Service Shutdown
-.SH "DESCRIPTION"
-.PP
-.B Clushutdown
-is responsible for stopping all services and ensuring that none are restarted
-when a member goes off line. It is only useful for situations where an
-administrator needs to take enough cluster members offline such that the
-cluster quorum will be disrupted. This is not required for shutting down a
-single member when all other members are online.
-.SH "SEE ALSO"
-clusvcadm(8)
diff --git a/rgmanager/man/clusvcadm.8 b/rgmanager/man/clusvcadm.8
index dcc5691..20ae823 100644
--- a/rgmanager/man/clusvcadm.8
+++ b/rgmanager/man/clusvcadm.8
@@ -49,12 +49,8 @@ service
Lock the local resource group manager. This should only be used if the
administrator intends to perform a global, cluster-wide shutdown. This
prevents starting resource groups on the local node, allowing
-services will not fail over during the shutdown of the cluster. Generally,
-administrators should use the
-.B
-clushutdown(8)
-command to accomplish this. Once the cluster quorum is dissolved, this
-state is reset.
+services will not fail over during the shutdown of the cluster.
+Once the cluster quorum is dissolved, this state is reset.
.IP "-m <member>"
When used in conjunction with either the
.B
@@ -88,11 +84,10 @@ service
until a member transition or until it is enabled again.
.IP -u
Unlock the cluster's service managers. This allows services to transition
-again. It will be necessary to re-enable all services in the stopped state
-if this is run after fB clushutdown(8)fR.
+again.
.IP -v
Display version information and exit.
.SH "SEE ALSO"
-clustat(8), clushutdown(8)
+clustat(8)
diff --git a/rgmanager/src/utils/clushutdown b/rgmanager/src/utils/clushutdown
deleted file mode 100755
index ef3eb72..0000000
--- a/rgmanager/src/utils/clushutdown
+++ /dev/null
@@ -1,53 +0,0 @@
-#!/bin/bash
-#
-# Stop all services and prepare the cluster for a TCO.
-#
-. /etc/init.d/functions
-
-action $"Ensuring this member is in the Quorum:" clustat -Q
-if [ $? -ne 0 ]; then
- exit 1
-fi
-
-echo
-echo "WARNING: About to stop ALL services managed by Red Hat Cluster Manager."
-echo " This should only be done when maintainence is required on "
-echo " enough members to dissolve the Cluster Quorum. This utility"
-echo " generally does not need to be run when one cluster member"
-echo " requires maintenance. This NEVER needs to be run in two"
-echo " member clusters."
-echo
-echo -n "Continue [yes/NO]? "
-read a
-if [ "$a" != "YES" -a "$a" != "yes" ]; then
- echo
- echo Aborted.
- exit 0
-fi
-
-action $"Preparing for global service shutdown:" clusvcadm -u
-if [ $? -ne 0 ]; then
- exit 1;
-fi
-
-errors=0
-for s in `cludb -m services%service[0-9]+%name | cut -f2 -d=`; do
- action "Stopping service $s: " clusvcadm -q -s $s
- if [ $? -ne 0 ]; then
- exit 1
- fi
-done
-
-echo "All clustered services are stopped."
-
-action $"Locking service managers:" clusvcadm -l
-if [ $? -ne 0 ]; then
- exit 1
-fi
-
-echo
-echo $"It is now safe to shut down all cluster members. Be advised that"
-echo $"members not controlled by power switches may still reboot when "
-echo $"when the cluster quorum is disbanded."
-echo
-exit 0