]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - fs/bio.c
Btrfs: avoid waiting for delayed refs when we must not
[karo-tx-linux.git] / fs / bio.c
index e453924036e96dac3583854cfd45e40699567cfb..84da88539046fa21a6db865454db135df40be080 100644 (file)
--- a/fs/bio.c
+++ b/fs/bio.c
@@ -505,9 +505,14 @@ EXPORT_SYMBOL(bio_clone);
 int bio_get_nr_vecs(struct block_device *bdev)
 {
        struct request_queue *q = bdev_get_queue(bdev);
-       return min_t(unsigned,
+       int nr_pages;
+
+       nr_pages = min_t(unsigned,
                     queue_max_segments(q),
                     queue_max_sectors(q) / (PAGE_SIZE >> 9) + 1);
+
+       return min_t(unsigned, nr_pages, BIO_MAX_PAGES);
+
 }
 EXPORT_SYMBOL(bio_get_nr_vecs);