diff --git a/PVE/Storage/ZFSPoolPlugin.pm b/PVE/Storage/ZFSPoolPlugin.pm index 456fb40..42aeedb 100644 --- a/PVE/Storage/ZFSPoolPlugin.pm +++ b/PVE/Storage/ZFSPoolPlugin.pm @@ -662,6 +662,12 @@ sub volume_resize { my $attr = $format eq 'subvol' ? 'refquota' : 'volsize'; + # align size to 1M so we always have a valid multiple of the volume block size + if ($format eq 'raw') { + my $padding = (1024 - $new_size % 1024) % 1024; + $new_size = $new_size + $padding; + } + $class->zfs_request($scfg, undef, 'set', "$attr=${new_size}k", "$scfg->{pool}/$vname"); return $new_size;