From d2cc2d56e088b42fdf9ff0fec5ee2ddffd37e8e8 Mon Sep 17 00:00:00 2001 From: Namjae Jeon Date: Sat, 8 Dec 2012 14:53:40 +0900 Subject: [PATCH] --- yaml --- r: 347545 b: refs/heads/master c: c212991a6bc3ba120d41205a294c5b89f05f1535 h: refs/heads/master i: 347543: 9a2d3e93dadff5874ac746749926ad143325bd33 v: v3 --- [refs] | 2 +- trunk/fs/f2fs/segment.c | 24 +++++++----------------- 2 files changed, 8 insertions(+), 18 deletions(-) diff --git a/[refs] b/[refs] index 7305ee66d74b..d12abb3626eb 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: d08ab08d140de247eb812ce2c3c4b323620e4609 +refs/heads/master: c212991a6bc3ba120d41205a294c5b89f05f1535 diff --git a/trunk/fs/f2fs/segment.c b/trunk/fs/f2fs/segment.c index 969df1a30d1c..8894b399770d 100644 --- a/trunk/fs/f2fs/segment.c +++ b/trunk/fs/f2fs/segment.c @@ -647,28 +647,18 @@ struct bio *f2fs_bio_alloc(struct block_device *bdev, sector_t first_sector, int nr_vecs, gfp_t gfp_flags) { struct bio *bio; -repeat: + /* allocate new bio */ bio = bio_alloc(gfp_flags, nr_vecs); - if (bio == NULL && (current->flags & PF_MEMALLOC)) { - while (!bio && (nr_vecs /= 2)) - bio = bio_alloc(gfp_flags, nr_vecs); - } - if (bio) { - bio->bi_bdev = bdev; - bio->bi_sector = first_sector; + bio->bi_bdev = bdev; + bio->bi_sector = first_sector; retry: - bio->bi_private = kmalloc(sizeof(struct bio_private), - GFP_NOFS | __GFP_HIGH); - if (!bio->bi_private) { - cond_resched(); - goto retry; - } - } - if (bio == NULL) { + bio->bi_private = kmalloc(sizeof(struct bio_private), + GFP_NOFS | __GFP_HIGH); + if (!bio->bi_private) { cond_resched(); - goto repeat; + goto retry; } return bio; }