diff options
Diffstat (limited to 'fs')
-rw-r--r-- | fs/btrfs/volumes.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/fs/btrfs/volumes.c b/fs/btrfs/volumes.c index da0e632a21fc..00c8efdcd1e5 100644 --- a/fs/btrfs/volumes.c +++ b/fs/btrfs/volumes.c | |||
@@ -1848,8 +1848,12 @@ void btrfs_rm_dev_replace_srcdev(struct btrfs_fs_info *fs_info, | |||
1848 | if (srcdev->bdev) { | 1848 | if (srcdev->bdev) { |
1849 | fs_info->fs_devices->open_devices--; | 1849 | fs_info->fs_devices->open_devices--; |
1850 | 1850 | ||
1851 | /* zero out the old super */ | 1851 | /* |
1852 | btrfs_scratch_superblock(srcdev); | 1852 | * zero out the old super if it is not writable |
1853 | * (e.g. seed device) | ||
1854 | */ | ||
1855 | if (srcdev->writeable) | ||
1856 | btrfs_scratch_superblock(srcdev); | ||
1853 | } | 1857 | } |
1854 | 1858 | ||
1855 | call_rcu(&srcdev->rcu, free_device); | 1859 | call_rcu(&srcdev->rcu, free_device); |