From d6f3264de7624ae47e878346c0479b618ee912a4 Mon Sep 17 00:00:00 2001 From: Mark Buechler Date: Fri, 20 Aug 2010 17:58:06 +0000 Subject: [PATCH] - Remove device requirement from removeLun(). - Fix a couple cases where -group is not really required. git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1964 d57e44dd-8a1f-0410-8b47-8ef2f437770f --- .../scst-0.9.00/lib/SCST/SCST.pm | 7 +----- scstadmin/scstadmin.sysfs/scstadmin | 23 +++++++++---------- 2 files changed, 12 insertions(+), 18 deletions(-) diff --git a/scstadmin/scstadmin.sysfs/scst-0.9.00/lib/SCST/SCST.pm b/scstadmin/scstadmin.sysfs/scst-0.9.00/lib/SCST/SCST.pm index fcae91673..1e1061a07 100644 --- a/scstadmin/scstadmin.sysfs/scst-0.9.00/lib/SCST/SCST.pm +++ b/scstadmin/scstadmin.sysfs/scst-0.9.00/lib/SCST/SCST.pm @@ -1444,7 +1444,6 @@ sub removeLun { my $self = shift; my $driver = shift; my $target = shift; - my $device = shift; my $lun = shift; my $group = shift; @@ -1481,15 +1480,11 @@ sub removeLun { return $err2 if (!$rc); return $rc if ($rc > 1); - my $luns = $self->luns($driver, $target, $group); - - return $err if ($$luns{$lun} ne $device); - my $io = new IO::File $path, O_WRONLY; return $err if (!$io); - my $cmd = "del $device $lun\n"; + my $cmd = "del $lun\n"; my $bytes; if ($self->{'debug'}) { diff --git a/scstadmin/scstadmin.sysfs/scstadmin b/scstadmin/scstadmin.sysfs/scstadmin index b1818d204..fee7684e3 100755 --- a/scstadmin/scstadmin.sysfs/scstadmin +++ b/scstadmin/scstadmin.sysfs/scstadmin @@ -513,14 +513,14 @@ sub getArgs { usage(); } - if ((defined($addLun) || defined($replaceLun) || defined($removeLun)) && - (!defined($driver) || !defined($target) || !defined($group) || !defined($device))) { - print "Please specify -driver -target -group and -device with -add_lun/-replace_lun.\n"; + if ((defined($addLun) || defined($replaceLun)) && + (!defined($driver) || !defined($target) || !defined($device))) { + print "Please specify -driver -target and -device with -add_lun/-replace_lun.\n"; usage(); } - if (defined($clearLuns) && (!defined($driver) || !defined($target) || !defined($group))) { - print "Please specify -driver -target and -group with -clear_luns.\n"; + if ((defined($clearLuns) || defined($removeLun)) && (!defined($driver) || !defined($target))) { + print "Please specify -driver and -target with -rem_lun/-clear_luns.\n"; usage(); } @@ -753,7 +753,7 @@ sub main { last SWITCH; }; defined($removeLun) && do { - $rc = removeLun($driver, $target, $device, $removeLun, $group); + $rc = removeLun($driver, $target, $removeLun, $group); last SWITCH; }; defined($replaceLun) && do { @@ -1579,7 +1579,7 @@ sub applyConfigAssignments { if (!defined($$def_group{'LUN'}->{$lun}->{$device})) { if ($deletions) { - removeLun($driver, $target, $device, $lun); + removeLun($driver, $target, $lun); } else { print "-> Device '$device' at LUN '$lun' is not in configuration ". "for driver/target '$driver/$target'. ". @@ -1599,7 +1599,7 @@ sub applyConfigAssignments { if (!defined($$def_group{'LUN'}->{$lun}->{$device})) { if ($deletions) { - removeLun($driver, $target, $device, $lun, $group); + removeLun($driver, $target, $lun, $group); } else { print "-> Device '$device' at LUN '$lun' is not in configuration ". "for driver/target/group '$driver/$target/$group'. ". @@ -3199,19 +3199,18 @@ sub addLun { sub removeLun { my $driver = shift; my $target = shift; - my $device = shift; my $lun = shift; my $group = shift; if ($group) { - print "-> Removing device '$device' at LUN $lun from driver/target/group ". + print "-> Removing LUN $lun from driver/target/group ". "'$driver/$target/$group': "; } else { - print "-> Removing device '$device' at LUN $lun from driver/target ". + print "-> Removing LUN $lun from driver/target ". "'$driver/$target': "; } - my $rc = $SCST->removeLun($driver, $target, $device, $lun, $group); + my $rc = $SCST->removeLun($driver, $target, $lun, $group); print "done.\n";