[pve-devel] [PATCH container v3] Fix #2109: resize rbd volume for container failed

Thomas Lamprecht t.lamprecht at proxmox.com
Mon Mar 11 10:40:44 CET 2019


Am 3/11/19 um 10:07 AM schrieb Alwin Antreich:
> On Mon, Mar 11, 2019 at 09:44:17AM +0100, Thomas Lamprecht wrote:
>> Am 3/8/19 um 3:41 PM schrieb Alwin Antreich:
>>> @@ -1630,6 +1630,8 @@ __PACKAGE__->register_method({
>>>  			    PVE::Tools::run_command(['resize2fs', $path]);
>>>  			};
>>>  			warn "Failed to update the container's filesystem: $@\n" if $@;
>>> +
>>> +			PVE::Storage::unmap_volume($storage_cfg, $volid);
>>
>> ..., why map it unconditionally before the if/else, but un-map it conditionally
>> in the else branch?
>> I've fixed that up and added a bit of comments..
> When the CT is running, the device is already mapped and should stay.
> 'map_volume' then returns the path only.
> 
> On a running CT the unmap fails with the following message:
> 
> --- 8< ---
> rbd: sysfs write failed
> can't unmap rbd device /dev/rbd/rbd/vm-100-disk-1: rbd: sysfs write
> failed
> --- 8< ---
> 
> That's why I put it into the else clause, as it should be unmapped only
> if the CT is not running.

ok, thanks for the explanation, would be nice to have such info at least in
the commit message, for review and future reference.



More information about the pve-devel mailing list