]> git.proxmox.com Git - mirror_zfs-debian.git/blobdiff - config/kernel-bio-end-io-t-args.m4
Imported Upstream version 0.6.5.3
[mirror_zfs-debian.git] / config / kernel-bio-end-io-t-args.m4
index 407e55cd0103ef3e96ab3a62c151d464491bb62b..c8c520f1ba8295be4762b0099f121f92c10df85f 100644 (file)
@@ -1,25 +1,23 @@
 dnl #
-dnl # 2.6.24 API change
-dnl # Size argument dropped from bio_endio and bi_end_io, because the
-dnl # bi_end_io is only called once now when the request is complete.
-dnl # There is no longer any need for a size argument.  This also means
-dnl # that partial IO's are no longer possibe and the end_io callback
-dnl # should not check bi->bi_size.  Finally, the return type was updated
-dnl # to void.
+dnl # 4.3 API change
+dnl # Error argument dropped from bio_endio in favor of newly introduced
+dnl # bio->bi_error. This also replaces bio->bi_flags value BIO_UPTODATE.
+dnl # Introduced by torvalds/linux@4246a0b63bd8f56a1469b12eafeb875b1041a451
+dnl # ("block: add a bi_error field to struct bio").
 dnl #
 AC_DEFUN([ZFS_AC_KERNEL_BIO_END_IO_T_ARGS], [
-       AC_MSG_CHECKING([whether bio_end_io_t wants 2 args])
+       AC_MSG_CHECKING([whether bio_end_io_t wants 1 arg])
        ZFS_LINUX_TRY_COMPILE([
                #include <linux/bio.h>
 
-               void wanted_end_io(struct bio *bio, int x) { return; }
+               void wanted_end_io(struct bio *bio) { return; }
 
                bio_end_io_t *end_io __attribute__ ((unused)) = wanted_end_io;
        ],[
        ],[
                AC_MSG_RESULT(yes)
-               AC_DEFINE(HAVE_2ARGS_BIO_END_IO_T, 1,
-                         [bio_end_io_t wants 2 args])
+               AC_DEFINE(HAVE_1ARG_BIO_END_IO_T, 1,
+                         [bio_end_io_t wants 1 arg])
        ],[
                AC_MSG_RESULT(no)
        ])