[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH 04/19] ntfs3: remove ntfs_alloc_bio



bio_alloc will never fail if it is allowed to sleep, so there is no
need for this loop.  Also remove the __GFP_HIGH specifier as it doesn't
make sense here given that we'll always fall back to the mempool anyway.

Signed-off-by: Christoph Hellwig <hch@xxxxxx>
---
 fs/ntfs3/fsntfs.c | 23 ++---------------------
 1 file changed, 2 insertions(+), 21 deletions(-)

diff --git a/fs/ntfs3/fsntfs.c b/fs/ntfs3/fsntfs.c
index 4de9acb169689..4a255e21ecf5f 100644
--- a/fs/ntfs3/fsntfs.c
+++ b/fs/ntfs3/fsntfs.c
@@ -1443,17 +1443,6 @@ int ntfs_write_bh(struct ntfs_sb_info *sbi, struct 
NTFS_RECORD_HEADER *rhdr,
        return err;
 }
 
-static inline struct bio *ntfs_alloc_bio(u32 nr_vecs)
-{
-       struct bio *bio = bio_alloc(GFP_NOFS | __GFP_HIGH, nr_vecs);
-
-       if (!bio && (current->flags & PF_MEMALLOC)) {
-               while (!bio && (nr_vecs /= 2))
-                       bio = bio_alloc(GFP_NOFS | __GFP_HIGH, nr_vecs);
-       }
-       return bio;
-}
-
 /*
  * ntfs_bio_pages - Read/write pages from/to disk.
  */
@@ -1496,11 +1485,7 @@ int ntfs_bio_pages(struct ntfs_sb_info *sbi, const 
struct runs_tree *run,
                lbo = ((u64)lcn << cluster_bits) + off;
                len = ((u64)clen << cluster_bits) - off;
 new_bio:
-               new = ntfs_alloc_bio(nr_pages - page_idx);
-               if (!new) {
-                       err = -ENOMEM;
-                       goto out;
-               }
+               new = bio_alloc(GFP_NOFS, nr_pages - page_idx);
                if (bio) {
                        bio_chain(bio, new);
                        submit_bio(bio);
@@ -1599,11 +1584,7 @@ int ntfs_bio_fill_1(struct ntfs_sb_info *sbi, const 
struct runs_tree *run)
                lbo = (u64)lcn << cluster_bits;
                len = (u64)clen << cluster_bits;
 new_bio:
-               new = ntfs_alloc_bio(BIO_MAX_VECS);
-               if (!new) {
-                       err = -ENOMEM;
-                       break;
-               }
+               new = bio_alloc(GFP_NOFS, BIO_MAX_VECS);
                if (bio) {
                        bio_chain(bio, new);
                        submit_bio(bio);
-- 
2.30.2




 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.