[SOLVED] LXC on BTRFS subvol migration stopped working

swell61

New Member
Sep 30, 2023
2
0
1
A couple of months ago I setup a datacenter in my homelab that has a bunch of LXCs in BTRFS subvolumes, and I was able to migrate them between hosts no problem with the migrate button. Since then I have updated (apt update && apt full-upgrade) the hosts in the datacenter and now migration appears to be broken.

The subvolumes are unsized and do not have quotas enabled, and in the config files the size is set to size=0T. The error log contains size 1 is not aligned to granularity 1024, rounding up to 1024 and btrfs quotas are currently not supported, use an unsized subvolume or a raw file.

So it looks like subvolumes are now considered size 1 rather than size 0 like they used to?

If I change line 1010 in pve-storage\src\PVE\Storage\Plugin.pm (return wantarray ? (0, 'subvol', 0, undef, $st->ctime) : 1;) to return a 0 instead of 1, it works and the migration completes with no problems.

I know nothing about perl but at a guess it seems e50dde06fae2a33334ff305ac25c697aad1e72b9 changed the file_size_info call in volume_export to want a scalar rather than a list and the default scalar return values seem to be 1 rather than 0 for the list.

Is this intended behavior? If it is, is there some config change I need to make to my LXCs so they are able to be migrated again?
 
Last edited: