[pve-devel] [PATCH 5/6] ISCSIDirect : fixes and cleanup

Stefan Priebe s.priebe at profihost.ag
Sun Aug 5 09:29:56 CEST 2012


To me I had a line with size x.xT for terrabyte. So just matching for G isn't enough.

Stefan

Am 05.08.2012 um 09:24 schrieb Alexandre Derumier <aderumier at odiso.com>:

> -use "lunX" for volume name.
> previously it was only the lun number, and it conflict with current syntax to disk alloc disk size.
> 
> -scsi-ls return size in Gb, so we need to convert to bytes
> 
> -small cleanups
> 
> Signed-off-by: Alexandre Derumier <aderumier at odiso.com>
> ---
> PVE/Storage/ISCSIDirectPlugin.pm |   21 +++++++--------------
> 1 files changed, 7 insertions(+), 14 deletions(-)
> 
> diff --git a/PVE/Storage/ISCSIDirectPlugin.pm b/PVE/Storage/ISCSIDirectPlugin.pm
> index 6279aae..6233fa1 100644
> --- a/PVE/Storage/ISCSIDirectPlugin.pm
> +++ b/PVE/Storage/ISCSIDirectPlugin.pm
> @@ -17,29 +17,20 @@ sub iscsi_ls {
>     my $portal = $scfg->{portal};
>     my $cmd = ['/usr/bin/iscsi-ls', '-s', 'iscsi://'.$portal ];
>     my $list = {};
> -    my $test  = "";
> -
> -     my $errfunc = sub {
> -         my $line = shift;
> -         $line = trim($line);
> -
> -         die $line if $line;
> -    };
> 
>     eval {
> 
> -        run_command($cmd, errmsg => "iscsi error", errfunc => $errfunc, outfunc => sub {
> +        run_command($cmd, errmsg => "iscsi error", errfunc => sub {}, outfunc => sub {
>            my $line = shift;
> +        print $line."\n";
>            $line = trim($line);
>            if( $line =~ /Lun:(\d+)\s+([A-Za-z0-9\-\_\.\:]*)\s+\(Size:(\d+)G\)/ ) {
> -        $test = $1;
> -
> -                my $image = $1;
> +                my $image = "lun".$1;
>                my $size = $3;
> 
>                $list->{$storeid}->{$image} = {
>                    name => $image,
> -                    size => $size,
> +                    size => $size*1024*1024*1024,
>                };
>            }
>        });
> @@ -47,7 +38,9 @@ sub iscsi_ls {
> 
>     my $err = $@;
>     die $err if $err && $err !~ m/TESTUNITREADY failed with SENSE KEY/ ;
> +
>     return $list;
> +
> }
> 
> # Configuration
> @@ -78,7 +71,7 @@ sub parse_volname {
>     my ($class, $volname) = @_;
> 
> 
> -    if ($volname =~ m/^(\d+)$/) {
> +    if ($volname =~ m/^lun(\d+)$/) {
>    return ('images', $1, undef);
>     }
> 
> -- 
> 1.7.2.5
> 
> _______________________________________________
> pve-devel mailing list
> pve-devel at pve.proxmox.com
> http://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel



More information about the pve-devel mailing list