diff options
author | Brian Behlendorf <[email protected]> | 2011-02-22 14:55:35 -0800 |
---|---|---|
committer | Brian Behlendorf <[email protected]> | 2011-02-23 12:29:38 -0800 |
commit | 45066d1f20a582fc8229776503b1cdd554d7fde4 (patch) | |
tree | e41b6ca3b64e58d1a882f185c59bdb159fd0172b /config | |
parent | 61e909608d15dc6900a710a0ceab6e101a68ac5a (diff) |
Linux 2.6.38 compat, blkdev_get_by_path()
The open_bdev_exclusive() function has been replaced (again) by the
more generic blkdev_get_by_path() function. Additionally, the
counterpart function close_bdev_exclusive() has been replaced by
blkdev_put(). Because these functions are more generic versions
of the functions they replaced the compatibility macro must add
the FMODE_EXCL mask to ensure they are exclusive.
Closes #114
Diffstat (limited to 'config')
-rw-r--r-- | config/kernel-blkdev-get-by-path.m4 | 13 | ||||
-rw-r--r-- | config/kernel.m4 | 1 |
2 files changed, 14 insertions, 0 deletions
diff --git a/config/kernel-blkdev-get-by-path.m4 b/config/kernel-blkdev-get-by-path.m4 new file mode 100644 index 000000000..0d5d2b120 --- /dev/null +++ b/config/kernel-blkdev-get-by-path.m4 @@ -0,0 +1,13 @@ +dnl # +dnl # 2.6.38 API change +dnl # open_bdev_exclusive() changed to blkdev_get_by_path() +dnl # close_bdev_exclusive() changed to blkdev_put() +dnl # +AC_DEFUN([ZFS_AC_KERNEL_BLKDEV_GET_BY_PATH], [ + ZFS_CHECK_SYMBOL_EXPORT( + [blkdev_get_by_path], + [fs/block_dev.c], + [AC_DEFINE(HAVE_BLKDEV_GET_BY_PATH, 1, + [blkdev_get_by_path() is available])], + []) +]) diff --git a/config/kernel.m4 b/config/kernel.m4 index c3321ed8d..492fbab14 100644 --- a/config/kernel.m4 +++ b/config/kernel.m4 @@ -8,6 +8,7 @@ AC_DEFUN([ZFS_AC_CONFIG_KERNEL], [ ZFS_AC_KERNEL_BDEV_BLOCK_DEVICE_OPERATIONS ZFS_AC_KERNEL_TYPE_FMODE_T ZFS_AC_KERNEL_KOBJ_NAME_LEN + ZFS_AC_KERNEL_BLKDEV_GET_BY_PATH ZFS_AC_KERNEL_OPEN_BDEV_EXCLUSIVE ZFS_AC_KERNEL_INVALIDATE_BDEV_ARGS ZFS_AC_KERNEL_BDEV_LOGICAL_BLOCK_SIZE |