2009-04-14 11:10:41

by Nikanth Karthikesan

[permalink] [raw]
Subject: [PATCH 2/6] Handle possible bio_alloc failure in btrfs

Handle possible bio_alloc failure in btrfs.

Signed-off-by: Nikanth Karthikesan <[email protected]>

---

Index: linux-2.6/fs/btrfs/inode.c
===================================================================
--- linux-2.6.orig/fs/btrfs/inode.c
+++ linux-2.6/fs/btrfs/inode.c
@@ -1714,6 +1714,11 @@ static int btrfs_io_failed_hook(struct b
return -EIO;
}
bio = bio_alloc(GFP_NOFS, 1);
+ if (unlikely(!bio)) {
+ kfree(failrec);
+ return -ENOMEM;
+ }
+
bio->bi_private = state;
bio->bi_end_io = failed_bio->bi_end_io;
bio->bi_sector = failrec->logical >> 9;