[Cluster-devel] cluster/fence/agents/bullpap fence_bullpap.pl

rmccabe at sourceware.org rmccabe at sourceware.org
Fri Sep 28 22:38:17 UTC 2007


CVSROOT:	/cvs/cluster
Module name:	cluster
Branch: 	RHEL4
Changes by:	rmccabe at sourceware.org	2007-09-28 22:38:17

Modified files:
	fence/agents/bullpap: fence_bullpap.pl 

Log message:
	Backport the fence_bullpap agent from the RHEL51 branch. This version fixes a timeout bug.
	Fixes bz309261

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/cluster/fence/agents/bullpap/fence_bullpap.pl.diff?cvsroot=cluster&only_with_tag=RHEL4&r1=1.1.2.7&r2=1.1.2.8

--- cluster/fence/agents/bullpap/fence_bullpap.pl	2007/02/12 20:33:57	1.1.2.7
+++ cluster/fence/agents/bullpap/fence_bullpap.pl	2007/09/28 22:38:17	1.1.2.8
@@ -323,27 +323,24 @@
 	my $timeout = 60; # 60 seconds for "off" for 32-way bull machines
 
 	set_power_state $host,$domain,"off",$login,$passwd;
-	if ( $? == 0 )
-	{
+	do {
+		sleep 5;
+		$state=get_power_state $host,$domain,$login,$passwd;
+		$timeout -= 5;
+	} while ($timeout > 0 && $state != 0);
+
+	if ($timeout <= 0) {
+		$success = 0;
+	} else  {
+		$timeout = 120; # 120 seconds for on, for 32-way bull machines
+		set_power_state $host,$domain,"on",$login,$passwd;
 		do {
 			sleep 5;
 			$state=get_power_state $host,$domain,$login,$passwd;
 			$timeout -= 5;
-		} while ($timeout > 0 && !($state =~ /^off$/i));
+		} while ($timeout > 0 && $state != 0);
 
-		if ($timeout > 0) {
-			$timeout = 120; # 120 seconds for on, for 32-way bull machines
-			set_power_state $host,$domain,"on",$login,$passwd;
-			if ( $? == 0 )
-			{
-				do {
-					sleep 5;
-					$state=get_power_state $host,$domain,$login,$passwd;
-					$timeout -= 5;
-				} while ($timeout > 0 && !($state =~ /^on$/i));
-				$success = 1 if ($state =~ /^on$/i);
-			}
-		}
+		$success = 1 if ($state == 0);
 	}
 }
 elsif (/status/)




More information about the Cluster-devel mailing list