On Thu, May 18, 2017 at 05:11:35PM -0700, Liu Bo wrote:
> On Wed, May 17, 2017 at 02:41:21AM +0100, fdmanana@xxxxxxxxxx wrote:
> > From: Filipe Manana <fdmanana@xxxxxxxx>
> >
> > 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 <fdmanana@xxxxxxxx>
>
> Looks good.
>
> Reviewed-by: Liu Bo <bo.li.liu@xxxxxxxxxx>
Applied, thanks.
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html