From 0864fda2fd11f811a138f31477ce6e09ad4da186 Mon Sep 17 00:00:00 2001 From: Fiona Ebner Date: Mon, 3 Nov 2025 17:23:13 +0100 Subject: [PATCH] lvm plugin: fix error handling in volume_snapshot_rollback() In case a cleanup worker is spawned, the error from the eval block for allocation was lost. Save it in a variable for checking later. Signed-off-by: Fiona Ebner Tested-by: Friedrich Weber Link: https://lore.proxmox.com/20251103162330.112603-3-f.ebner@proxmox.com --- src/PVE/Storage/LVMPlugin.pm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/PVE/Storage/LVMPlugin.pm b/src/PVE/Storage/LVMPlugin.pm index 24f2534..f5a2008 100644 --- a/src/PVE/Storage/LVMPlugin.pm +++ b/src/PVE/Storage/LVMPlugin.pm @@ -1097,11 +1097,12 @@ sub volume_snapshot_rollback { die "error deleting snapshot $snap $@\n" if $@; eval { alloc_snap_image($class, $storeid, $scfg, $volname, $snap) }; + my $alloc_err = $@; fork_cleanup_worker($cleanup_worker); - if ($@) { - die "can't allocate new volume $volname: $@\n"; + if ($alloc_err) { + die "can't allocate new volume $volname: $alloc_err\n"; } return undef;