diff options
author | Hajo Möller <[email protected]> | 2016-10-26 19:30:43 +0200 |
---|---|---|
committer | Brian Behlendorf <[email protected]> | 2016-10-26 10:30:43 -0700 |
commit | e02aaf17f15ad274fa1f24c9c826f1477911ea3f (patch) | |
tree | 3190cb161bb2665f1e4e647d72b0ca98c7d56130 /config/kernel-lookup-bdev.m4 | |
parent | 76a87a902ef031432a855fb341cf35291e2be2b6 (diff) |
Fix lookup_bdev() on Ubuntu
Ubuntu added support for checking inode permissions to lookup_bdev() in kernel
commit 193fb6a2c94fab8eb8ce70a5da4d21c7d4023bee (merged in 4.4.0-6.21).
Upstream bug: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1636517
This patch adds a test for Ubuntu's variant of lookup_bdev() to configure and
calls the function in the correct way.
Reviewed-by: Brian Behlendorf <[email protected]>
Signed-off-by: Hajo Möller <[email protected]>
Closes #5336
Diffstat (limited to 'config/kernel-lookup-bdev.m4')
-rw-r--r-- | config/kernel-lookup-bdev.m4 | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/config/kernel-lookup-bdev.m4 b/config/kernel-lookup-bdev.m4 index 245f95f04..abbf55d9b 100644 --- a/config/kernel-lookup-bdev.m4 +++ b/config/kernel-lookup-bdev.m4 @@ -1,17 +1,29 @@ dnl # -dnl # 2.6.27 API change -dnl # lookup_bdev() was exported. +dnl # 2.6.27, lookup_bdev() was exported. +dnl # 4.4.0-6.21 - x.y on Ubuntu, lookup_bdev() takes 2 arguments. dnl # AC_DEFUN([ZFS_AC_KERNEL_LOOKUP_BDEV], - [AC_MSG_CHECKING([whether lookup_bdev() is available]) + [AC_MSG_CHECKING([whether lookup_bdev() wants 1 arg]) ZFS_LINUX_TRY_COMPILE_SYMBOL([ #include <linux/fs.h> ], [ lookup_bdev(NULL); ], [lookup_bdev], [fs/block_dev.c], [ AC_MSG_RESULT(yes) - AC_DEFINE(HAVE_LOOKUP_BDEV, 1, [lookup_bdev() is available]) + AC_DEFINE(HAVE_1ARG_LOOKUP_BDEV, 1, [lookup_bdev() wants 1 arg]) ], [ AC_MSG_RESULT(no) + AC_MSG_CHECKING([whether lookup_bdev() wants 2 args]) + ZFS_LINUX_TRY_COMPILE_SYMBOL([ + #include <linux/fs.h> + ], [ + lookup_bdev(NULL, FMODE_READ); + ], [lookup_bdev], [fs/block_dev.c], [ + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_2ARGS_LOOKUP_BDEV, 1, + [lookup_bdev() wants 2 args]) + ], [ + AC_MSG_RESULT(no) + ]) ]) -]) +])
\ No newline at end of file |