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
