From b6c18e91165e50dd1470c973b660a9a703c2cdd6 Mon Sep 17 00:00:00 2001 From: Daniel Kral Date: Tue, 15 Apr 2025 09:11:22 +0200 Subject: [PATCH] disks: get: separate error path for retrieving SMART data Make the subroutine get_smart_data() die with the error message from running the `smartctl` command before. This is in preparation for the next patch, which makes that command fail in certain scenarios. Signed-off-by: Daniel Kral Link: https://lore.proxmox.com/20250415071123.36921-2-d.kral@proxmox.com --- src/PVE/Diskmanage.pm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/PVE/Diskmanage.pm b/src/PVE/Diskmanage.pm index d1cf24d..cbacf88 100644 --- a/src/PVE/Diskmanage.pm +++ b/src/PVE/Diskmanage.pm @@ -160,10 +160,10 @@ sub get_smart_data { }, ); }; - my $err = $@; + die "Error getting S.M.A.R.T. data: $@\n" if $@; # bit 0 and 1 mark a fatal error, other bits are for disk status -> ignore (see man 8 smartctl) - if ((defined($returncode) && ($returncode & 0b00000011)) || $err) { + if (defined($returncode) && ($returncode & 0b00000011)) { die "Error getting S.M.A.R.T. data: Exit code: $returncode\n"; }