summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiguel <miguel.filipe@gmail.com>2008-04-11 15:50:59 -0400
committerChris Mason <chris.mason@oracle.com>2008-09-25 11:04:01 -0400
commit73f61b2a6459df982cb4faf0e5cf5ac8b153aaff (patch)
treeb0f4a5e9e97591392a81c1ef84567c445aa7c6da
parent594994aa3ea4cb52cba9c83a4b6f03e6ff3a646e (diff)
Btrfs: bio_endio support for linux 2.6.23 and older.
bio_endio() changed prototype on linux 2.6.24, support older kernels using the older prototype. Signed-off-by: Chris Mason <chris.mason@oracle.com>
-rw-r--r--fs/btrfs/disk-io.c5
-rw-r--r--fs/btrfs/volumes.c4
2 files changed, 8 insertions, 1 deletions
diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c
index 0bfcc31d94d7..aebe8c21ec80 100644
--- a/fs/btrfs/disk-io.c
+++ b/fs/btrfs/disk-io.c
@@ -949,11 +949,14 @@ void btrfs_end_io_csum(struct work_struct *work)
bio->bi_private = end_io_wq->private;
bio->bi_end_io = end_io_wq->end_io;
kfree(end_io_wq);
+#if LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,23)
+ bio_endio(bio, bio->bi_size, err);
+#else
bio_endio(bio, error);
+#endif
}
}
-
struct btrfs_root *open_ctree(struct super_block *sb,
struct btrfs_fs_devices *fs_devices)
{
diff --git a/fs/btrfs/volumes.c b/fs/btrfs/volumes.c
index 07d43553141c..82bc6cfc110f 100644
--- a/fs/btrfs/volumes.c
+++ b/fs/btrfs/volumes.c
@@ -960,7 +960,11 @@ static int end_bio_multi_stripe(struct bio *bio,
err = multi->error;
kfree(multi);
+#if LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,23)
+ bio_endio(bio, bio->bi_size, err);
+#else
bio_endio(bio, err);
+#endif
} else {
bio_put(bio);
}