From 476ff5a4daf804c28c87a0bb4a833e09eb01a050 Mon Sep 17 00:00:00 2001 From: Etienne Dechamps Date: Thu, 2 Aug 2012 15:33:31 +0200 Subject: Handle any invalidate_inodes_check prototype. In the comments of commit 723aa3b0c2eed070f7eeadd2ce2d87f46da6d0f8, mmatuska reported that the test for invalidate_inodes_check() is broken if invalidate_inodes() takes two arguments. This patch fixes the issue by resorting to another approach for detecting invalidate_inodes_check(): is simply checks if invalidate_inodes is defined as a macro. If it is, then it concludes that invalidate_inodes_check() is available. This will continue to work even if the prototype of invalidate_inodes_check() changes over time. Signed-off-by: Brian Behlendorf Closes #148 --- config/spl-build.m4 | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'config/spl-build.m4') diff --git a/config/spl-build.m4 b/config/spl-build.m4 index 7ec81e713..d7c89bc48 100644 --- a/config/spl-build.m4 +++ b/config/spl-build.m4 @@ -2072,9 +2072,10 @@ AC_DEFUN([SPL_AC_KERNEL_INVALIDATE_INODES], [ AC_MSG_CHECKING([whether invalidate_inodes_check() is available]) SPL_LINUX_TRY_COMPILE_SYMBOL([ #include - ], [ - invalidate_inodes_check(NULL, 0); - ], [invalidate_inodes_check], [], [ + #ifndef invalidate_inodes + #error invalidate_inodes is not a macro + #endif + ], [ ], [invalidate_inodes_check], [], [ AC_MSG_RESULT(yes) AC_DEFINE(HAVE_INVALIDATE_INODES_CHECK, 1, [invalidate_inodes_check() is available]) -- cgit v1.2.3