From: Josef Bacik Date: Fri, 5 Oct 2012 20:40:32 +0000 (-0400) Subject: Btrfs: don't bug on enomem in readpage X-Git-Tag: v3.7-rc3~21^2~16 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=edd33c99c4ba26ebe17c1a3d65b4aba25482ed32;p=platform%2Fupstream%2Fkernel-adaptation-pc.git Btrfs: don't bug on enomem in readpage Get rid of the BUG_ON(ret == -ENOMEM) in __extent_read_full_page. Thanks, Reported-by: Jérôme Poulin Signed-off-by: Josef Bacik --- diff --git a/fs/btrfs/extent_io.c b/fs/btrfs/extent_io.c index b82d244..8c37cb6 100644 --- a/fs/btrfs/extent_io.c +++ b/fs/btrfs/extent_io.c @@ -2751,12 +2751,15 @@ static int __extent_read_full_page(struct extent_io_tree *tree, end_bio_extent_readpage, mirror_num, *bio_flags, this_bio_flag); - BUG_ON(ret == -ENOMEM); - nr++; - *bio_flags = this_bio_flag; + if (!ret) { + nr++; + *bio_flags = this_bio_flag; + } } - if (ret) + if (ret) { SetPageError(page); + unlock_extent(tree, cur, cur + iosize - 1); + } cur = cur + iosize; pg_offset += iosize; }