[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [Cluster-devel] [PATCH] fence_scsi: identify dm-multipath devices correctly



On Tue, 2011-01-18 at 14:42 -0600, Ryan O'Hara wrote:
> Previously, fence_scsi would only identify /dev/dm* devices as being
> multipath devices. This prevented the use of "friendly" dm-multipath
> names (eg. /dev/mapper/mpath1). Since fence_scsi can now be passed
> devices to operate on, it should be able to handle "friendly" names,
> too. This patch fixes the problem by getting the absolute path of the
> device at registration time.
> 
> Resolves: rhbz#644389
> 
> Signed-off-by: Ryan O'Hara <rohara redhat com>
> ---
>  fence/agents/scsi/fence_scsi.pl |    5 +++++
>  1 files changed, 5 insertions(+), 0 deletions(-)
> 
> diff --git a/fence/agents/scsi/fence_scsi.pl b/fence/agents/scsi/fence_scsi.pl
> index 9ee8917..8ddde4e 100644
> --- a/fence/agents/scsi/fence_scsi.pl
> +++ b/fence/agents/scsi/fence_scsi.pl
> @@ -1,5 +1,6 @@
>  #!/usr/bin/perl
>  
> +use Cwd 'realpath';
>  use File::Basename;
>  use Getopt::Std;
>  use POSIX;
> @@ -112,6 +113,8 @@ sub do_register ($$$)
>      my $self = (caller(0))[3];
>      my ($host_key, $node_key, $dev) = @_;
>  
> +    $dev = realpath ($dev);
> +
>      if (substr ($dev, 5) =~ /^dm/) {
>  	my @slaves = get_mpath_slaves ($dev);
>  	foreach (@slaves) {
> @@ -139,6 +142,8 @@ sub do_register_ignore ($$)
>      my $self = (caller(0))[3];
>      my ($node_key, $dev) = @_;
>  
> +    $dev = realpath ($dev);
> +
>      if (substr ($dev, 5) =~ /^dm/) {
>  	my @slaves = get_mpath_slaves ($dev);
>  	foreach (@slaves) {

ACK; this is fine

-- Lon


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]