From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 10017 invoked by alias); 22 Jun 2009 17:59:37 -0000 Received: (qmail 10011 invoked by alias); 22 Jun 2009 17:59:37 -0000 X-SWARE-Spam-Status: No, hits=-1.8 required=5.0 tests=AWL,BAYES_00,J_CHICKENPOX_57,SPF_HELO_PASS X-Spam-Status: No, hits=-1.8 required=5.0 tests=AWL,BAYES_00,J_CHICKENPOX_57,SPF_HELO_PASS X-Spam-Check-By: sourceware.org X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on bastion2.fedora.phx.redhat.com Subject: resource-agents: master - rgmanager: Fix stack overflows on stress testing To: cluster-cvs-relay@redhat.com X-Project: Cluster Project X-Git-Module: resource-agents.git X-Git-Refname: refs/heads/master X-Git-Reftype: branch X-Git-Oldrev: 0d20d797c99a57d9d484dcf711d4018b8bc1f37a X-Git-Newrev: 17bdcb693d3908e44ab8e9d9a66a2c436a4870b2 From: Lon Hohberger Message-Id: <20090622175835.1289812027E@lists.fedorahosted.org> Date: Mon, 22 Jun 2009 17:59:00 -0000 X-Scanned-By: MIMEDefang 2.58 on 172.16.52.254 Mailing-List: contact cluster-cvs-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: cluster-cvs-owner@sourceware.org X-SW-Source: 2009-q2/txt/msg00667.txt.bz2 Gitweb: http://git.fedorahosted.org/git/resource-agents.git?p=resource-agents.git;a=commitdiff;h=17bdcb693d3908e44ab8e9d9a66a2c436a4870b2 Commit: 17bdcb693d3908e44ab8e9d9a66a2c436a4870b2 Parent: 0d20d797c99a57d9d484dcf711d4018b8bc1f37a Author: Lon Hohberger AuthorDate: Fri Jun 19 18:20:46 2009 -0400 Committer: Lon Hohberger CommitterDate: Mon Jun 22 13:57:50 2009 -0400 rgmanager: Fix stack overflows on stress testing S/Lang requires you to eat all the values on the stack if not assigned, or you can discard all values, but you can't take 2/5 without explicitly discarding the other three. Signed-off-by: Lon Hohberger --- rgmanager/src/resources/default_event_script.sl | 16 ++++++++-------- 1 files changed, 8 insertions(+), 8 deletions(-) diff --git a/rgmanager/src/resources/default_event_script.sl b/rgmanager/src/resources/default_event_script.sl index 9144526..7809b20 100644 --- a/rgmanager/src/resources/default_event_script.sl +++ b/rgmanager/src/resources/default_event_script.sl @@ -36,7 +36,7 @@ define separate_nodes(node_list) len = length(services); for (x = 0; x < len; x++) { - (owner, state) = service_status(services[x]); + (,,, owner, state) = service_status(services[x]); if (owner < 0) { continue; } @@ -99,7 +99,7 @@ define exclusive_prioritize(svc, node_list) continue; } - (owner, state) = service_status(services[x]); + (,,, owner, state) = service_status(services[x]); if (owner < 0) { continue; } @@ -148,14 +148,14 @@ define move_or_start(service, node_list) depends = service_property(service, "depend"); if (depends != "") { - (owner, state) = service_status(depends); + (,,, owner, state) = service_status(depends); if (owner < 0) { debug(service, " is not runnable; dependency not met"); return ERR_DEPEND; } } - (owner, state) = service_status(service); + (,,, owner, state) = service_status(service); debug("Evaluating ", service, " state=", state, " owner=", owner); len = length(node_list); @@ -220,7 +220,7 @@ define allowed_nodes(service) (nofailback, restricted, ordered, nodes_domain) = service_domain_info(service); - (owner, state) = service_status(service); + (,,, owner, state) = service_status(service); anodes = nodes_online(); @@ -270,7 +270,7 @@ define allowed_nodes(service) (nofailback, restricted, ordered, nodes_domain) = service_domain_info(service); - (owner, state) = service_status(service); + (,,, owner, state) = service_status(service); anodes = nodes_online(); @@ -481,7 +481,7 @@ define default_service_event_handler() continue; } - (owner, state) = service_status(services[x]); + (,,, owner, state) = service_status(services[x]); if ((service_state == "started") and (owner < 0) and (state == "stopped")) { info("Dependency met; starting ", services[x]); @@ -514,7 +514,7 @@ define default_user_event_handler() variable owner, state; nodes = allowed_nodes(service_name); - (owner, state) = service_status(service_name); + (,,, owner, state) = service_status(service_name); if (user_request == USER_RESTART) {