The remote ZFS plugin doesn't use a cache (would need a separate cache for each target host), so this can speed up the operation.
Signed-off-by: Fiona Ebner <f.eb...@proxmox.com> --- PVE/Storage/ZFSPlugin.pm | 2 +- PVE/Storage/ZFSPoolPlugin.pm | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/PVE/Storage/ZFSPlugin.pm b/PVE/Storage/ZFSPlugin.pm index 1379bcf..cd5a3b6 100644 --- a/PVE/Storage/ZFSPlugin.pm +++ b/PVE/Storage/ZFSPlugin.pm @@ -422,7 +422,7 @@ sub deactivate_volume { sub list_images { my ($class, $storeid, $scfg, $vmid, $vollist, $cache) = @_; - my $zfs_list = $class->zfs_list_zvol($scfg); + my $zfs_list = $class->zfs_list_zvol($scfg, 1); return $class->zfs_list_images($storeid, $scfg, $vmid, $vollist, $zfs_list); } diff --git a/PVE/Storage/ZFSPoolPlugin.pm b/PVE/Storage/ZFSPoolPlugin.pm index 0fa18ce..2f75fba 100644 --- a/PVE/Storage/ZFSPoolPlugin.pm +++ b/PVE/Storage/ZFSPoolPlugin.pm @@ -379,9 +379,11 @@ sub zfs_delete_zvol { } sub zfs_list_zvol { - my ($class, $scfg) = @_; + my ($class, $scfg, $single_pool) = @_; - my $text = $class->zfs_request($scfg, 10, 'list', '-o', 'name,volsize,origin,type,refquota', '-t', 'volume,filesystem', '-Hrp'); + my @param = ('-o', 'name,volsize,origin,type,refquota', '-t', 'volume,filesystem', '-Hrp'); + push @param, $scfg->{pool} if $single_pool; + my $text = $class->zfs_request($scfg, 10, 'list', @param); my $zvols = zfs_parse_zvol_list($text); return undef if !$zvols; -- 2.30.2 _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel