From 41860799c5bf59478ac036a7fa61489fdcb2444f Mon Sep 17 00:00:00 2001 From: jjhua Date: Fri, 14 Oct 2011 05:29:26 +0000 Subject: [PATCH] in DFM hierarchical cluster, mkhwconn/lshwconn/rmhwconn with -T fnm will send the command to CEC/Frame direclty, not through the service node if specified. git-svn-id: https://svn.code.sf.net/p/xcat/code/xcat-core/branches/2.6@10774 8638fb3e-16cb-4fca-ae20-7b5d299a9bcd --- xCAT-server/lib/perl/xCAT/PPC.pm | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/xCAT-server/lib/perl/xCAT/PPC.pm b/xCAT-server/lib/perl/xCAT/PPC.pm index c08b9ad0b..fe0ad7e14 100644 --- a/xCAT-server/lib/perl/xCAT/PPC.pm +++ b/xCAT-server/lib/perl/xCAT/PPC.pm @@ -1847,11 +1847,20 @@ sub preprocess_request { } } -# find service nodes for the HCPs + #When run mkhwconn/lshwconn/rmhwconn with -T fnm for CNM, it will send the command to CEC/Frame direclty, + #not through the service node if specified. + my $onlybymaster = 1; + if ((($req->{command}->[0] eq "mkhwconn") || ($req->{command}->[0] eq "lshwconn" ) || ($req->{command}->[0] eq "rmhwconn" )) + && ( $req->{opt}->{T} == 1) ) { + #for fnm + $onlybymaster = 1; + } + + # find service nodes for the HCPs # build an individual request for each service node my $service = "xcat"; my @hcps=keys(%hcp_hash); - my $sn = xCAT::Utils->get_ServiceNode(\@hcps, $service, "MN"); + my $sn = xCAT::Utils->get_ServiceNode(\@hcps, $service, "MN", $onlybymaster); # build each request for each service node foreach my $snkey (keys %$sn)