[pve-devel] [PATCH storage] btrfs: free image: only remove snapshots for current subvol
Fabian Ebner
f.ebner at proxmox.com
Mon Sep 13 11:01:42 CEST 2021
instead of all in the same directory.
Reported in the community forum:
https://forum.proxmox.com/threads/error-could-not-statfs-no-such-file-or-directory.96057/
Signed-off-by: Fabian Ebner <f.ebner at proxmox.com>
---
PVE/Storage/BTRFSPlugin.pm | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/PVE/Storage/BTRFSPlugin.pm b/PVE/Storage/BTRFSPlugin.pm
index dbc1244..0ebb43b 100644
--- a/PVE/Storage/BTRFSPlugin.pm
+++ b/PVE/Storage/BTRFSPlugin.pm
@@ -6,7 +6,7 @@ use warnings;
use base qw(PVE::Storage::Plugin);
use Fcntl qw(S_ISDIR O_WRONLY O_CREAT O_EXCL);
-use File::Basename qw(dirname);
+use File::Basename qw(basename dirname);
use File::Path qw(mkpath);
use IO::Dir;
use POSIX qw(EEXIST);
@@ -421,9 +421,11 @@ sub free_image {
}
my $dir = dirname($subvol);
+ my $basename = basename($subvol);
my @snapshot_vols;
foreach_subvol($dir, sub {
my ($volume, $name, $snapshot) = @_;
+ return if $name ne $basename;
return if !defined $snapshot;
push @snapshot_vols, "$dir/$volume";
});
--
2.30.2
More information about the pve-devel
mailing list