]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - fs/btrfs/disk-io.c
Btrfs: Scale the bdi ra_pages by the number of devices in the FS
[karo-tx-linux.git] / fs / btrfs / disk-io.c
index b479cdfe3ee89746d05c7b59871330ce9ccc81eb..46188ee166236c0f240f3107f0f8d2b958b51b02 100644 (file)
@@ -932,7 +932,7 @@ static int setup_bdi(struct btrfs_fs_info *info, struct backing_dev_info *bdi)
 #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,23)
        bdi_init(bdi);
 #endif
-       bdi->ra_pages   = default_backing_dev_info.ra_pages * 4;
+       bdi->ra_pages   = default_backing_dev_info.ra_pages;
        bdi->state              = 0;
        bdi->capabilities       = default_backing_dev_info.capabilities;
        bdi->unplug_io_fn       = btrfs_unplug_io_fn;
@@ -1214,6 +1214,8 @@ struct btrfs_root *open_ctree(struct super_block *sb,
                       (unsigned long long)fs_devices->num_devices);
                goto fail_sb_buffer;
        }
+       fs_info->bdi.ra_pages *= btrfs_super_num_devices(disk_super);
+
        nodesize = btrfs_super_nodesize(disk_super);
        leafsize = btrfs_super_leafsize(disk_super);
        sectorsize = btrfs_super_sectorsize(disk_super);