On Wed, May 17, 2017 at 02:41:21AM +0100, [email protected] wrote:
> From: Filipe Manana <[email protected]>
> 
> We correctly build an image from a multiple devices filesystem but when
> restoring the image into a single device we were missing updating the
> number of devices in the superblock to the value 1 (we already took care
> of setting the number of stripes to 1 for each chunk item and setting
> the device id for each chunk item to match the device id from the super
> block).
> 
> This missing update of the number of devices makes it impossible to mount
> the restored filesystem on recent kernels, more specifically since the
> linux kernel commit 99e3ecfcb9f4ca35192d20a5bea158b81f600062
> ("Btrfs: add more validation checks for superblock"), that produce the
> following message in the dmesg/syslog:
> 
> [21097.542047] BTRFS error (device sdi): super_num_devices 2 mismatch with 
> num_devices 1 found here
> [21097.543972] BTRFS error (device sdi): failed to read chunk tree: -22
> [21097.720360] BTRFS error (device sdi): open_ctree failed
> 
> So fix this by updating the number of devices to 1 in the superblock.
> 
> Signed-off-by: Filipe Manana <[email protected]>

Looks good.

Reviewed-by: Liu Bo <[email protected]>

Thanks,

-liubo
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to